2010-03-01: 00:00:01 it _starts_ with a sex change, and then you turn into a furry 00:00:25 pikhq: *a crisis 00:00:38 also, haw haw signal/noise has just approached 0 00:00:43 ... I accidentally used the plural. Hooray. 00:01:48 ANYWAY coppro 00:01:52 data ℝ : Set where 00:01:52 ℝ : (f : ℚ⁺ → ℚ) 00:01:52 → {{ε₁:ℚ⁺} → {ε₂:ℚ⁺} → abs (f ε₁ - f ε₂) ≤ ε₁ + ε₂} 00:01:53 → ℝ 00:01:53 00:01:53 ι : ℚ → ℝ 00:01:53 ι q = ℝ (λ_. q) 00:01:54 ADMIRE 00:02:55 * coppro explodes 00:02:57 pikhq: also does that make sense with "either one"? 00:03:17 or is my brain inferring an innuendo that in fact isn't there at all, thus implying i have finally left the last stage of sanity 00:03:24 coppro: THAT IS NOT ADMIRATION 00:03:47 great, I've pissed off alise. See you Tuesday 00:04:22 coppro: wat 00:04:23 yay 00:04:38 alise: because you're a girl, obv 00:04:53 oh. haw haw 00:06:58 alise: Hmm. *Looks* like the standard definition of the computable reals from the rationals. 00:07:22 Well... it is. 00:07:29 I'm going with "Sure, makes sense". ;) 00:07:34 euler : ℝ 00:07:35 euler = ℝ (λ ε → sum (map (λ i → (i!)⁻¹) (1 … ε))) 00:07:35 i think 00:07:55 yes I am using x⁻¹ in place of 1/x WHAT OF IT 00:08:24 I have no complaints. 00:09:11 -!- adam_d has quit (Ping timeout: 265 seconds). 00:09:36 and (m … n) for range, mostly because I can't think of anything else 00:09:56 also... it should be product not sum 00:09:57 w/e 00:10:34 and 0 not 1 lol 00:12:15 maybe I should define a product operator 00:12:15 like 00:12:16 ∏ 0 → ε ⇒ λ i → (i!)⁻¹ 00:13:09 euler : ℝ 00:13:10 euler = ℝ (λ ε → ∏ 0 → ε ⇒ λ i → (i!)⁻¹) 00:21:44 Incidentally, abs (x-y) deserves a better name than it possesses. 00:22:00 d(x,y) ? 00:22:13 That's not an operator, it's a function. 00:22:40 distance metric 00:23:11 For some reason I think it's actually a nicer operation than subtraction. 00:23:19 We're measuring, not doing some sort of thingy-bob operation. 00:25:35 oerjan: Seems that Epigram 2 does indeed have Mu, the Fix you quoted, as the primitive. 00:26:06 make nat := (Mu @ [`arg { zero, suc } [ (@ [`done]) (@ [`ind1 @ [`done]]) ] ] ) : * ; 00:26:07 make zero := @ [`zero] : nat ; 00:26:07 make suc := (\ x -> @ [`suc x]) : nat -> nat ; 00:26:07 make one := (suc zero) : nat ; 00:26:07 make two := (suc one) : nat ; 00:26:08 make plus := @ @ [(\ r r y -> y) (\ r -> @ \ h r y -> suc (h y))] : nat -> nat -> nat ; 00:26:08 make x := (plus two two) : nat 00:26:21 ah 00:30:40 Seems yucky to me, though. 00:33:06 oerjan: how can that mu do paramaterisable types though 00:33:12 λA → (λT → data nil : T; cons : A → T → T) 00:33:13 ? 00:33:19 er does that Mu show up for you? 00:33:20 probably not 00:33:26 nope 00:33:26 after the first -> imagine an M 00:33:35 oh wait no unicode at all 00:33:53 \A -> M (\T -> data nil : T; cons : A -> T -> T) 00:33:57 where M is our Mu 00:34:31 so you answered your own question? 00:34:35 yeah :P 00:34:53 \A -> M (\T -> (data nil : T) && (data cons : A -> T -> T)) 00:35:00 where && = Either = union = and 00:35:43 (data nil : T) ≈ 1 00:35:53 \A -> M (\T -> Unit && (data cons : A -> T -> T)) 00:36:05 so how to reduce the cons, I wonder 00:36:21 also, my issue with these kinds of shenanigans is that the implementation gets exposed 00:36:26 () : List, which isn't cool 00:37:25 i think the observational type theory guys have a nice way to do all this, and it's in epigram 2 :P 00:38:08 of course all this Muery doesn't help us write nice notation... 00:38:08 mhm 00:38:15 which is my whole goal :P 00:39:06 predicted return to specialized notation in 1,2 ... 00:39:17 -!- bsmntbombdood has joined. 00:40:17 oerjan: you're saying I'll never go back? 00:40:21 makes sense! 00:40:33 * oerjan swats alise -----### 00:40:38 but seriously why are the T and ... in the same definition in data X : T where ... 00:40:42 it makes no sense! 00:41:50 I thought I’d scribble something about what we’re up to. The team (Pierre-Évariste Dagand, Adam Gundry, Peter Morris, James Chapman) have been hard at work. I have been otherwise engaged. As a result, there has been considerable progress. Don’t worry. I expect I’ll mess things up properly over Christmas. 00:41:54 --Conor McBride 00:43:33 I'm tired, so I'll sleep now. 00:43:41 Hopefully, see you tomorrow. Bye! 00:43:42 -!- alise has quit (Quit: alise). 01:23:07 -!- FireFly has quit (Quit: Leaving). 01:23:18 -!- BeholdMyGlory has quit (Remote host closed the connection). 01:23:43 -!- benuphoenix has joined. 01:25:35 -!- oerjan has quit (Quit: Reboot). 01:25:38 Hmm, still nobody has sent me the esoteric-priv stuff. 01:25:54 is this the place where "int main(){for(int i=0;i<1;i++) i--; return 0;}" is a normal c++ program? 01:26:43 -!- cheater2 has quit (Ping timeout: 245 seconds). 01:29:02 -!- oerjan has joined. 01:31:32 benuphoenix: no. c++ is banned here. *ducks* 01:31:49 * oerjan doesn't know c++ anyhow 01:32:34 also, isn't that an infinite loop. 01:33:22 -!- MizardX has quit (Ping timeout: 276 seconds). 01:33:45 -!- cal153 has quit. 01:34:13 benuphoenix: No, we write crazier C++. 01:34:22 Well, crazier C, actually. 01:34:54 a,b,c;main(z,i)char**i;{h:a=!a,b=!b;g:(b-1)[1[i]]>b[i[1]]?a^=a,c=(b-1)[1[i]],1[i][b-1]=i[1][b],b[i[1]]=c,b=&b[(void*)1]:(b=&b[(void*)1]),!b[i[1]]?:({goto g;}),a?:({goto h;}),b=!b;j:putchar(b[1[i]])[(void*)(b=&b[(void*)1])],1[i][b]?({goto j;}):putchar('\n');} 01:34:56 Translate into Haskell please. 01:35:01 See? 01:35:11 for(i=0;i!=0;) 01:35:56 that's the craziest i can quickly think of that fits on one line. 01:36:32 what's it say 01:36:46 uorygl: The equivalent Haskell for benuphoenix's program is: main = undefined 01:36:48 :P 01:37:07 (well, strictly speaking his is the "infinite loop" sort of bottom, but hey.) 01:37:18 main = main 01:37:21 It's shorter, even! 01:37:39 No, GHC complains about that. 01:38:11 main = return $ length [1..] -- This is *actually* an infinite loop. :) 01:38:24 Erm. Wait, no, that won't be eval'd. 01:38:38 -!- Asztal has quit (Ping timeout: 258 seconds). 01:38:44 main = return $ length [1..] `seq` () 01:38:52 -!- Asztal has joined. 01:38:55 :) 01:39:10 Hi benuphoenix 01:39:26 hi Sgeo 01:40:37 am i the only one who uses irssi in windows instead of xchat? 01:40:38 !haskell import System; main = System.exit . flip seq 0 . all (<1) $ iterate (succ.pred) 0 01:41:00 I think uorygl SSHes in to normish from which he uses irssi 01:41:04 oh wait 01:41:11 ... Windows? 01:41:22 oerjan: Hah. 01:41:31 pikhq, on Cygwin apparently 01:41:34 !haskell main = flip seq 0 . all (<1) $ iterate (succ.pred) 0 01:41:48 argh 01:42:16 there's a win32 binary version on irssi.org 01:42:21 !haskell main = flip seq (return 0) . all (<1) $ iterate (succ.pred) 0 01:43:03 Might I suggest (`seq`return 0) instead of flip seq (return 0)? 01:43:39 you may 01:44:02 hm that last one got no response. maybe that meant it actually _did_ compile. 01:45:33 actually, does ghc use main's result for exiting if it is an Int? 01:45:46 might need that System function after all 01:45:49 c/c++: int main{for(;;);} might be infinite. i only speak c++ and basic 01:46:48 oh hm 01:47:06 Sgeo: currently, I SSH into sine.aftran.com from which I use irssi. 01:47:19 * Sgeo slaps uorygl 01:47:34 -!- Asztal has quit (Ping timeout: 265 seconds). 01:47:39 !haskell import System; main = exitWith . flip seq 0 . all (<1) $ iterate (succ.pred) 0 01:47:45 Hey, you know that sine.aftran.com is not the location of our chatting. 01:47:53 I left out the port number and channel name. 01:48:06 !haskell import System; main = exitWith . exitSuccess . flip seq 0 . all (<1) $ iterate (succ.pred) 0 01:48:32 * oerjan refuses to actually look up the correct function name :D 01:48:46 http://www.stationv3.com/d/20050131.html 01:49:41 -!- cal153 has joined. 01:51:20 *cough* 01:51:24 (`seq`0) 01:51:47 pikhq: i said you may suggest it, not that i would listen 01:51:57 oerjan: Ah. 01:52:33 i got "main(){for(;;);}" to compile and run infinite. 01:52:50 !c++ main(){for(;;);} 01:53:11 well it hasn't complained yet 01:53:16 !gnarble 01:53:26 !interps 01:53:36 benuphoenix: Well, yeah... 01:53:42 !help 01:53:43 help: General commands: !help, !info, !bf_txtgen. See also !help languages, !help userinterps. You can get help on some commands by typing !help . 01:53:51 !help languages 01:53:52 languages: Esoteric: 1l 2l adjust asm axo bch befunge befunge98 bf bf8 bf16 bf32 boolfuck cintercal clcintercal dimensifuck glass glypho haskell kipple lambda lazyk linguine malbolge pbrain perl qbf rail rhotor sadol sceql trigger udage01 underload unlambda whirl. Competitive: bfjoust fyb. Other: asm c cxx forth sh. 01:53:52 -!- Asztal has joined. 01:54:01 oh 01:54:10 !cxx main(){for(;;);} 01:54:20 !c main(){main();} 01:54:22 ./interps/gcccomp/gcccomp: line 52: 29844 Segmentation fault /tmp/compiled.$$ 01:54:32 What, no TCO? 01:54:35 *Lame*. 01:54:49 *Real* compilers TCO. 01:55:22 TCO? 01:55:49 Tail-call optimisation. 01:56:08 Ah 01:56:14 Python doesn't do that, for some reason 01:56:24 A tail call can be optimised to a jmp fairly easily. 01:56:27 I remember reading about someone arguing that that's correct, and it shouldn't 01:56:53 It's incorrect. 01:57:22 At a *bare* minimum it should offer a way of explicitly doing a tail call. 01:57:32 (something like Perl's "goto &func;") 01:57:41 Erm. 01:57:46 "goto &func(args);" 01:58:46 -!- Azstal has joined. 01:58:47 (note: TCO is harder to do in C, because of calling conventions. Caller cleanup means that not many things are actually tail calls.) 02:00:09 running main(){main();} after [c++] compiling successfully segmetation-faulted after 1.49 seconds 02:00:29 i'm ssh'd onto my freebsd 8 system 02:00:37 -!- Asztal has quit (Ping timeout: 265 seconds). 02:00:39 c++. for high-speed crashing. 02:00:54 lol 02:01:39 I take it C++ doesn't TCO either 02:01:41 ? 02:02:11 Depends on your compiler 02:02:23 I'm surprised that even compiles; main is not supposed to be callable 02:03:07 it says it's gcc version 4.2.1 02:03:43 :/ 02:04:24 normally the compiler inserts all the initialization into the prelude of main, so the standard disallows calling it from within the program 02:05:41 * benuphoenix thinks that the only reason that g++ allows it is because one of the developers wanted to program infinite loops 02:06:05 or something like that 02:06:27 nah, you can make infinite loops all sorts of other ways 02:06:59 s/infinite loops/recursive function calls/ 02:07:07 -!- Azstal has quit (Ping timeout: 265 seconds). 02:07:47 you can go infinitely recursive with any other function 02:08:52 you can infinitely loop while choosing how to infinitely loop! 02:10:02 running main(){main();} gave me a 67 meg core dump 02:11:20 coppro: GCC doesn't stick any initialization into main. 02:11:27 coppro: The entry point is _start. 02:11:40 coppro: _start initialises things and then calls main. 02:11:51 pikhq: yes, but that doesn't change the standard 02:12:01 calling main is still illegal 02:12:14 GCC does many things that are illegal. 02:12:40 yarly 02:13:24 allowing "main(){...}" when it should only be "int main(){...}" 02:14:02 In C89, the "int" is implied. 02:14:48 in C99 too, no? 02:15:55 I'm pretty sure that's still legal in C99, although stupid :) 02:16:32 Anyway, I'm sure -Wall -Werror -ansi -pedantic would complain. 02:16:33 Oh, right. C99 allows it for functions. 02:16:42 It's banned for variables. 02:16:47 Gregor: -std=c99 makes it warn. 02:16:55 It's deprecated but allowed. 02:17:10 I know I've gotten warning. 02:17:35 C99 apparently lets you do int a[b]; when b isn't a const? 02:17:36 Warning != illegal. gcc also warns if you use gets() 02:17:42 * Sgeo is somewhat scared 02:17:47 In fact, gcc warns if you use gets() even if you specify -w (no warnings) :P 02:18:09 Sgeo: You could approximate that with alloca anyway 02:18:12 Sgeo: Yeah, works just fine. 02:18:19 The array gets allocated on the stack. 02:18:38 And gets cleaned up when it goes out of scope. 02:18:53 (by "cleaned up", we of course mean "popped".) 02:19:06 (IIRC, alloca is not part of any standard, but is basically implemented by everyone) 02:19:30 Yeah, alloca is pretty common. 02:19:56 Ah. It's POSIX. 02:20:13 Is benuphoenix doing C or C++? 02:20:16 pikhq: It is? 02:20:31 CONFORMING TO 02:20:32 This function is not in POSIX.1-2001. 02:20:32 No, no it's not. I thought it was. 02:20:34 Sgeo: C++ 02:20:37 For some reason. 02:20:50 It's just been around since at least 3BSD. 02:21:32 even when it's identical to c, i still use c++ 02:21:58 benuphoenix: That's dumb. 02:23:19 actually, i rarely write something in c++ that doesn't use iostream 02:23:58 Eeeeew. 02:24:25 C++'s IO is one of the more stupid features. 02:24:45 (seriously, IO via bitshift?) 02:25:31 the "<<" and ">>" are overrides 02:26:18 at least, i think that's the term 02:26:31 They're bitshift operators. 02:26:54 That your bitshift operator isn't *shifting* any *bits* doesn't make them cease to be bitshift operators. 02:28:08 It is somewhat ugly, but is that that big a tragedy? 02:28:10 pikhq: i know what the bitshift operaters are and what they are supposed to do 02:28:51 Sgeo: That's but one of the poor things about C++'s IO. 02:28:55 It shifts bits from memory into IO :P 02:28:58 Or vice/versa 02:29:03 This is merely a poor *aesthetic* choice. 02:29:55 Paging coppro to #esoteric . coppro to #esoteric 02:30:35 Iostreams also have the annoying property that you can manipulate their ouput mode, but not readily set the output mode back to what it was previously. 02:30:55 Write a function that outputs some numbers as hex and then returns the iostream to the previous mode. Go on, I'm waiting. 02:31:10 Also, Iostreams make i18n a royal *pain*. 02:31:31 In C, you would wrap the format string in a function that looks up the translation for the string. 02:31:42 In C++... You use printf if you want to do that. 02:32:06 (or GNU's asprintf, which is a printf that *works on iostreams*. Thus obviating everything different about them.) 02:32:09 Surely you can retrieve the flags somehow? 02:32:15 i mainly use cin.get() and cout.put() 02:32:30 Sgeo: No. 02:32:47 cin.something? There's no something? Or something()? 02:32:49 :( 02:33:01 Also, why in the world does endl exist? I could understand if it actually used the system end of line character. 02:33:10 Sgeo: pong 02:33:14 But it *doesn't*. It just outputs \n and flushes the iostream. 02:33:21 So. Fekking. *Stupid*. 02:33:37 coppro, read the C++ criticism. You're a C++ defender person, iirc? 02:33:44 oh, I don't defend IOstreams 02:33:45 they suck 02:33:50 See? 02:34:24 ... C++ vs C arguments. Seriously? Argh. 02:34:26 the overarching concept (easily extensible streams) is good, and that's about it 02:34:36 coppro: Agreed. 02:34:54 Gregor: Hey, we have to do one of these every now and then. 02:36:58 true or false: iostreams are useful when the professors want to see them in the code? 02:37:07 true 02:39:19 what are the c stdio equivlents of the c++ iostream functions "cin.get()" and "cout.put()"? 02:40:03 What's the type of get and put again? 02:41:07 getc and putc 02:41:15 or something like that 02:41:16 Mmm... 02:41:21 benuphoenix: Which get? 02:41:29 pikhq: the one that gets the next character 02:41:48 Ah, the "int get()" one. 02:42:48 Yeah, "int getchar(void)" and "int putchar(int)" are the functions. 02:46:51 Everyone who needs to breathe has thirty seconds to get off the station. 02:48:48 http://www.stationv3.com/d/20050921.html 02:58:42 -!- benuphoenix has quit (Quit: leaving). 03:17:10 -!- sshc_ has joined. 03:17:59 -!- sshc has quit (Quit: Reconnecting). 03:23:28 -!- sshc_ has changed nick to sshc. 04:08:32 -!- Oranjer has left (?). 04:48:46 who wants to dick around with an experiment in flight control for my video game? :D 05:08:11 xkcd XD 05:10:48 Wish the die looked better though 05:19:18 -!- coppro has quit (Remote host closed the connection). 05:19:45 -!- coppro has joined. 05:40:08 -!- oerjan has quit (Quit: Good night). 05:43:53 -!- jcp has quit (Ping timeout: 248 seconds). 06:36:04 `translate Linguini! Fettucini, al forno! Bolognese, Crostini. Carbonara. Manicotti con Granchi e Spinaci. Frutti... di... MARE! Resquiat in pesci, in pesto, e in quattro formaggi. 06:36:15 Resquiat in fish, pesto, and four cheeses. 06:37:08 uorygl: what are you trying to do lol 06:37:11 `translate Linguini; fettucini, al forno; bolognese, Crostini; carbonara; manicotti con Granchi e Spinaci; frutti... di... MARE; resquiat in pesci, in pesto, e in quattro formaggi. 06:37:13 SEA; resquiat in fish, pesto, and four cheeses. 06:37:16 ... 06:37:21 I'm trying to translate that. 06:37:27 whats to translate 06:37:31 theyre names of foods 06:38:12 How about the "al forno" and the "resquiat" parts? 06:38:55 oh who knows im not italian 06:40:16 I guess all of it is food except the resquiat. 06:53:37 -!- Sgeo_ has joined. 06:55:19 -!- Sgeo has quit (Ping timeout: 256 seconds). 07:41:18 -!- tombom has joined. 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:00:57 -!- lament has quit (Ping timeout: 248 seconds). 08:01:06 -!- lament has joined. 08:02:01 -!- adam_d has joined. 08:15:16 -!- cheater2 has joined. 08:23:29 -!- Asztal has joined. 08:36:54 -!- adam_d has quit (Quit: Leaving). 09:10:27 -!- yourcomdotmom has joined. 09:10:27 -!- yourcomdotmom has quit (Excess Flood). 09:11:14 -!- MizardX has joined. 09:13:14 -!- yourcomdotmom has joined. 09:15:34 -!- yourcomdotmom has quit (Remote host closed the connection). 09:16:40 -!- yourcomdotmom has joined. 09:17:10 -!- yourcomdotmom has quit (Remote host closed the connection). 09:17:53 -!- yourcomdotmom has joined. 09:33:23 -!- yourcomdotmom has quit (Remote host closed the connection). 09:51:06 -!- scarf has joined. 10:09:32 That translated bit sounds so very very familiar, but I just can't place it. I'm sure I've read it somewhere, though. 10:42:03 -!- FireFly has joined. 10:56:05 -!- scarf has quit (Remote host closed the connection). 11:08:52 -!- ehird has joined. 11:09:05 March. 'Tis verily March. 11:15:58 So I was thinking that the inductive datatype constructor would be M, and the forgotten-the-name (like maybe for Maybe) μ. So you'd define all functions on inductive data-types with μ. I think Epigram 2 does that, or something like it. 11:17:22 I don't think M : (Set -> Set) -> Set makes sense, though; you can't define a sensible μ recursion combinator just based on that. 11:19:12 Or maybe you can. Feeding the non-M'd (List A) to the empty type gets us `data empty : Void; cons : A -> Void -> Void`. Wait, what? empty : Void? 11:19:16 I'm confused now. 11:19:25 ehird?! 11:19:31 -!- ehird has changed nick to alise. 11:19:33 Gotta fix that default. 11:19:41 :( 11:19:45 I MISS MY EHIRD 11:19:49 Tough shit. 11:19:50 :) 11:19:52 <3 11:19:57 ever used unity? 11:19:57 -!- alise has changed nick to ehird. 11:19:59 -!- ehird has changed nick to alise. 11:20:09 -!- alise has quit (Quit: alise). 11:20:27 -!- alise has joined. 11:20:35 Never used Unity. 3D is hard; let's go shopping. 11:20:45 duuuude 11:20:46 Write it in my language! 11:20:46 its so cool 11:20:48 It'll be dependent. 11:20:58 MONOIDAL RENDERING 11:26:45 18:33:37 coppro, read the C++ criticism. You're a C++ defender person, iirc? 11:26:45 Correct. I would also have accepted "lunatic". 11:40:25 -!- rodgort has quit (Quit: Coyote finally caught me). 11:40:34 -!- rodgort has joined. 11:44:34 -!- scarf has joined. 11:47:23 Hi scarf 11:47:32 hi alise 11:48:13 sorry, haven't been doing too much esoprogramming recently, unless you consider Java eso 11:48:50 one of the things which comes with a job is not always being able to choose which language you write in 11:48:58 that's alright, I haven't been either 11:49:16 well, then again, I guess you could consider my language eso 11:49:25 so you're saying that Java is a good language know if you want a job? well, it got /me/ a job 11:50:03 :( if i had been there i'd go on a lecture about soul-crushing C.R.U.D. work with contradictory specifications to the student :D 11:50:06 that would have been fun! 11:50:24 I may be the most cynical person about programming jobs who has /never had a programming job/ 11:50:25 heh, well my job is teaching it to students 11:50:35 so I don't have the sort of over-enterprisiness issues 11:50:44 just, my heart sinking at people confusing classes and methods 11:50:51 yeah but it's basically like teaching applied satanism :P 11:50:55 hah 11:50:56 *haha 11:50:58 you can do it but... why 11:51:16 improving the average quality of Java programmers can only be a good thing, surely? 11:51:20 true. 11:51:30 anyway, have the computable reals: 11:51:32 data ℝ : Set where 11:51:32 ℝ : (f : ℚ⁺ → ℚ) 11:51:32 → {{ε₁:ℚ⁺} → {ε₂:ℚ⁺} → abs (f ε₁ - f ε₂) ≤ ε₁ + ε₂} 11:51:33 → ℝ 11:51:33 11:51:33 ι : ℚ → ℝ 11:51:33 ι q = ℝ (λ_. q) 11:52:13 yay, Unicode support 11:52:24 I think any language with a syntax like that is necessarily eso, including APL 11:52:32 also, http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=380731#15 (found via reddit) makes me amused 11:52:34 Support? I'm afraid I'm going to shift your opinion now; it's not optional. 11:52:41 Unicode or GTFO! 11:52:57 scarf: that bug report really irritates me 11:53:08 i am god, accept my holy package judgements 11:53:21 alise: it confuses me, but I'm not sure why I'm confused and get even more confused as a result 11:53:49 alise: do you consider support for the astral planes also necessary? 11:53:53 I really like the definition of computable reals 11:54:09 scarf: Well, it's only "required" insofar as the basic syntax and stdlib use it :P 11:54:16 oh, for the lang 11:54:20 a 11:54:22 *ah 11:54:31 Or, wait, does any of the actual syntax use it? The arrow is defined in the stdlib, albeit as a primitive 11:54:36 I thought you meant that Unicode support was necessary for everything, and ended up agreeing with you 11:54:39 Oh, of course, lambda 11:54:55 scarf: Well, that too of course 11:54:58 Aastral Plane is nice also 11:55:01 *Astral 11:55:06 in derl (my underlambda/underload interp), all I/O is in UTF-8, and it uses UTF-32 internally 11:55:27 hmm, I don't think I've ever seen the Unicode version of the astral planes written with a capital letter 11:55:32 Nor I, oh well 11:55:36 God I love dependently-typed languages 11:55:39 and there are 16 of them 11:55:42 Induction on the naturals as a recursion combinator? 11:55:43 Wyever not 11:55:50 *Whyever 11:56:25 alise: my PhD is turning slightly towards the idea of dependent types; dependent types is sort-of parametrizing types towards values, whereas what I'm doing is in the other direction 11:56:44 It's not sort-of, that's exactly what it is. 11:56:47 where types are parametrized by the number of times you're allowed to use a value of that type ever 11:56:55 alise: well, ok 11:57:01 The normal typed lambda calculus is types indexing on types, and values indexing on values. 11:57:06 With typeclasses, we have values indexing on types. 11:57:11 Dependent types give us types indexing on values. 11:57:18 Or, wait, typeclasses don't /quite/ do that. 11:57:19 But close. 11:57:33 Dependently-typed languages usually have types as first-class values, too, so we get values-indexing-on-types for free. 11:58:55 one thing I've been thinking about recently is designing my own VCS 11:59:05 I like how the (intensional) Axiom of Choice is in fact provable in intuitionistic type theory and thus most dependent langs. 11:59:10 I think I found a paradigm general enough to contain both git's model and darcs's model as special cases 11:59:16 Wonder if it is in Observational Type Theory (the underpinning of Epigram 2)? 11:59:23 alise: ooh, the axiom of choice 11:59:29 (Not the extensional axiom of choice, though.) 11:59:37 Extensional is the one that lets you do things like order the real numbers. 11:59:46 http://r6.ca/blog/20050604T143800Z.html 11:59:48 when you're in a CS department, you eventually find someone who makes you realise that it isn't actually obvious after all 11:59:52 You can have one without the other. 12:00:01 Which is awesome. 12:00:54 *intensional not intuitionistic 12:01:05 the intensional one is the one that's normally stated as the axiom, at least here 12:01:32 but then, we're normally dealing with sets, where the existence of quotients is taken for granted 12:01:38 so they probably come out equivalent there 12:02:02 yes it's causing me a bit of a crisis as I like quotient types 12:02:25 and Observational Type Theory which has a really nice definition of equality has tem 12:02:27 *them 12:02:33 also, that first link is a data: link 12:02:35 I love that page 12:02:38 but surely it cannot have extensional choice? 12:02:44 otherwise it'd have excluded middle 12:02:59 although it doesn't load in my browser 12:03:01 and you cannot give a value of either p or p -> Void for every type p... 12:03:09 scarf: he does tat a lot 12:03:13 *that 12:03:15 it's like footnotes but awesome 12:03:26 hmm, I wonder why it isn't working? loading it just gives me a blank page 12:03:29 his blog http://r6.ca/blog/ is very cool 12:05:22 http://r6.ca/blog/20091101T231201Z.html man I haven't read this before 12:06:28 hmm, loads in Epiphany 12:06:32 that's -webkit 12:07:17 That data: link was the strange in my Ubuntu 3.0-series Firefox too: clicking did nothing; opened in new tab, initially got a blank page with no special load indicators; finally got it open when I went to the location bar to press enter once. 12:07:30 WFM (safari) 12:07:35 -!- Gracenotes has quit (Quit: Leaving). 12:08:09 Given that it works just fine after the go-to-location-bar-and-press-return, I suppose there's nothing wrong with the link itself. 12:08:10 fizzie: ah, let me try that in FF 12:08:37 fizzie: yep, same results 12:08:54 that /is/ a weird bug, I wonder if it's an FF bug or an extension bug? 12:09:10 so, guys, what's your favourite definition symbol? 12:09:36 I like ≔ 12:10:43 I like that snowman guy. 12:11:26 har har 12:12:33 alise: = with a little word "def" over it is normally used when writing proofs here 12:12:45 I'm not sure how much I like it, but it's at least unambiguous 12:12:45 Yes, but you need a huge font size for that to be readable. 12:13:01 also, there's something very nicely pure about a language that can get away with using = for defined-equal 12:13:03 Plus, it is ugly; we rarely use words in mathematics, preferring symbols (including alphanumeric ones). 12:13:03 ≔ is nice, though in this font even that's just a = that has some sort of blobby things on the left end. 12:13:05 like Algol 68 12:13:19 Overlaying an English abbreviation on top of a very common symbol is just silly/ 12:13:19 or Haskell 12:13:21 *silly. 12:13:23 fizzie: Ditto. 12:13:33 it's visible as a :=-alike to me 12:13:37 scarf: It isn't pure, though, because that's not really what it means. 12:13:37 It's still better-looking than the ≝ though. 12:13:38 with less space between the : and hte = 12:13:43 alise: I know 12:13:47 I mean, that one's just a = with a larger smudge above. 12:13:48 fizzie: ugh, that's awful 12:13:53 At the very least it should be ≡. 12:14:02 Definitional equality, propositional equality, ... 12:14:07 if I zoom right in, I can see the word def 12:14:13 Spam, spam, equality and spam... 12:14:16 that's zooming via super-mousewheel, not by making the font bigger 12:14:41 you don't realise how much you were missing super-mousewheel until you get a system where it works 12:14:55 ctrl-mousewheell in os x. 12:14:57 I have no mousewheel, though 12:15:00 and ≡ to me implies congruence rather than definition 12:15:11 Er, right, definitional equality is =. 12:15:16 super-mousewheel works via the touchpad here 12:15:25 ≡ is propositional. 12:15:29 scarf: No mouse at all 12:15:30 ah, ok 12:15:37 alise: heh, you remind me of me 12:15:53 the mouse I have at the moment is basically broken, I need a new one / to stop using the mouse again 12:16:02 I mostly only use it for Enigma, NetBeans, and websurfing as it is 12:16:12 (NetBeans because it doesn't respond to keyboard shortcuts in a sane manner) 12:16:30 I have a mouse just no radio receiving thing for it. 12:16:48 As you know I'm not in my usual residence, so this stuff had to be picked up and the receiver was not. 12:17:01 Should be resolved by today with the amazing solution of "purchasing a mouse" :P 12:17:07 (putting one of the more useful key combos on alt-f1, followed by preventing the usual shortcut keys opening the only menu which has that option on as a command, means you have to use the mouse for some things) 12:19:10 haha: http://www.robweir.com/blog/2010/02/microsoft-random-browser-ballot.html 12:19:21 summary: Microsoft messed up the code for randomizing the order of browsers in their ballot thing 12:19:26 so not all the combinations have equal probabilities 12:20:52 http://www.browserchoice.eu/BrowserChoice/browserchoice_en.htm 12:20:57 What the fuck is a "green" browser? 12:22:10 * scarf follows the tell me more link 12:22:18 I bet they claim to be environmentally friendly, or something 12:22:39 wow, the PNG image on their home page is taking around 10 seconds to load 12:22:39 I thought that too but it doesn't seem so 12:22:46 I don't think I've seen an image load that slowly for months 12:22:50 I like how there's like a few decent browsers and then holy shit obscureathons 12:22:57 and last time, it was goatse, and I managed to click away before more than the top 20 or so pixels loaded 12:23:02 after guessing it was a goatse 12:23:08 so I've seen the top 20 pixels or so of goatse, but no more 12:23:57 http://www.morequick.com/IndexEn.htm <--- wow that's a bad homepage 12:24:35 and a bad browesr 12:24:41 looks like it uses IE's engine 12:24:47 see bottom left of screenshot 12:25:16 heh, that's the IE logo, you're right 12:25:40 yeah like Maxthon and shit they're all the same 12:25:44 take IE engine add shitty UI with tabs done 12:25:50 how can a website called morequick.com load so slowly? 12:26:19 also, the interface looks like it's trying to look like OS X and failing 12:27:04 * scarf clicks on the IE install link 12:27:09 Only the tabs 12:27:09 just because I'm curious as to what will happen 12:27:21 some exe 12:27:25 oh, I get an advert for Windows 7 12:27:28 that's actually sort-of clever 12:27:34 "Internet Explorer 8 is available only on PCs running Windows. Check out Windows 7, which includes Internet Explorer 8." 12:29:37 but I have win7 installed on here (haven't used it for months, though), so if I really wanted IE 8, I could get it like that 12:29:40 http://www.flickr.com/photos/38864566@N00/2479491895/ 12:29:40 this is sweet 12:31:52 ugh, not a still image? 12:31:56 I may have a look when I get home 12:32:09 It couldn't be a still image 12:45:52 I have this sinking feeling that I should do pattern matching on arbitrary function results. 12:45:59 (as opposed to just constructors) 12:46:43 *just constructors 12:47:31 pattern matching reminds me of the old joke about regexes ("now you have /two/ problems") 12:47:47 or maybe the statement about XML being like violence 12:48:02 it's one of those things where, if you start pattern matching you end up needing to use more and more and more of it 12:50:01 Actually pattern matching is just sugar for case expressions which is just half of structural recursion on inductive data types... but what do I know :P 13:05:12 -!- daef has joined. 13:06:49 daef: Are you dæf? 13:06:56 Or just deaf /and/ dyslexic? 13:08:07 hmm, I tried /nick æis523 but Freenode wouldn't let me 13:08:31 Er, isn't it pronounced ay eye ess? 13:08:36 alise: yes 13:08:43 it would be a different word if it were æis523 13:08:47 Right. 13:08:58 sort of like "oklopol" is not pronounced the same way as "oklofok" 13:09:16 alise: ACK 13:09:29 dyslexics are teople poo 13:09:34 daef: Oh, cute, you're one end of a TCP socket! 13:09:40 scarf: nickname = ( letter / special ) *8( letter / digit / special / "-" ) 13:09:54 fizzie: Pah! 13:10:03 fizzie: wow, I'm... amazed and happy that you actually looked that up 13:10:15 fizzie: So what nick does -i use on IRC? 13:10:17 and just as happy but more amazed if you typed it from memoryt 13:10:21 *memory 13:10:30 He looks everything up :) 13:10:39 He is an unstoppable Google machine 13:10:44 scarf: Sorry to deamaze you a bit; it was looked-up. Looking things up is pretty much what I do. 13:10:52 It was from a local file this time, though. 13:11:11 (Is "deamaze" a word?) 13:11:18 fizzie is just a gigantic lookup table 13:11:24 alise: i'm david => dave => daef 13:11:26 not deaf 13:11:31 that's all 13:11:36 Eliezer Yudkowsky isn't sure whether you're conscious, fizzie. 13:11:44 daef: Oh shush you. 13:11:51 I'm allowed to be ridiculous if I feel like it. 13:11:57 kk 13:11:58 alise: I'm not sure of that either; I can't seem to find any good results for it in Google. 13:12:37 You didn't find http://lesswrong.com/lw/pa/gazp_vs_glut/? 13:12:53 He concludes you're not conscious. Ha! 13:13:00 I have foiled you, GLUT! 13:13:17 Is it Schadenfreude if the other party isn't conscious? 13:14:12 I asked the bot what I am, and it just said I'm "a communist irrelevant to any discussion of economics". That wasn't so polite. 13:14:41 :D 13:14:44 alise: do you speak german? 13:14:57 snowplow, grassroots, mobile OE, MPSEB Indian utility co. meter reading, Delhi traffic police, Citibank demo documentation, Disprax (fake screen shots only), Jackson Builders, Aston Villa, NREGA employment census, smnp hardware monitoring, NDPL power, PG Call Home 13:14:57 daef: No, but Schadenfreude is an authentic English word, high-quality import. 13:15:01 kk 13:15:06 Hardly any scratches on the disk. Only slightly pirated. 13:15:28 scarf: I agree. 13:15:44 btw, the "gazp vs glut" thing confuses me, I couldn't get why you'd compare anything but SDL to GLUT 13:15:48 but it seems to be a different GLUT 13:16:08 alise: you can have fun guessing what that list is, btw 13:16:15 as can the rest of #esoteric 13:16:28 although, it's likely to be distinctive enough that Google would turn it up pretty quickly 13:16:59 scarf: GLUT = Giant Look-Up Table 13:17:06 yep, got that from the page 13:17:07 GAZP = Generalised Anti-(P-)Zombie Principle 13:17:17 I was thinking GLUT = GL Utility Toolkit 13:17:27 lol 13:18:19 you can see how confusing that acronym mismatch would make the page title 13:18:34 yes :P 13:18:43 But is a cube... CONSCIOUS???? 13:19:00 alise: as it's GLUT, the question would work better with teapots 13:19:09 I was trying to remember that shape 13:19:24 scarf: anyway - it's just a bunch of triangles 13:19:45 the funny thing is, that the Utah Teapot was accidentally drawn at the wrong scale originally (as in, vertical scale != horizontal scale), so it looks rather different in the demos than it does in real life 13:20:05 that you could also save in a giant lookup table 13:23:12 If the Utah Teapot is conscious, is it a Mormon? 13:24:35 alise: assuming that's an indicative rather than subjunctive if, yes 13:24:41 *rather than counterfactual 13:25:08 Prove that it isn't conscious, you nincompoop! :P 13:25:38 also, subjunctive is a perfectly acceptable term isn't it? 13:27:24 my favourite bit of the GAZP vs. GLUT article is "The obvious answer is that you took a computational specification of a human brain, and used that to precompute the Giant Lookup Table. (Thereby creating uncounted googols of human beings, some of them in extreme pain, the supermajority gone quite mad in a universe of chaos where inputs bear no relation to outputs. But damn the ethics, this is for philosophy.)" 13:27:43 trust Eliezer Yudkowsky to remark on how immoral creating a lookup table can be 13:27:55 Which leads me on to my next question: IS MULTIPLICATION CONSCIOUS???? 13:29:18 what's confusing me here is computational complexity 13:29:48 for instance, what sort of information density would you need to make a lookup table for a human brain? would it become a black hole under its own mass even if it filled the whole observable universe, for instance? 13:30:01 Oh, it would surely be ridiculous. 13:30:05 We have such a small universe. 13:30:48 gah, why can't you upvote IRC comments? 13:31:14 Oh, it would surely be ridiculous. [↑ 1 ↓] 13:31:16 We have such a small universe. [↑ 1 ↓] 13:32:05 hmm, this seems like a perfect feature for ickirc 13:32:28 use CTCP 13:32:33 along with the one that lets you swap nicks with arbitrary other people using ickirc, without notifying the channel (it relays all messages back and forth, etc) 13:32:36 and ofc you'd use CTCP 13:32:37 ^AUPVOTE messageid^A 13:37:29 Feh. 13:43:08 also, http://forums.thedailywtf.com/forums/t/15838.aspx is golden 13:43:30 you know the storm over the australian internet filter, and the person pushing it most filtering out "ISP Filtering" from his own tag cloud with client-side JS? 13:43:38 it's not the only ridiculousness found in the code, it seems 13:43:50 and the code itself was taken from a JS tutorial written by someone unrelated 13:43:55 which person puhsing it most? I am confused 13:43:56 *pushing 13:43:59 ah I see 13:44:16 his name is Stephen Conroy, but that doesn't seem particularly relevant 13:44:28 umm, the minister pushing it, that is 13:45:07 I just couldn't parse your sentence; got it now 13:45:25 uk i'net is censored too :/ just not as badly 13:45:56 alise: the fact is bad enough 13:46:01 Yes. 13:46:10 at least Phorm hasn't been switched on yet 13:46:14 I have plans for if and when it is 13:46:29 I have quite an idea of how it technically works, and it would be fun to mess around with it 13:47:10 Isn't its workings well-known? 13:47:13 yep 13:47:19 well, by people who care to find out 13:47:23 I imagine it isn't well-known in general 13:47:29 because most people haven't bothered to look it up 13:47:30 Phorm seriously freaks me. It's, like, not even your regular Orwellian evil under a corporate disguise. 13:47:43 It's a paper company: something you would expect to see in fiction, down to the logo, website, everything. 13:47:53 we can try things like creating websites where every link goes through exactly 4 HTTP redirects 13:48:03 It's like there is no cover over it other than the ludicrously unbelievable. 13:48:06 which complies with the RFC without Phorm, but fails to comply with it with 13:48:21 heh, howso? 13:48:29 alise: because it uses redirects on every page view itself 13:48:38 and it goes over the redirect-loop limit if you combine the two 13:48:41 right 13:48:54 So would a Phorm-condemned user actually see a redirect on every request? 13:48:57 yes 13:49:04 even if you turn it off, apparently 13:49:07 Hey, lets the ISPs up all their connection speeds and prices. 13:49:13 because the redirect's needed to tell whether it's turned off or not 13:49:18 Meet the new speed, same as the old speed. 13:49:22 Actually, why the hell isn't Phorm illegal? 13:49:37 Wow, Phorm apparently used to (under a different name) produce spyware. 13:49:39 alise: nobody's entirely sure; there's a rumour that the EU's planning to sue the UK for not calling it illegal 13:49:41 I didn't even know that. 13:49:46 (As in, real bona fide non-approved spyware.) 13:50:21 The UK Information Commissioner's Office has voiced legal concerns with Webwise as it is currently implemented, and has said it would only be legal as an "opt-in" service, not an opt-out system. 13:50:21 more fun: phorm impersonates websites to inject cookies into them 13:50:25 I can't remember why, btw 13:50:30 What is it with UK government positions' names and sounding creepy? 13:50:33 Information Commissioner. 13:51:01 alise: I was reading Phorm's website recently, apparently when they turn it on they're planning to redirect pages to ask people whether to opt-in or opt-out 13:51:09 * alise wonders what it is with Wikipedia describing itself and always using the third-person whenever it mentions it 13:51:18 Do they want people to read Wikipedia without the Wikipedia branding in the future or something? :P 13:51:24 It's awkward to read. 13:51:26 alise: there's a page about that 13:51:30 I know. 13:51:33 http://en.wikipedia.org/wiki/Special:Search?go=Go&search=WP:ASR 13:51:38 But I think the "neutrality" just makes the writing feel strange. 13:51:58 the idea's that the articles should have no idea that they're on Wikipedia, or indeed even on a website 13:52:08 so, say, you can make print versions more easily, and fork it more easily 13:53:19 Print can still say Wikipedia. Okay, forking, granted. 13:53:24 But still... 13:53:40 Is forking more important than not confusing people who read it? 13:53:50 My brain does a bit of a double take every time Wikipedia says "the online encyclopedia Wikipedia". 13:55:26 If Phorm is ever switched on I'll not use any ISP that has it. Even if that eliminates all UK ISPs... 13:55:43 At home, at least. 13:55:54 alise: personally, I think it would be fun to screw around with it for a bit before boycotting, especially as my internet connections are (legally) borrowed anyway 13:56:10 Yeah, but what about all my kiddie porn?!?!?!?! 13:56:13 :P 13:56:27 alise: I hope you don't view that sort of thing 13:56:29 Anyway I draw the line at every single HTTP request causing a redirect. 13:56:41 scarf: Must you take obvious ridiculosity as sincere? 13:57:05 alise: well, at least I'm consistent 13:57:14 and it sometimes produces absurd conversations, which can only be a good thing 13:57:18 scarf: Then you are not complete. 13:57:32 alise: I'm not even a type 1 reasoner 13:58:22 whether it's possible to be simultaneously consistent and complete depends on your other assumptinos 13:58:24 *assumptions 13:58:42 Well, I based it on the fact that you said you were consistent. 13:58:52 Presumably that means you've proved to yourself that you're consistent :P 13:59:21 you have to take into account the difference between me believing I'm consistent, me actually being consistent, and me believing myself to believe myself to be consistent 13:59:29 actually, I believe myself to be inconsistent in general 14:00:58 Quotient types are good. The extensional Axiom of Choice is bad. Anything resulting in a bad thing is bad. Quotient types result in the extensional Axiom of Choice. 14:01:41 (But then I don't really believe "quotient types are good" because of that reasoning chain. Perhaps I have some special kind of "undecided" belief that references reasons not to believe it, and pointers to ways to possibly modify the belief so that it is good.) 14:02:14 alise: your use of an in-context "references" followed by an out-of-context "pointers" leads me to believe you're attempting a pun 14:02:17 but I can't find one 14:02:19 maybe it was just a typo? 14:04:12 FYI, the world will end on Tue, August 31st, 4500AD a few minutes before midnight (local time). 14:04:55 this is a crazy and nonserious attempt to deduce a religion from Microsoft Outlook 14:05:19 scarf: no pun no 14:05:21 brb 14:07:32 * scarf reads about people advertising really expensive cables for audio; nothing new, except that they're Ethernet cables designed to transmit audio really, really perfectly or something 14:07:48 with a cable meant for analog, you can sort-of see how people could be fooled into it, but digital? 14:08:25 People don't know how technology works 14:08:29 Analog or digital 14:08:35 I suppose so 14:08:54 "if you do not follow the "directional markings" on the cables, your music will play backwards. Please check that." 14:09:02 people found the website and started giving parody reviews 14:10:03 -!- MissPiggy has joined. 14:11:10 back, with a new keyboard and mouse 14:11:33 ooh 14:11:37 where did you get them from? 14:12:17 Um, ASDA. (My father's house is /also/ in a rather remote place, although not so much so; the nearest place with a supermarket only has one). I only got these because I needed 1, a keyboard with all the keys, and 2, a mouse that works. 14:12:35 (I already had them, I was just plugging them in and what not.) 14:13:14 So, yeah. 14:13:29 This keyboard could do with some weights to hold it into place. 14:13:35 The mouse isn't bad, though. 14:13:51 Not rubbery, sufficiently clicky buttons, and a scroll-wheel. 14:14:09 alise: I love the mental image of a keyboard blowing away in the wind 14:14:15 I am so fucking ill I want to puke 14:14:21 wait no I don't 14:14:21 MissPiggy: Then puke. 14:14:34 scarf: :-) 14:14:39 Those fold-up keyboards might be able to do that. 14:15:17 Ugh, I miss my media keys. (Just for volume control.) 14:16:22 alise: same here, although I bound them to super-combinations 14:16:23 But damn I'm glad I have a mouse. 14:16:29 in particular, I used to use play/pause a lot, now I use super-P 14:17:07 Rubber dome keyboards sure are mushy compared to the old scissor-switch. 14:17:15 But at least I don't have to fingernail keys I picked off now. 14:17:47 Irritating that Emacs cannot display characters I know I have the fonts for. 14:17:53 Even in those fonts. 14:18:13 For instance, ⊤ and ⊥ won't show, even with DejaVu Sans Mono. 14:18:25 WHO CARES 14:18:34 use T and F 14:18:37 MissPiggy: No? 14:18:40 I don't want to. 14:18:46 It worked before in Ubuntu. 14:19:01 alise: which OS are you using atm? 14:19:18 oh, OS X 14:19:20 OS X; the computer with Ubuntu on was too heavy and such to lug across, especially as it doesn't really like Wi-Fi. 14:19:27 (/ctcp version is so much faster than asking a person) 14:19:36 I have Ubuntu here, though. I could boot it up and use it now that I have a mouse. 14:19:46 But Linux on Macs is iffy at the best of times. 14:19:53 yeah :( 14:20:46 Besides, it seems to work alright in other OS X applications. 14:20:56 Bloody Emacs. Maybe a newer build would work. 14:21:33 I'd just use TextEdit, but I need \TeX-style-character-insertion. 14:21:38 -!- BeholdMyGlory has joined. 14:22:33 yol have agda mode? 14:23:19 M-x set-input-mode RET TeX RET. Agda-mode is just an extension of it, one that I ought to get around to downloading. 14:23:26 Well, agda-input, that is. 14:24:56 "David Cameron: We are a modern and radical Conservative Party" —YouTube front page 14:25:02 Radical conservatism! 14:25:58 alise want a good video to watch 14:26:10 Not particularly? 14:27:00 epigram is so cool 14:27:02 and so is agda 14:27:03 and coq 14:27:24 what about Omegamega? 14:28:12 *Ωmega :P 14:28:16 I haven't looked into it. 14:28:26 * MissPiggy doesn't get it 14:30:45 The Ωmega interpreter[1] is a strict pure functional programming interpreter similar to the Hugs Haskell interpreter. The syntax closely resembles that of Haskell but with important differences: 14:30:45 Ωmega is strict (Hugs is lazy); 14:30:45 Support for Generalized Algebraic Datatypes; 14:30:45 Ability to introduce new types; 14:30:45 Allows writing of functions at the type level. 14:30:52 Doesn't sound particularly dependent to me. 14:31:54 also, http://r6.ca/FewDigits/FPdag2008.pdf is officially my favourite introduction to dependent-types-as-logic ever 14:33:12 http://en.wikipedia.org/wiki/List_of_countries_by_coffee_consumption_per_capita 14:33:49 http://en.wikipedia.org/wiki/List_of_countries_by_alcohol_consumption 14:34:03 So what we can tell from this is that when Finns say "vodka" they mean "espresso". 14:36:01 hi alise 14:36:09 Whoa, that's unexpected. I've known that we're not exactly #1 when it comes to alcohol -- despite all the anecdotes -- but I had no idea about the coffee thing. I wonder if that is actually true-true. 14:36:12 alise, so back for good? 14:36:16 :) 14:36:30 AnMaster: Uh, what makes you think that? 14:36:42 The current situation just means I'm sure as hell going to tackle this before even considering returning. 14:37:02 Admittedly, if they have a weapon they'll use it now, and if they don't, I'm free. So I guess you're right, in some sense. 14:37:03 alise, hm? I mean back at home 14:37:04 This is Endgame. 14:37:05 Monday 14:37:11 Returning = to the unit 14:37:17 AnMaster: Oh you don't know the situation do you? 14:37:21 alise, no 14:37:22 well 14:37:27 I'll explain briefly in /msg. 14:37:30 I know what you mentioned before 14:37:32 alise, okay 14:37:49 afterwards I will tell about my very strange journey home today 14:37:55 very strange that thing with the bus 14:38:05 Was it a catbus? 14:38:27 alise, what is that? 14:38:34 http://en.wikipedia.org/wiki/My_Neighbor_Totoro 14:38:41 Or, well, I guess http://en.wikipedia.org/wiki/Catbus is more specific. 14:38:49 ah, not *quite* that strange 14:38:57 but I will recount it. 14:39:16 how can that possibly be not a lolcat reference? 14:39:35 To begin with it was normal, I took the articulated bus from university to the exchange (or whatever it is called, almost all buses pass through that place) 14:39:38 There's also that single-person kittenbus, that's maybe even more... that. 14:39:41 then I was to wait for another bus 14:39:44 still normal 14:39:45 but 14:39:52 then something unusual happened 14:39:58 A very articulate bus. 14:40:04 AnMaster: You TURNED INTO A WALRUS? 14:41:05 instead of the normal "front part low for handicaped/rear part high for packing lots of people" in compromise that that bus usually is, a long range coach thingy arrived 14:41:13 with the right bus number and everything 14:41:25 The SUSPENSE before you said that was INCREDIBLE. 14:41:30 but it got worse 14:41:31 wait for it 14:42:10 well of course I asked the driver and confirmed it was the right bus, and went on it. However later on I saw in the driver mirror the *normal* bus for that line right behind us. 14:42:24 This is so exciting I am literally urinating in my underwear 14:42:26 and when I stepped out of the bus when I arrived, and looked back at the bus I was in 14:42:30 it said "not in traffic" 14:42:31 on it 14:42:34 instead of the number 14:42:35 WHOA 14:42:48 all together I think this is rather strange 14:42:48 You just barely escaped a molestation affair thing, it seems! 14:42:56 fizzie, har 14:43:15 Though perhaps a bus is maybe not the most inconspicuous vehicle for that sort of thing. 14:43:21 fizzie, also the driver nearly made the wrong turn a bit before 14:43:36 AnMaster: once I went the bus which has the right number, but on the way home it took a wrong turn onto the very busy roads which don't go where I want and it was difficult to get home from there 14:43:48 MissPiggy, huh 14:43:51 now every time I go on that bus I am scared it might do that again 14:43:59 clearly this problem would not exist if we had trams 14:44:01 TRAMS! 14:44:06 MissPiggy, maybe it is like here, same number takes different variants of the rout 14:44:07 the perfect vehicle for the transportation of yams 14:44:08 route* 14:44:20 Speaking of buses, they're test-driving this four-door-pairs monster on the 550 line here: http://www.spheros.de/Upload/Images/Presse/Capacity_Aerosphere.jpg 14:44:37 bendy bus 14:45:03 There was something about there being more than one pair of steerable wheels in there. 14:45:04 there was a bit ofa fuss about them ni london because I think they can be a bit dangerous for cyclists 14:45:10 or maybe it was the other way around... 14:45:15 we should have buses that are entirely bendy 14:45:17 like they go through small towns sometimes, and sometimes they go by the 14:45:24 like, the whole bus is in the bendy bit 14:45:26 wheeeeeeeeeeeee 14:45:29 AnMaster yeah it was scary 14:45:30 The catbus is very bendy, I believe. 14:45:44 MissPiggy, well I'm used to this bus taking 5 different variants of the route 14:45:55 MissPiggy, at least I live close to one of the points it take for allmost all routes 14:46:04 Wir fahr'n fahr'n fahr'n auf der Autobahn, wir fahr'n fahr'n fahr'n auf der Autobahn... 14:46:31 anyway another strange thing when boarding it was that it didn't come in to the station/bus exchange from the normal direction 14:46:52 usually it comes in from north, the exchange being the second station from that end of the route 14:47:20 but this one came in from south with "not in traffic", made an U-turn, and changed to the right number 14:47:26 fizzie: Does that thing say METROBUS? 14:47:48 -!- oerjan has joined. 14:48:09 alise, autobhan in Swedish is exclusively used about the "no speed limit" German autobhans. (at least they used to have no speed limit, no idea about nowdays) 14:48:25 It seems to. The picture is non-local, though, just the same model of bus. 14:48:32 Yes. 14:48:34 But I like that song. 14:48:54 alise, anyway this long range bus even had a stoved away seat at the front saying "for guides" on a label 14:49:24 also I think the suspension on it was under dampened, it kept going up and down for a bit after each bump in the road 14:49:39 (is under-dampened the right English term?) 14:49:41 How about the "al forno" and the "resquiat" parts? 14:50:02 * alise quells AnMaster's boring with the computable reals 14:50:04 resquiat means "rest" i think, see "resquiat in pace" (sp) 14:50:05 data ℝ : Set where 14:50:05 ℝ : (f : ℚ⁺ → ℚ) 14:50:05 → {{ε₁:ℚ⁺} → {ε₂:ℚ⁺} → abs (f ε₁ - f ε₂) ≤ ε₁ + ε₂} 14:50:06 → ℝ 14:50:06 14:50:06 ι : ℚ → ℝ 14:50:06 ι q = ℝ (λ_ → q) 14:50:13 oh fun 14:50:21 alise: http://isometric.sixsided.org/data/strips/the_left_sister/4.gif 14:50:23 alise, what language is that? 14:50:25 requiescat in pace 14:50:29 haskell? 14:50:33 haskaj 14:50:35 AnMaster: mine. Similar to Agda, though, you could surely make the definition there. 14:50:41 Haskell is nowhere near powerful enough to express that. 14:50:55 but haskal is turing complete! 14:50:59 fizzie: <3 14:51:15 Hasqal 14:51:39 http://en.wikipedia.org/wiki/Al_forno 14:51:43 alise, what does it mean though? It looks like a definition of ℝ. And I guess the mentions of ℚ is for defining the latter as a subset of the former or such? 14:52:11 No. 14:52:16 alise, then what does it mean? :) 14:52:30 A real is represented as a function from a positive rational to a rational. {{ε₁:ℚ⁺} → {ε₂:ℚ⁺} → abs (f ε₁ - f ε₂) ≤ ε₁ + ε₂} means: 14:52:40 oh? 14:52:50 For all positive rationals e1 and e2, |f e1 - f e2| <= e1 + e2 14:53:01 alise: resquiat is a late latin corruption, it seems. also, this was italian not latin. 14:53:04 Basically, pi 0.01 = 3.14 14:53:36 alise, and pi 0.001 = 3.142? 14:53:38 This is the computable reals, not the reals, because you can't e.g. have Chaitin's constant. But constructivists don't believe in Chaitin's constant, anyway. 14:53:57 AnMaster: Or similar. 14:54:12 ι : ℚ → ℝ 14:54:12 ι q = ℝ (λ_ → q) 14:54:12 just lets you convert a rational to a real. 14:54:21 For any precision, it yields the rational you give it. 14:54:36 The cool thing is that you cannot pass any function to the real constructor that does not obey the property of {{ε₁:ℚ⁺} → {ε₂:ℚ⁺} → abs (f ε₁ - f ε₂) ≤ ε₁ + ε₂}. 14:54:42 3.14159265... <-- what I remember of pi on the top of my head 14:54:44 Don't ask how it works. It's Magic. 14:54:50 alise please make me better 14:55:09 the next digit after that *might* be a 3, not sure 14:55:12 * AnMaster checks 14:55:20 yep, a 3 14:55:25 MissPiggy: BAZAM 14:55:26 Done. 14:55:27 It's 3 unless you round it to that length. 14:55:31 thanks 14:55:36 ;_; 14:55:38 * MissPiggy cry cry cry 14:55:46 MissPiggy: What, precisely, is the problem? 14:55:50 I think mooz bothered to memorize 50 or 100 digits or so. I'm not sure why. 14:55:53 alise I have a bad cold 14:56:06 alise: I can do 3.14159265358 14:56:06 fizzie, well yes 14:56:10 * AnMaster: 14:56:11 (about the 3 and rounding) 14:56:11 AnMaster: ...3589797... from my top of head 14:56:12 MissPiggy: Sucks to be you; I hate colds. 14:56:19 scarf, ? 14:56:21 wait 14:56:26 3.14159 is as much as I know; I'm a dullard. 14:56:27 alise me too the worst thing is I had 100% attendence up until today 14:56:33 that last 7 shouldn't be there 14:56:49 (unless it's accidentally right) 14:56:50 http://isometric.sixsided.org/data/strips/the_left_sister/dropin2.php ;; I really ought to read isometric comics more than just when fizzie links to them 14:56:59 MissPiggy: cute, like oklopol 14:57:02 3.141592653589793238462643383279502884197169399375105820974944592307816406286208 14:57:03 alise, I have to think a few seconds to remember past 3.14159. It goes like "uuh... ah yes, 2 then 65" 14:57:05 that's all I can remember 14:57:08 angry that he got his first 4 instead of a 5 on a test :) 14:57:17 MissPiggy: Yeah. Right. 14:57:26 alise it's true 14:57:58 http://isometric.sixsided.org/data/strips/the_left_sister/19.gif 14:58:04 and I even got it all right! 14:58:04 AnMaster: ...3589797... from my top of head <-- checking gives that as "793" not "797" indeed 14:58:09 but then that could be rounted 14:58:12 alise you don't beleive me :| 14:58:14 since I checked M_PI 14:58:18 MissPiggy: I find it unlikely. 14:58:24 alise I am not lieing 14:58:25 But I do not rule out the possibility entirely. 14:58:50 wait, that makes no sense 14:58:58 M_PI has more precision in the header 14:58:58 AnMaster: hard to roung 3... to 7, alas :D 14:59:01 *round 14:59:06 * AnMaster slaps printf 14:59:09 :( 14:59:12 i am just chased by muphry's law today 14:59:13 http://isometric.sixsided.org/data/strips/the_left_sister/24.gif 14:59:15 oerjan, well yes 14:59:15 I'll stop now 14:59:18 oerjan, unless it is very cold 14:59:27 wait what 14:59:35 alise all I know of phi is 1.618033989 14:59:43 alise and of e 2.718281828 14:59:49 2.718281828459045 14:59:54 Panels 28 onwards are missing, fizzie bot :( 14:59:55 that forms a really memorable pattern 15:00:02 I should memorize more e 15:00:19 scarf, errr... e? 15:00:22 alise: I know, but my lookup table has gotten damaged and I cannot reconstruct them either. 15:00:31 scarf, I remember 2.718 of e 15:00:32 AnMaster: yes, e 15:00:32 ℝ (λ ε → product (map (λ i → (i!)⁻¹) (0 … ε))) 15:00:34 really bad at that 15:00:35 I've memorised all of e! 15:00:39 alise, XD 15:00:44 Or, if you prefer fancier notation, 15:00:57 ℝ (λ ε → ∏ 0 … ε ⇒ λi → (i!)⁻¹) 15:01:06 well since it is transcendental, iirc every pattern of numbers will be found somewhere in it? 15:01:11 wasn't it something like that 15:01:19 No. 15:01:24 That's normal. 15:01:27 AnMaster: no, that isn't an implication 15:01:31 or was that property even more specific than transcendental? 15:01:35 Yes. 15:01:38 right 15:01:39 that's more specific than transcendental 15:01:48 what was it called now again? 15:01:52 there are definitely transcendentals which are normal. iirc 0.101001000100001... is one 15:01:54 the first proved-trancendental number had no digits in its decimal expansion than 0 and 1 15:01:57 http://en.wikipedia.org/wiki/Liouville_number 15:01:58 *which are _not_ normal 15:02:00 scarf: yeah 15:02:11 * oerjan swats muphry -----### 15:02:32 *other than 15:02:40 so, did pi and e have that extra property or not? I don't remember 15:02:49 what extra property? 15:02:59 the one mentioned just above -_- 15:03:00 and there _might_ be normals which are not transcendental, i think the guess is all non-rational algebraic numbers are normal, but no one knows for even a single one 15:03:05 0.101001000100001 is normal? 15:03:13 .... 15:03:17 i _think_ all _known_ normal numbers are explicitly constructed to be so 15:03:42 MissPiggy: muphry is chasing me around today, i said 15:03:42 oerjan, ah 15:03:57 what's muphry 15:04:06 oerjan, this isn't the first instance? 15:04:13 MissPiggy, you have to be kidding 15:04:24 ? 15:04:28 MissPiggy: the law that all corrections of other people's typos or grammar mistakes themselves contain typos or grammar mistakes 15:04:34 MissPiggy, http://en.wikipedia.org/wiki/Murphy%27s_law 15:04:48 MissPiggy: transcendental. actually maybe you need more 0's between 15:04:53 AnMaster: fail 15:04:54 AnMaster: that's the most ridiculous typo I've seen on this subject for a while 15:04:55 AnMaster: no, Muphry 15:05:04 scarf: I expect AnMaster just had a gigantic whooooooooooosh 15:05:08 and honestly didn't get it 15:05:10 alise, oh I didn't notice the extra r 15:05:13 alise: lasting several months? 15:05:14 XD 15:05:15 AnMaster: doublefail 15:05:24 argh 15:05:26 moved r then 15:05:29 ths is all my fault 15:05:31 AnMaster: also, i missed a pi digit, and misspelled round 15:05:35 MissPiggy: fault? this is hilarious! 15:05:42 this is sparta! 15:05:44 :( 15:05:51 ccccccxxxxxzzzzzzaaaaaaaa 15:06:15 what did the sparta thing... oh right "this is hilarious!" 15:06:31 I really didn't think of "this is sparta" when reading that... 15:06:42 * MissPiggy reads everything alise says in that voice 15:06:59 i am a wonderful feminine creature! 15:07:06 MissPiggy, what about "this is fun"...? does that also make you think of sparta? 15:07:09 yes you are 15:07:21 no AnMaster 15:07:49 scarf: i may be overextending muphry's law here, using it for any error involving mistyping 15:08:02 MissPiggy, weird 15:08:18 oerjan: I like it when maths people both (a) only know a few specially normal numbers, yet (b) have a proof that almost all numbers of normal, especially since it involves the so vague-sounding yet sensibly defined "almost all". 15:08:30 :P 15:08:32 Muphry's law is an adage that states that "if you write anything criticizing editing or proofreading, there will be a fault of some kind in what you have written". 15:08:38 fizzie: yeah 15:08:41 oerjan: In any case MathWorld agrees with your assessment that currently known normal numbers are "artificially constructed". 15:08:45 that was funny fizzie 15:08:46 "Most numbers that aren't pathological are probably normal"\ 15:08:48 *normal" 15:11:18 alise, opinison please http://www.reddit.com/r/programming/comments/b7neu/what_are_some_exciting_areas_for_computer_science/c0ldm41 15:11:23 MissPiggy: ah yes the liouville's constant 0.110... etc. requires more than just linear number of zeros (it's sum of 10^(-n!)) 15:11:39 MissPiggy: did you write that or sth? 15:11:44 alise, sth. 15:11:45 not sure what kind of opinion you want 15:11:51 MissPiggy: i refuse to apologise :) 15:12:39 [[Formal verification]] of computer programs. 15:12:45 You "simply" write a proof that your program is correct (including that it can't crash). Then you run the proof through a [[proof checker]] computer program. 15:12:51 I know what it says. 15:12:55 just seems a bit patronizing... 15:13:12 but maybe it's just my wiki-hate 15:13:20 well the terminology is a bit oversimplified 15:13:27 ...also i still don't get why you hate wikipedia 15:13:39 see [[wikipedia]] 15:13:41 or google it 15:13:47 ^ that's why 15:14:04 so you'd link to another source, even if it would be less helpful? 15:14:11 -_ 15:14:16 MissPiggy: ah yes the liouville's constant 0.110... etc. requires more than just linear number of zeros (it's sum of 10^(-n!)) <-- should that be read as "sum sign (but unicode fail preventing the proper symbol)"? 15:14:22 anyway nobody said dependent types so foo to that link 15:14:33 AnMaster: no? 15:14:36 alise well the question is "What are some exciting areas for computer science related research?" 15:14:40 what a stupid question! 15:14:42 turns out he was talking english 15:15:12 MissPiggy: i'm really not interested in engaging in CSnerdrage no matter how stupid the question is... I didn't click when i saw it on proggit because I knew the answers would suck 15:15:13 alise, weird. A mathematican not using the shortest possible symbol to talk about math!? 15:15:14 AnMaster: i don't do unicode, so no 15:15:21 mathematician* 15:15:30 AnMaster: you realise that a lot of mathematics is done with words? 15:15:31 or well, yes 15:15:36 formally verified proofs aren't really the done thing 15:15:39 or even totally formal proofs 15:15:39 alise, of course -_- 15:15:59 alise you totally missed the point :| 15:16:08 indeed 15:16:20 alise, whooooooooooooooooooooooooooooooooooooooosh 15:16:23 just fyi 15:16:25 -!- MigoMipo has joined. 15:16:40 XD 15:17:16 ∞ -j! 15:17:16 c = ∑ 10 15:17:16 the point is that linking to [[wikipedia]] every second word, like some kind of [[blogger]] is just completely unhelpful 15:17:17 j=1 15:17:21 impossible, AnMaster cannot whoosh anyone, fundamental physical law 15:17:24 food -> 15:17:25 AnMaster: a joke is only funny if it has some basis in fact 15:17:43 alise, ever heard about stereotypes? 15:17:50 a joke based on a popular ignorance has to mock it to a large degree 15:18:02 rather than simply take it for granted and then following the usual "joke based on fact" process 15:18:15 i'm starting to wonder if perhaps swedish culture has no jokes at all 15:18:21 ffs, just admit you missed the point. 15:18:25 but of course you can't 15:19:04 "Just admit that you're wrong! I don't care if you're right, just concede once in a while!" 15:19:09 Yawn. Boring. Go away. 15:19:15 lol 15:19:15 15:17 < alise> i'm starting to wonder if perhaps swedish culture has no jokes at all 15:19:50 "My hovercraft is full of eels!" "You have a HOVERCRAFT? Why the fuck did you let eels into it? Jeez." 15:20:27 alise: that's hilarious, and I don't know why 15:21:29 "If all the things you sell have lots of spam in, you should call it a Spam Restaurant or something. And why are you saying spam multiple times?! Also, that singing gimmick is off-putting." 15:22:11 -!- asiekierka has joined. 15:22:11 hi 15:22:16 "Well, swallows fly at different speeds at different times and in different situations, I'd imagine. So I couldn't answer that question, but then again, nobody else can. So I'd say that the error is on /your/ part, for asking a question that is not meaningful." 15:22:33 i'm reading about neural networks 15:22:37 gah, now I'm trying to remember, I actually looked it up 15:22:39 was it 18 mph? 15:24:40 -!- alise has changed nick to ceiiinosssttuv. 15:24:49 ceinostuv? 15:24:51 what is this even 15:27:11 -!- ceiiinosssttuv has changed nick to alise. 15:27:13 that lasted long 15:27:58 scarf, African swallow? 15:27:59 alise: swedish jokes mainly consist of taking norwegian jokes about swedes, and swapping the norwegian and swedish characters. hope this helps. 15:28:12 oerjan, NO! it is the other way around 15:28:12 AnMaster: no, european; there's insufficient data on african swallows 15:28:16 AnMaster: I was about to say, dammit :P 15:28:18 AnMaster: LIES 15:28:20 you steal our jokes about you 15:28:36 I should live on the Swedish-Norwegian border; it would be /rad/ 15:28:42 please tell me that the /only/ norwegian joke is the one that oerhan just gave 15:28:45 *oerjan 15:28:48 then it would be perfect 15:28:58 :D 15:29:12 scarf, alas no. 15:29:21 well 15:29:24 could be for Norway 15:29:31 but have lots more about them :P 15:30:03 wow there is a site dedicated to them... 15:30:06 http://norgehistorier.se/ 15:30:17 oerjan, now don't steal those and swap things :P 15:30:46 Our nationality-related jokes generally tend to have a triplet; a Finn, a Swede and a Norwegian. 15:30:51 anyway that on that front page is quite representative of the general style of them 15:30:57 i raise those with http://www.svenskevitser.com/ 15:31:14 fizzie, oh we have those style too. But usually Bellman, a German and a Norwegian 15:31:23 fizzie: we usually use a dane instead of a finn 15:31:29 why Bellman I have no idea 15:31:48 but we also have jokes about the finns, whose main character is _always_ called Pekka 15:31:58 oerjan, of course 15:32:08 (and secondary character is frequently called Toivonen) 15:32:29 oerjan, and all Norwegians går på tur 15:32:42 (which is a strange way to say that they are skiing) 15:32:43 ut på tur, aldri sur 15:32:51 oerjan, haven't heard that 15:32:59 I believe that taking a walk through the rain without an umbrella illustrates this concept quite satisfactorily. 15:33:06 um no that would be skitur. a tur alone may be just walking. 15:33:15 or even be a båttur 15:33:27 oerjan, gå på båttur? 15:33:28 oerjan: The interwebs tell me the characters in those jokes are supposed to be Pekka and Jorma. (But that's from a draft of a paper from a Finnish university docent.) 15:33:29 wth 15:33:33 fizzie: who's the stupid one in that triplet? 15:33:43 oerjan, or do you have gå = go? sv:gå = en:walk 15:33:49 typical for English nationality jokes is to have an Englishman, a Scotsman, and an Irishman 15:33:51 AnMaster: i guess the verb would be "dra" rather than "gå" in that case 15:34:00 oerjan, right 15:34:11 and the typical pattern is for the Englishman and Scotsman to both behave sensibly but differently, and then the Irishman to do something stupid 15:34:37 scarf: Occasionally the Finn; if not that, then both the others. 15:34:49 -!- coppro has quit (Ping timeout: 248 seconds). 15:34:50 "Vet du varför norrmänen har ett sandpapper ut i öknen? De tror att det är en karta!!" → "Do you know why Norwegians take a sand paper with them in deserts? Because they think it is a map" 15:34:56 very typical of the style 15:35:05 * oerjan is annoyed that google has started garbling its links with redirecting through itself. now i have to _visit_ the sites to easily paste their links. 15:35:05 * scarf wonders what those jokes are like in Scotland 15:35:23 scarf, what about Wales? 15:35:41 AnMaster: that's also worth wondering about 15:35:47 15:33 < scarf> typical for English nationality jokes is to have an Englishman, a Scotsman, and an Irishman 15:35:50 scarf, this ^ 15:35:58 MissPiggy: ? 15:36:03 in scotland 15:36:10 also, the browser history button has become buggy :( 15:36:24 thing is we don't even swap the characters around we just repeat them verbatim 15:36:31 oh this was was quite good (translated): "Do you know why there will be a war between Norway and Sweden in 100 years? Answer: Because that is when then get our jokes." 15:36:33 oerjan, ^ 15:36:40 lol 15:37:29 MissPiggy: well, that sort of English joke is not uncomplimentary towards the Scottish at all, so I don't see why there'd be a need to change it 15:38:21 fizzie: i haven't even _heard_ the name Jorma, may be something recent 15:38:56 I believe that taking a walk through the rain without an umbrella illustrates this concept quite satisfactorily. <-- as long as you don't dance while doing it 15:39:51 AnMaster: brilliant. you don't even need to switch anything :D 15:40:14 oerjan, har! 15:40:31 yeah that one works both ways 15:40:53 oerjan, oh you mean it didn't say which nationality at all 15:41:02 (that was "we") 15:41:16 yeah 15:41:43 oerjan, well, if it is against the Norwegians, then it is clearly them who are stupid. But if it is used against the Swedish, it is obviously meant to be read as "Norwegian jokes are so far fetched" 15:41:43 :P 15:41:56 _obviously_ 15:42:16 oerjan, see it works both ways both ways! 15:42:22 (not a typo) 15:42:48 anyone know much about SCTP here btw? 15:43:57 AnMaster: btw the same joke about the war is essentially no. 5 on svenskevitser.com 15:44:24 although generously with only 40 years 15:44:38 oerjan, see, we are way smarter than you! 15:44:39 clearly, Sweden's going to attack first 15:44:51 scarf: ooh 15:45:38 scarf, I doubt it. By that point the gov will have cut the army funds so we have 2 soldiers (hey at least that is one more than Lancre!) 15:47:06 well still, don't go to work against Lancre. i hear their grannies are something fierce. 15:47:10 *war 15:47:29 * oerjan beats Muphry with the saucepan ===\__/ 15:49:16 oerjan, indeed 15:50:24 -!- cpressey has joined. 15:53:48 oerjan: that's old 15:54:02 alise: what's old? 15:54:05 your old 15:54:17 both of you 15:54:52 what about our old 15:55:08 what about my old 15:55:19 AnMaster: is cutting the army funds really a big problem? 15:55:20 how will it survive in the cold? 15:55:24 it's not like anyone's bombing sweden :P 15:55:34 i forgot what was old XD 15:57:27 cpressey, hi there, what do you think of this very early draft for a replacement for SOCK/SCKE (which have a number of issues, such as unix sockets being impossible due to the flag being below the address, and the address being either an ipv4 ip in one cell, or a 0gnirts, which means you can't know which format it is in): http://sprunge.us/OJFX 15:59:05 alise: the cutting of the army funds before WW2 was a big issue in norway... 15:59:41 sweden wisely had not done so, and weren't invaded. or something like that. 15:59:53 yes, it's before ww2 15:59:58 oerjan, actually we had cut them somewhat too, but not as much iirc 16:00:23 oerjan, nowdays, Sweden is worse off 16:02:43 mhm 16:06:36 `quote 16:06:49 31|IN AN ALTERNATE UNIVERSE: In an alternate universe, I would say "In an alternate universe, ehird has taste" 16:07:09 `quote 16:07:10 125|Note that quote number 124 is not actually true. 16:07:18 `quote 124 16:07:19 124| I cannot eat meat that isn't flat. 16:07:29 `quote 16:07:30 31|IN AN ALTERNATE UNIVERSE: In an alternate universe, I would say "In an alternate universe, ehird has taste" 16:07:32 XD 16:07:32 `quote 16:07:33 1| I've always wanted to kill someone. >.> 16:07:35 `quote 16:07:36 121| My mascot is a tree of broccoli. 16:07:36 `quote 42 16:07:37 42| after all, what are DVD players for? 16:07:37 `quote 16:07:39 22|IN AN ALTERNATE UNIVERSE: First, invent the direct mind-computer interface. Second, learn the rest with your NEW MIND-COMPUTER INTERFACE. 16:07:42 `quote 16:07:43 78| ??? Are the cocks actually just implanted dildos? Or are there monster dildos and cocks? Or are both the dildos and cocks monster? 16:07:53 `quote 16:07:53 is there any way to get quotes by a particular person? 16:07:54 100| Warrigal: what do you mean by 21? 16:07:58 `quote 84 16:08:00 84| Porn. There, see? 16:08:02 scarf: yes, use sgeo's text file of them 16:08:04 and grep it 16:08:04 `quote 81 16:08:05 81| What is there to talk about besides gay slang? 16:08:06 ping Sgeo link us 16:08:09 oh he's not here 16:08:16 I am 16:08:20 *GASP* 16:08:26 oh 16:08:28 link us to the file 16:08:30 plz kthx 16:08:43 Hold on 16:08:46 `quote 16:08:47 98| ehird: every set can be well-ordered. corollary: every set s has the same diagram used from famous program talisman with fnord windows to cascade, someone i would never capitalize " i" 16:08:52 `quote 3 16:08:53 3| EgoBot just opened a chat session with me to say "bork bork bork" 16:08:56 `quote 5 16:08:57 5| Hmmm... My fingers and tongue seem to be as quick as ever, but my lips have definitely weakened... More practice is in order. 16:09:00 `quote 7 16:09:00 7| that's where I got it rocket launch facility gift shop 16:09:02 `quote 16:09:03 1| I've always wanted to kill someone. >.> 16:09:03 `quote 11 16:09:05 11| TODO: sex life 16:09:06 `quote 13 16:09:07 13|* ehird has joined #lobby hmmm clean me 16:09:10 `quote 17 16:09:11 17| :d <(I can lick my nose!) 16:09:12 Gregor: your random number generator is either too good or too bad 16:09:12 `quote 18 16:09:13 18| GregorR-L: i bet only you can prevent forest fires. basically, you know. 16:09:16 `quote 16:09:17 71| If I ever made a game where you jabbed bears ... I'd call it jabbear. 16:09:19 `quote 16:09:20 18| GregorR-L: i bet only you can prevent forest fires. basically, you know. 16:09:20 http://209.20.80.194/sgeo/quotes.txt 16:09:25 Sgeo_: thx 16:09:27 scarf: ^ 16:09:28 yw 16:09:30 http://209.20.80.194/sgeo/quotes.txt 16:09:36 * cpressey rubs eyes 16:09:40 It's Monday morning and alise is here? 16:09:42 `quote 16:09:45 57| `translatefromto hu en Hogy hogy hogy ami kemeny How hard is that 16:10:02 cpressey: It's Complicated(TM). 16:10:11 how do you add extra quotes 16:10:17 Yay! Complicated(TM)! 16:10:23 asiekierka: NOBODY TELL HIM 16:10:51 I will give cake to the first person that does 16:10:53 AnMaster: I'll try to look at after I regain consciousness 16:11:14 cpressey: tl;dr a larger, but much less straining crisis is currently happening and I don't have the strength to keep up the regular facade until it is resolved... so I'm not attending. Of course if they're right about being able to section me this won't last long. 16:11:22 But I think there's an awful lot of bluff to that statement. 16:11:31 cpressey: You're a p-zombie?! 16:11:32 AAAAAAAAA 16:11:41 MIIIIIIIIIIIINDS 16:11:41 wait 16:11:48 forgot to do something today 16:11:49 what was it... 16:12:29 oh, right! 16:12:40 -!- asiekierka has set topic: 0 days since last topic change | 0 days since last alise sighting | For those who don't know: INTERCAL is basically the I Wanna Be The Guy of programming languages. Not useful for anything serious, but pretty funny when viewed from the outside. | cpressey: You're a p-zombie?! | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 16:13:04 -!- alise has set topic: alise sighting counter currently out of order | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 16:13:05 AnMaster: I'll try to look at after I regain consciousness <-- what happened? 16:13:08 * Sgeo_ really needs to go wash some clothes and get ready for school 16:13:41 The washer in the house is broken but the dryer works fine. Every morning, I just wash what I need >.> 16:14:21 Nothing special, just Monday morning. 16:14:33 cpressey: Have you tried PURE CAFFEINE? 16:15:10 `quote 16:15:11 70| Gregor is often a scandalous imposter. It's all the hats, I tell you. 16:15:14 `help 16:15:15 Runs arbitrary code in GNU/Linux. Type "`", or "`run " for full shell commands. "`fetch " downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert " can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/ 16:15:15 scarf: also 16:15:17 `quote oklopol 16:15:18 48| i can get an erection out of a plank, you can quote me on that. 50| 16:15:23 there is a ... sort of search. 16:15:32 `run quote oklopol 16:15:33 48| i can get an erection out of a plank, you can quote me on that. 50| 16:15:35 Is HackEgo secure? 16:15:36 alise: oh, I just scammed BlogNomic back into existence; we'd been playing a different nomic for the last 4 years, but it just took one blog post (not even a proposal) to fix it 16:15:41 asiekierka: no, you could root it if you wanted 16:15:43 please don't 16:15:48 scarf: wow, what happened? 16:15:50 scarf, linky? 16:15:51 :( 16:15:58 i just wanted to do, uh 16:16:01 run sudo rm -rf / 16:16:05 http://blognomic.com/archive/the_switch_never_happened/ 16:16:06 with an ` at front 16:16:40 asiekierka: Please don't. 16:16:45 It's an honour system bot. 16:16:49 as in? 16:16:50 You can do whatever you want. 16:16:53 but? 16:16:57 alise: I thought it had protection against that sort of thing 16:16:59 But please don't abuse it. 16:17:01 scarf: nope 16:17:03 for one thing, how would you enter the sudo password? 16:17:05 ah 16:17:10 !sh sudo rm -rf / 16:17:16 you mean `run 16:17:16 /tmp/input.18678: line 1: sudo: command not found 16:17:17 I know EgoBot is protected against that 16:17:18 scarf: you can easily elevate to root. also, that's egobot not hackbot 16:17:25 alise: yep 16:17:31 scarf, you really really mean `run 16:17:34 alise: can't you always revert such a change? 16:17:42 oerjan: not necessarily 16:17:45 `run ls 16:17:46 bin \ cube2.base64 \ cube2.jpg \ help.txt \ hentai \ huh \ paste \ poetry.txt \ porn.jpg \ quotes \ share \ test.sh \ tmpdir.18724 16:17:47 scarf: rm -rf / --no-protect-root 16:17:48 asiekierka: I was testing out a different bot, which was protected 16:17:50 works better 16:17:51 daef: I know 16:17:53 `run rm porn.jpg 16:17:54 No output. 16:17:57 but I normally omit that last bit 16:18:04 TRI-F TIME 16:18:21 What's this about protecting root? 16:18:36 Sgeo_, tree huggers going insane! 16:18:38 that's what 16:18:45 `help 16:18:45 Runs arbitrary code in GNU/Linux. Type "`", or "`run " for full shell commands. "`fetch " downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert " can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/ 16:18:53 `cd / 16:18:55 No output. 16:18:58 `ls 16:18:59 bin \ cube2.base64 \ cube2.jpg \ help.txt \ hentai \ huh \ paste \ poetry.txt \ quotes \ share \ test.sh \ tmpdir.18973 16:19:07 `cd / && ls 16:19:07 No output. 16:19:08 asiekierka, it doesn't keep that state 16:19:12 scarf, need run 16:19:14 can i remove one more thing 16:19:15 `run cd / && ls 16:19:16 bin \ dev \ etc \ home \ lib \ lib64 \ proc \ tmp \ usr 16:19:23 asiekierka: sure. 16:19:29 we allow one destructive change. just takes a few hours to put back 16:19:35 ok 16:19:48 go for it 16:20:07 `run rm -r hentai 16:20:08 No output. 16:20:11 `ls 16:20:12 bin \ cube2.base64 \ cube2.jpg \ help.txt \ huh \ paste \ poetry.txt \ quotes \ share \ test.sh \ tmpdir.19164 16:20:15 Oh my god, you removed the vital file 16:20:20 That was the core system file for the sandbox 16:20:20 I said 16:20:23 "TRI-F TIME" 16:20:25 What the fuck man 16:20:28 Ugh 16:20:28 TRI-F being FAMILY FRIENDLY FILTER 16:20:35 Gregor: Shut down the bot please, it's exposed 16:20:43 asiekierka: You realise that now that's removing files on /Gregor's hard disk/? 16:20:51 `file * 16:20:51 hentai was the pointer to the outer system. 16:20:52 You said "one destructive change" 16:20:52 *: ERROR: cannot open `*' (No such file or directory) 16:20:56 err 16:21:13 `run file * | tr '\n' '-' 16:21:14 asiekierka: Yes, but not catastrophic change 16:21:15 bin: directory-cube2.base64: ASCII text-cube2.jpg: JPEG image data, JFIF standard 1.01-help.txt: ASCII text-huh: ASCII English text-paste: directory-poetry.txt: ASCII text-quotes: directory-share: directory-test.sh: ASCII text-tmpdir.19248: directory- 16:21:21 err? 16:21:21 How could I know it'd be so catastrophic 16:21:25 `run echo "This is a file." > porn.jpg 16:21:25 `run file * | tr '\n' '|' 16:21:26 No output. 16:21:26 bin: directory|cube2.base64: ASCII text|cube2.jpg: JPEG image data, JFIF standard 1.01|help.txt: ASCII text|huh: ASCII English text|paste: directory|poetry.txt: ASCII text|quotes: directory|share: directory|test.sh: ASCII text|tmpdir.19310: directory| 16:21:27 maybe 16:21:29 `ls 16:21:29 that works better 16:21:30 bin \ cube2.base64 \ cube2.jpg \ help.txt \ huh \ paste \ poetry.txt \ porn.jpg \ quotes \ share \ test.sh \ tmpdir.19376 16:21:30 You could name it "TOTALLY_UNIMPORTANT_FILE_ROTFLMAO" 16:21:48 asiekierka: You could have looked at the file before deleting it. 16:22:00 I guess we just won't have HackEgo any more, then, if people can't be trusted with it 16:22:08 You mean: I can't be trusted with it 16:22:13 `run file * | tr '\n\t' '| ' 16:22:14 bin: directory|cube2.base64: ASCII text|cube2.jpg: JPEG image data, JFIF standard 1.01|help.txt: ASCII text|huh: ASCII English text|paste: directory|poetry.txt: ASCII text|porn.jpg: ASCII text|quotes: directory|share: directory|test.sh: ASCII text|tmpdir.19427: directory| 16:22:14 just block me from doing anything harmful and you're ok 16:22:16 er? 16:22:22 err* 16:22:24 asiekierka: We prefer people to be responsible, usually. 16:22:37 `ls 16:22:38 bin \ cube2.base64 \ cube2.jpg \ help.txt \ huh \ paste \ poetry.txt \ porn.jpg \ quotes \ share \ test.sh \ tmpdir.19470 16:22:41 `cd / && ls 16:22:43 No output. 16:23:00 what's happened? 16:23:01 `run cd / && ls 16:23:02 bin \ dev \ etc \ home \ lib \ lib64 \ proc \ tmp \ usr 16:23:04 `cat poetry.txt 16:23:05 A Poem -- Roses are red, violets are free. In Soviet Russia, you love me. 16:23:19 MissPiggy: I accidentally removed the mislabeled most vital file on gregor's hard drive 16:23:23 Happy? 16:23:30 `cat porn.jpg 16:23:30 This is a file. 16:23:33 Wait, guys 16:23:38 Is there no UNDELETE on this system 16:23:42 COME ON, EVEN MS-DOS HAD IT! 16:24:21 Is this ext2 or ext3 16:24:37 alise, see /msg 16:24:40 asiekierka shut up 16:25:00 `run mount | tr '\n' '|' 16:25:01 rootfs on / type rootfs (rw)|none on /sys type sysfs (rw,nosuid,nodev,noexec)|none on /proc type proc (rw,nosuid,nodev,noexec)|udev on /dev type tmpfs (rw,size=10240k,mode=755)|/dev/disk/by-label/PRGMRDISK1 on / type ext3 (rw,errors=remount-ro,data=ordered)|tmpfs on /lib/init/rw type tmpfs (rw,nosuid,mode=755)|tmpfs on /dev/shm type 16:25:34 `cal 16:25:35 March 2010 \ Sa Su Mo Tu We Th Fr \ 1 2 3 4 5 \ 6 7 8 9 10 11 12 \ 13 14 15 16 17 18 19 \ 20 21 22 23 24 25 26 \ 27 28 29 30 31 \ 16:26:11 `run mount | tail -n 2 | tr '\n' '|' 16:26:12 proc on /var/chroots/egobot/proc type proc (rw)|/sys on /var/chroots/egobot/sys type sysfs (rw)| 16:26:17 hm 16:26:28 asiekierka: gregor's an op here you know 16:26:35 you'll prolly be banned he doesn't like people abusing hackego 16:26:40 What? 16:26:41 especially when it affects the host machine 16:26:46 You told me i can do one destructive change 16:26:50 You didn't specify anything else! 16:26:53 ` head /dev/urandom > sex.jpg 16:26:54 yes, i didn't think you'd try that one. 16:26:54 No output. 16:27:01 Actually I assumed it's YOUR bot 16:27:03 /usually/ people have some kind of discretion 16:27:03 `run head /dev/urandom > sex.jpg 16:27:04 No output. 16:27:09 asiekierka: no. i do have root access to it though 16:27:10 alise what happened 16:27:12 `cat sex.jpg 16:27:13 No output. 16:27:55 * Sgeo_ decides to end asiekierka's suffering 16:27:59 noooo! 16:28:00 Yay! 16:28:04 `yes 16:28:05 y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y 16:28:05 Wait 16:28:05 Sgeo_: don't restore the files 16:28:07 what does that mean? 16:28:10 it'll break it 16:28:14 the file is symbolicly defined 16:28:17 asiekierka, you fail at reading 16:28:20 ie a pointer to the host machiine 16:28:21 that is what alise means 16:28:29 so you'll overwrite the drive if you write to hentai again 16:28:30 `echo $PATH 16:28:31 $PATH 16:28:35 -_- 16:28:38 oh, deleting a symlink isn't particularly problematic 16:28:39 Ok, n/m 16:28:40 `echo "$PATH" 16:28:41 "$PATH" 16:28:49 scarf: but it's not a symlink 16:28:53 it's a fileptr3 16:28:56 i.e. an ext3+ field 16:29:07 containing symbolic references to the filesystem it's embedded in 16:29:08 scarf, what about the magic symlinks in /proc that points to inodes or something? 16:29:11 `sudo apt-get install cowsay 16:29:12 No output. 16:29:19 rather than actual files. (if the file is open but deleted) 16:29:20 `ls 16:29:21 bin \ cube2.base64 \ cube2.jpg \ help.txt \ huh \ paste \ poetry.txt \ porn.jpg \ quotes \ sex.jpg \ share \ test.sh \ tmpdir.20271 16:29:25 Uh-oh 16:29:28 AnMaster: /proc has a separate filesystem just for that 16:29:30 FAMILY FRIENDLY FILTTtttt---*ban* 16:29:34 `cowsay lol 16:29:35 No output. 16:29:42 asiekierka: stop being a jerk 16:29:42 What's a cowsay? 16:29:45 scarf, true. But it is somewhat confusing. The semantics I mean 16:29:56 * Sgeo_ needs to attend to clothing stuff now >.> 16:30:02 F³?# 16:30:06 s/#// 16:30:15 scarf: yeah 16:30:45 alise, ext3+? 16:30:46 F₃₌ too, though 16:30:55 for the equalising properties in the host fileptr3 16:31:10 `run file sex.jpg 16:31:11 sex.jpg: empty 16:31:14 hentai was F₃⁺, so the safety features are off (so that a direct pointer could be made) 16:31:18 alise, see /msg 16:31:25 AnMaster: that fix won't work 16:31:32 !bf ,[.,]!`run X='!bf ,[.,]!`run' echo $X "X='$X'" 16:31:44 F₃⁺s don't have the Ωγ-base property 16:31:45 umm, EgoBot? 16:31:52 scarf: shit, it must have overwritten that segment too 16:31:53 alise, no, but upgrade to ext4+. Or did they rename it ext5 yet? 16:32:02 EgoBot is jealous that everyone hax0rs HackEgo but nobody touches EgoBot 16:32:05 AnMaster: well i wouldn't do anything without Gregor telling me to 16:32:07 ...unlike asiekierka 16:32:08 * alise sighs 16:32:17 * asiekierka shgis 16:32:30 i think he's being a real dick not taking this seriously 16:32:36 any objections to me just banning him now? 16:32:36 who? 16:32:38 asiekierka 16:32:50 No 16:32:51 alise, you have op nowdays? 16:32:54 yeah 16:32:57 I should be scared 16:33:00 hehe 16:33:00 assqueerska 16:33:08 i'd only actually use it against real abusers, like asiekierka 16:33:13 suuure 16:33:32 * alise sets a ban on asiekierka (Egregious abuse of EgoBot; ^expiry=never) 16:33:39 asiekierka: just thought you might like to know 16:33:42 EgoBot? 16:33:46 everything since I said it wasn't protected 16:33:50 including by other people 16:33:54 is a complete crock of shit 16:33:56 alise, s/EgoBot/HackBot/ 16:33:59 Your gullibility knows no limits! 16:34:04 alise: HackEgo, not EgoBot 16:34:10 oerjan: hey since when do you have ops 16:34:14 and mine :D 16:34:18 scarf: that was the last piece of the gullibility puzzle duh 16:34:21 I beleive anything ehird says 16:34:23 lol 16:34:23 My notice to asiekierka wasn't a crock of shit 16:34:40 Sgeo_: what did you say 16:34:47 /notice asiekierka You are aware that porn.jpg isn't actually a necessary file, right? 16:34:48 (note: depending on the answer i may not not lynch you) 16:34:57 Yes, it is 16:34:58 ok, I won't not not lynch you 16:35:02 Don't lie, Sgeo_ 16:36:21 Sgeo_, he didn't read what was actually said above, he only have himself to blame for that 16:36:45 we can't ask asiekierka how much he actually believed now because of course he'll say none of it :) 16:36:51 I did 16:36:54 In fact, I did 16:36:59 Until Sgeo told m 16:37:00 e 16:37:02 mhm 16:37:03 But hey, this was fun! 16:37:07 Let's have such a party again! >D: 16:37:08 err, >:D 16:37:10 `help 16:37:11 Runs arbitrary code in GNU/Linux. Type "`", or "`run " for full shell commands. "`fetch " downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert " can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/ 16:37:13 porn.jpg wasn't the thing we were talking about 16:37:14 hentai was. 16:37:16 so thar 16:37:24 asiekierka, obviously you didn't read the help output 16:37:29 anyway, gawd, has asiekierka contributed a single worthwhile thing apart from DOBELA? 16:37:32 No 16:37:34 Never 16:37:34 even then it was a huge mess until Deewiant almost rewrote it 16:37:41 I also contributed lameness 16:37:42 idiocy 16:37:45 laziness 16:37:50 Have I contributed a single worthwhile thing? 16:37:53 Yes 16:37:55 alise, hey, I also helped with it. Like pointing out some flaws early on 16:37:58 `ls 16:37:59 bin \ cube2.base64 \ cube2.jpg \ help.txt \ huh \ paste \ poetry.txt \ quotes \ sex.jpg \ share \ test.sh \ tmpdir.21507 16:38:05 `cat sex.jpg 16:38:05 This file is absolutely fake. 16:38:11 `rm sex.jpg 16:38:11 No output. 16:38:20 Sgeo_: Sure, you're not an idiot 16:38:20 alise, iirc it was me who first made it able to do anything close to computations :P 16:38:44 Hm, thanks 16:38:49 alise, but yes Deewiant did the main fixup of DOBELA 16:38:54 alise, PSOX! 16:38:59 * AnMaster runs 16:39:00 PSOX lol 16:39:14 pee socks 16:39:26 alise: FEAR ME 16:39:31 oerjan, on what grounds? 16:39:34 oerjan: no but since when :D 16:39:35 AnMaster: he's an op 16:39:38 AnMaster: You mean 16:39:43 Deewiant did over nine thousand fixups of DOBELA 16:39:48 all over a few chat sessions 16:39:48 oh, so he is 16:39:49 all lasting hours 16:40:02 lowercase chi is a pretty letter 16:40:13 asiekierka, I haven't contradicted that have I? 16:40:19 alise, paste it 16:40:22 I don't remember it 16:40:25 χ 16:40:27 χ(n) 16:40:29 ah that one 16:40:38 alise, looks like a "bendy" X here 16:40:41 :P 16:40:42 yes 16:40:44 and it's lower 16:40:59 alise, try to write lower case sigma on paper using a pencil 16:41:04 -!- nasa has joined. 16:41:07 why? 16:41:17 wait, maybe not that one 16:41:26 * AnMaster tries to remember which one was the hard one 16:41:28 nasa 16:41:45 it had lots of hooks in it's or such 16:41:50 Hey, can I try `reboot 16:42:08 alise, ah, lower case xi 16:42:18 alise, ξ that is 16:42:25 alise: i'm not sure exactly when, because i wasn't told when it happened :D 16:42:31 Can I? 16:42:33 asiekierka, have fun 16:42:34 oerjan: you weren't an op a year ago i think 16:42:37 ok 16:42:38 `run reboot 16:42:40 No output. 16:42:43 `run shutdown 16:42:44 No output. 16:42:46 Rage! :( 16:42:48 alise, indeed. in 1998 he wasn't I bet? 16:42:51 fish sandwich 16:42:58 ξ ZI 16:42:59 alise, since I don't think this channel was registered then 16:43:01 X = KAI 16:43:09 MissPiggy, ? 16:43:09 --- 16:43:09 c= 16:43:09 c= 16:43:10 , 16:43:11 Good morrow. 16:43:12 written bitch 16:43:21 χ(G) CHROMATIC NUMBER 16:43:27 alise, doesn't look close at all 16:43:33 Ooh, sparkly. 16:43:41 cpressey, what? 16:43:55 alise: i think it's not many weeks ago 16:43:57 MissPiggy, I'm not aware of what that is about? 16:44:05 LOOK UP CHROMATIC NUMBER 16:44:11 -ChanServ- 5 oerjan +votsriRfA [modified 1 week, 2 days, 19:04:07 ago] 16:44:25 MissPiggy, ah graph colouring 16:44:33 hi nasa by the way; apologies for the offtopicness 16:44:35 oerjan: so only years and years before i'm an op then :D 16:44:39 -!- nasa has quit (Quit: Leaving). 16:44:44 TOO LATE 16:45:00 bbl making food 16:45:12 making NUDE 16:45:58 alise: you'll have to develop some maturity first *duck* 16:46:01 thank you 16:46:11 i hear that happens around these ages 16:47:18 -!- MizardX has quit (Quit: reboot). 16:48:25 i'm kidding, i'm not mature either. 16:48:32 ban me 16:48:54 watch youtube 16:49:03 um that would mean finding out how this chanserv stuff actually _works_ 16:49:30 * Sgeo_ should not be reading Station V3 right now 16:49:32 oerjan: you don't need to mess with chanserv that much to ban someone 16:49:35 /cs op #esoteric 16:49:40 is enough to op yourself on the channel 16:49:44 ok 16:49:46 (or /msg chanserv if your client doesn't do /cs) 16:49:52 then you can just use the normal commands for kicking and banning 16:49:59 -!- ChanServ has set channel mode: +o oerjan. 16:50:00 and deop yourself when you're finished 16:50:05 Uh oh 16:50:11 no wait oerjan 16:50:12 -!- daef has quit (Ping timeout: 258 seconds). 16:50:13 /op alise 16:50:14 DO IT NOW 16:50:23 lol 16:50:27 -!- oerjan has set channel mode: +b *!*alise@95.145.65.*. 16:51:19 ah power 16:51:24 PUDDING 16:51:24 ... (more info) 16:52:35 -!- oerjan has set channel mode: -b *!*alise@95.145.65.*. 16:53:17 -!- alise has joined. 16:53:20 Sexier than envelopes 16:53:29 alise: heh, you weren't even on the server about 4 seconds before you joined 16:53:36 yeah i messed up my client a lil 16:53:51 scarf: can you explain the turkey bomb semantics you thought of that make it tc? 16:53:56 ooh wait 16:53:58 I can just ask cpressey! 16:54:00 alise: I'm not sure I can remember 16:54:05 not that he'll have any clue :) 16:54:15 -!- oerjan has set channel mode: -o oerjan. 16:54:17 but basically, the bomb gets passed after each person's done with their evaluating 16:54:35 and there are two commands that involve passing the bomb, you treat those as gotos (one forwards, one back) 16:54:57 then, all you need is for the three-trit operation to be something like shortcircuiting maximum 16:55:02 most of the types are actually completely useless, aren't they? 16:55:10 and to have a defined order of evaluation for everything else 16:55:14 and probably 16:55:24 although you need quite a few just for usable infinite memory 16:55:25 (shortcircuiting maximum? Does that even make sense?) 16:55:33 alise: yes, on numbers with a limited range 16:55:33 * Sgeo_ also needs to shave today :/ 16:55:43 oh, it wasn't shortcircuiting maximum of all three 16:55:44 scarf: also, NOMENCLATURE is basically like a hash table isn't it? except of turkey bomb stuff 16:55:48 instead, the operation takes two at random 16:55:58 alise: vaguely, except it's tied to variable names 16:56:02 right 16:56:03 sort of like a typeglob in Perl 16:56:07 it's useless isn't it 16:56:17 you expect me to figure that out from memory? 16:56:22 :D 16:56:30 i'm not exactly sure how to define PUDDING 16:56:48 either in terms of everything that's in it, or in terms of everything that isn't in it 16:56:52 you have two types of PUDDING, really 16:57:07 ... (more info) 16:57:11 But they are indistinguishable. 16:57:13 also, you have to allow for removing AMICEDs into a pudding, that actually adds to the amount of state they have 16:57:15 They are both unknowable, and have infinite size. 16:57:21 scarf: what XD 16:57:29 alise: AMICEDs have negative size 16:57:32 yes 16:57:35 well, no 16:57:37 the only time you can use them at all is inside PUDDINGs, I think 16:57:40 er, yes 16:57:51 are you thinking of the right pooding 16:57:55 a PUDDING that /doesn't/ contain a specified AMICED, therefore, contains information 16:58:06 PUDDING!!!!! 16:58:07 Attempts to deduce the existance of a HUMIDOR in the given PUDDING. The player to the left of the player holding the TURKEY BOMB has to keep drinking continuously while the computer/referee does their deducing. 16:58:07 GARNISH PUDDING 16:58:07 Convolutes the PUDDING with recent context drawn from the program. The player holding the TURKEY BOMB must pass it off. 16:58:07 IMAGINE PUDDING, PUDDING! 16:58:07 Returns a NOMENCLATURE indicating all the variables unchanged between two PUDDINGs. 16:58:08 alise: whichever type has the WHEREFORE AIN'T operator 16:58:08 -!- MizardX has joined. 16:58:09 are the only pudding operations 16:58:16 so yes, wrong type 16:58:17 scarf: oh ofc 16:58:19 am I thinking HUMIDOR? 16:58:41 no it is pudding 16:58:46 so the base pudding represents everything 16:58:48 ALL BUT removes something from it 16:58:55 WHEREFORE ART EXPR 16:58:55 Returns a PUDDING indicating the entire metaphysical nature of EXPR. 16:58:57 No fucking idea. 16:59:01 nor me 16:59:17 that operation is, at least, relatively easy to define 16:59:20 just hard to implement 16:59:20 ooh, I know 16:59:34 the entire metaphysical nature of an expression is the representation of that expression in the implementation 16:59:37 embedded into turkey bomb itself 17:00:07 remember to have the turkey bomb be a reference to itself; that's one of the easiest things to do in the entire impl, but possible to forget about 17:00:43 Uh, really? 17:00:54 Anyway, turkeyBomb = [turkeyBomb] suffices in Haskell, I think. 17:01:06 It's a distinct value from turkeyBomb, but you can get to turkeyBomb through it. 17:01:08 you need to also do it at the type level 17:01:16 Unfortunately, it doesn't type 17:01:19 scarf: mm 17:01:22 yep, that's the issue 17:01:30 you want a TurkeyBomb type which is a reference to a TurkeyBomb 17:01:37 in C++, at least, you can do it with casts 17:01:37 Here's what I basically did: 17:01:58 struct turkey_bomb { 17:01:58 struct turkey_bomb *turkey_bomb; 17:01:58 } turkey_bomb = {&turkey_bomb}; 17:02:07 A struct with one element is isomorphic to just that element, so... 17:02:28 yep, that's another possibility 17:02:39 the worst thing is that you need type tags 17:02:41 so everything has to be a struct 17:02:49 ugh 17:02:49 but that helps in this case 17:02:54 if we have struct { tag foo; the real value } 17:02:59 how are you going to deal with the types which are smaller than a pointer? 17:03:02 then our tagged turkey bomb isn't even relying on struct { x } isomorphing 17:03:08 scarf: padding, obviously 17:03:23 hmm, my start at a C++ impl had padding, but only where necessary 17:03:27 and the padding didn't contain values 17:03:40 hmm; PUDDINGs represent everything minus some things 17:03:51 so we should represent the turkey bomb universe as an infinite (uncountably so?) data structure 17:03:51 PUDDING 17:03:52 I mean, if a type's defined to contain two thirds of a bit plus half a trit, you can't have it as large as 4 bytes just to stick a pointer in there 17:03:59 then turkey bomb can be the index to turkey bomb in the universe 17:04:52 you also need to keep track of who owns the turkey bomb at any given moment, but that can be done separately 17:05:04 (and I'm not entirely sure what to do when it explodes) 17:06:27 a BI_IT is 1.14666... bits i think 17:06:39 so store it as a char and use the 2 least significant bits 17:07:22 what's more fun is trying to combine multiple BI_ITs back into values 17:08:12 a BI_IT has a range of ~2.6696797083400683 values, apparently 17:08:22 not entirely sure what that implies, but 17:09:55 06:42:26 and when I stepped out of the bus when I arrived, and looked back at the bus I was in 17:09:59 06:42:30 it said "not in traffic" 17:10:17 theory: it was an extra (rush hour) bus going only to your end station 17:10:47 happens occasionally in trondheim 17:11:04 [17:03] alise: hmm; PUDDINGs represent everything minus some things 17:11:05 [17:03] alise: so we should represent the turkey bomb universe as an infinite (uncountably so?) data structure 17:11:05 [17:03] alise: then turkey bomb can be the index to turkey bomb in the universe 17:11:09 scarf: does ^ sound promising to you? 17:11:41 -!- kar8nga has joined. 17:12:01 In the drinking game, whenever an INDECENT GRUBSTEAK is involved in an expression, everyone starts chanting "BANG BANG BANG!!!" until the player holding the TURKEY BOMB either finishes their drink and starts another, or falls down (in which case someone who hasn't been playing should take him or her home). 17:12:05 this is like forcing evaluation isn't it? 17:12:09 finishing drink = totally evaluating 17:12:15 falls down = fails somehow 17:12:21 BANG BANG BANG!!! is, I don't know, outpu 17:12:22 t 17:13:41 THIS IS NOT COPYRIGHT INFRIGNEMENT, IT WAS MADE BY PEOPLE 17:13:41 ... (more info) 17:14:47 with negative amiced ... I wonder if typeOf (NEGATIVE_AMICED ...) = AMICED or NEGATIVE_AMICED; it doesn't really matter except for size 17:14:59 and for size we want to consider the size if it were an AMICED; i.e. the negated size of the NEGATIVE_AMICED 17:15:09 ooooooooooo 17:15:29 GRUBSTEAK 17:15:29 A fraction whose numerator is a perfect square and whose denominator is a prime number. 17:15:30 No bigger than necessary. 17:15:30 IMPROPER GRUBSTEAK 17:15:30 A GRUBSTEAK whose denominator is less than the square root of the numerator. 17:15:30 Same as GRUBSTEAK. 17:15:54 scarf: the former seems to suggest we need a dynamic representation of grubsteaks. and are grubsteaks that satisfy the improper condition improper grubsteaks? so really improper is just a property of grubsteaks... 17:16:10 indecent grubsteaks are totally different though 17:16:12 yes, I think so to 17:16:50 *too 17:18:04 then I will have types GRUBSTEAK and IMPROPER_GRUBSTEAK, and have typeOf decide based on the contents of the GRUBSTEAK value 17:19:43 * alise wonders if WITH GUSTO is a different type 17:19:50 the size is different and all the operations must be different 17:19:52 so yes, I think 17:23:14 -!- Deewiant has quit (Ping timeout: 246 seconds). 17:24:47 * alise tries to think of how to represent 1 and 2/3rds of a bit 17:24:58 `ls 17:24:59 bin \ cube2.base64 \ cube2.jpg \ help.txt \ huh \ paste \ poetry.txt \ quotes \ share \ test.sh \ tmpdir.22864 17:25:07 What happened to the porn? 17:25:08 :( 17:25:19 scarf: I demand you think of a representation! 17:25:59 alise: I just used a separate bit for the bit and the trit part, but I think that's cheating; it does give the right values if you ignore the fractional bits of padding, though 17:26:00 Sgeo_: polish censorship 17:26:05 You mean the tri-F 17:26:11 scarf: Those bits of padding are important! 17:26:14 (the fractional bits of padding show up as various /combinations/ of bi_its leading to weird results) 17:26:15 Take a wild guess what it means 17:26:32 Family Friendly F*cking? 17:26:37 Close 17:26:38 Family Friendly Filter 17:26:42 But both work just as well 17:27:23 -!- oerjan has quit (Quit: Fucking Friendly Families For Fun). 17:27:32 -!- Deewiant has joined. 17:29:22 newtype FiveOverThreeBits = FiveOverThreeBits Int 17:29:22 WFM 17:30:05 ?????????? 17:31:23 there's a slight issue in that i think the maximum value 5/3 bits can represent may be irrational 17:31:47 cube root of 32 anyway 17:33:47 * Sgeo_ is a Station V3 addict 17:35:25 scarf: who would have thought implementing turkey bomb correctly would require computable reals? 17:35:32 heh 17:36:06 ah 17:36:55 scarf: 0 ≤ x³ ≤ 32 where x is a BI_IT 17:37:18 sure it's not < 32? 17:37:20 erm 17:37:23 scarf: 0 ≤ (x+1)³ ≤ 32 where x is a BI_IT 17:37:34 now you have the /lower/ bound wrong 17:37:44 :D 17:37:50 well, it's 5/3 bits 17:37:55 2^(5/3) = 3√32 17:38:01 yep 17:38:08 2^2 = 4 17:38:18 2 bits can store 0 to 3 17:38:33 2 bits is more than enough, 1 is not enough 17:38:33 so 0 ≤ x ≤ 3 17:38:46 so what is it actually 17:38:52 if we want the regular zero to n inclusive 17:39:00 0 < (x+1)³ ≤ 32? 17:40:40 it doesn't actually say BI_ITs are unsigned, acutally 17:40:41 *actually 17:40:45 cpressey: are BI_ITs signed or unsigned? :P 17:44:10 scarf: heh, NEGATIVE_AMICEDs are (6*log(10))/(7*log(2)) bits big 17:44:30 that's bound to simplify 17:44:39 alise: Yes. 17:44:40 Om 17:45:21 scarf: not that expression, no: http://www.wolframalpha.com/input/?i=6%2F7+*+log%282%2C10%29&a=*FunClash.log-_*Log.Log10- 17:45:24 * Sgeo_ could easily stay here reading Station V3 all day instead of going to school 17:45:29 but 0 <= x < 2^((6*log(10))/(7*log(2))), yes, probably. 17:45:38 Sgeo_: So do so! :P 17:45:44 yeah 17:45:48 0 <= x < 10^(6/7) 17:46:47 ... wait, that's obvious. Uh, I think. 17:46:56 yes, it is obvious 17:47:04 yeah i'm not thinking all too clearly atm 17:47:06 :( 17:48:31 theory: it was an extra (rush hour) bus going only to your end station <-- except I don't live at an end station 17:48:32 -!- asiekierka has quit (Ping timeout: 240 seconds). 17:48:55 scarf: so the condition is 0 <= x^7 < 10^6 17:49:20 alise: you keep assuming there are an integral number of possibilities 17:49:21 * oerjan has quit (Quit: Fucking Friendly Families For Fun) <-- interesting quit message 17:49:30 I'm surprised that scarf didn't comment upon it 17:49:34 figari 17:49:46 AnMaster: I missed it, but I will continue to not comment on it 17:50:09 scarf: howso 17:50:53 cpressey, so what about that spec before? 17:51:03 I don't remember you commenting any further on that early draft 17:51:13 scarf, you just commented on it by replying to me there 17:51:16 :P 17:51:34 AnMaster: not directly 17:51:37 alise: context? 17:51:45 "alise: you keep assuming there are an integral number of possibilities" 17:51:56 scarf, indirectly also counts 17:52:01 alise: because you're working out the largest integer that fits in x 17:52:43 right you are. i should have slept more last night :| 17:52:51 especially when doing turkey bomb 17:53:09 I think n > 0 && n^3 < 32 is still sound though 17:53:18 argh, fucking haskell 17:53:22 AnMaster: Sorry, I probably won't be able to get around to it soon... too much real work. 17:53:23 I can't do exponentials with a Rational 17:53:25 because it's not a Floating 17:53:31 cpressey, okay 17:54:05 cpressey, I expect there will be updates to it, so better check in irc logs for last version when you *do* decide to read it. 17:55:18 scarf: it seems to work 17:55:22 so i'm not sure I follow 17:55:31 meh, never mind 17:55:38 noo don't say that 17:57:36 argh, fucking haskell <-- I never, ever, thought I would hear you say that 17:57:51 alise, anyway, it does sound like a strange restriction 17:58:48 data SixSeventhsOfADecimalDigit = SixSeventhsOfADecimalDigit Rational deriving (Show) 17:58:49 negativeAmicedGuts :: Rational -> Maybe SixSeventhsOfADecimalDigit 17:58:49 negativeAmicedGuts n 17:58:49 | n >= 0 && n^7 < 10^6 = Just (SixSeventhsOfADecimalDigit n) 17:58:49 | otherwise = Nothing 17:58:54 what are you doing??????? 17:59:07 for integer exponents it is trivial to implement. Somewhat more involved for non-integers. 17:59:17 MissPiggy: implementing TURKEY BOMB 17:59:18 MissPiggy: failing to implement TURKEY BOMB 17:59:19 http://catseye.tc/projects/turkeyb/doc/turkeyb.html 17:59:22 scarf: oi 17:59:27 scarf: i'm not failing! 17:59:34 you will be eventually 17:59:51 alise, what about ZILCH? 18:00:00 data Value = ZILCH | ... 18:00:12 just like data () = (), it carries 0 bits of information and can be omitted everywhere 18:00:22 more fun going on over at SCO, btw; Darl McBride, the former CEO, is now trying to buy some of its stuff off it 18:00:37 -!- lament has quit (Ping timeout: 268 seconds). 18:00:53 huh 18:01:04 scarf, any patents? 18:01:07 I guess 18:01:11 -!- lament has joined. 18:01:15 AnMaster: no patents 18:01:25 the bizarre list I wrote in-channel earlier was a list of some of it, though 18:01:42 * AnMaster looks for that list 18:01:47 where? 18:01:51 05:14:57 snowplow, grassroots, mobile OE, MPSEB Indian utility co. meter reading, Delhi traffic police, Citibank demo documentation, Disprax (fake screen shots only), Jackson Builders, Aston Villa, NREGA employment census, smnp hardware monitoring, NDPL power, PG Call Home 18:01:56 They own Delhi traffic police? 18:01:56 I think it's a list of companies that they gave demos to, or something 18:01:57 ah 18:02:05 And Aston Villa! 18:02:12 alise: ownership seems unlikely, it's more likely to be some sort of joint projec 18:02:14 *project 18:02:26 "TRIVIA CONCERNING type 18:02:26 Three references: one to an object of the named type, two to TRIVIA objects." 18:02:30 Two to trivia objects of... any type? 18:02:31 Okay. 18:02:32 although, it wouldn't surprise me if Darl thought SCO did learn all that list 18:02:41 *did own 18:02:55 the funny thing is, he's offering $35,000, and some people are trying to outbid him 18:03:01 ... 18:03:08 grassroots? 18:03:11 as in, the lawns? 18:03:13 my theory is that he's trying to drain $35,000 from the open-source community by getting them to buy a worthless list of random 18:03:13 | TRIVIA_CONCERNING Value Value Value 18:03:13 I'd put type information in the Haskell types but I bet TURKEY BOMB can subvert even that heroic effort. 18:03:17 alise: again, who knows 18:03:20 scarf, ? 18:03:28 * AnMaster: 18:03:29 worth a try 18:03:35 no, wait, can't 18:03:36 nm 18:03:37 scarf, ? 18:03:46 ah 18:03:50 "Exactly fifteen bytes, no exceptions." 18:03:53 it was a correction 18:03:53 AnMaster: well, if Darl wants to buy it so badly, it must be valuable, right? 18:03:53 Well that's not going to be workable. 18:04:03 scarf, why not? 18:04:06 alise: I used some padding to manage that in C++ 18:04:17 just wait until you reach the quarter-of-a-reference type 18:04:24 scarf, what? you implemented turky bomb in C? 18:04:26 err C++ 18:04:27 No, I mean, Haskell doesn't really have the concept of sizes of its values, so... 18:04:29 that was trivial on my machine with 32-bit pointers, but other bits were harder 18:04:30 AnMaster: he tried 18:04:33 alise: no, I just started 18:04:37 ah 18:04:40 I had most of the declarations there, but no code 18:04:42 *AnMaster: 18:04:45 stupid tab-complete 18:04:50 I'd rewrite in C, but I want rationals 18:05:18 alise, note that pudding and "HUMIDOR BUILT UP FROM type, type & type " both have infinite size 18:05:30 AnMaster: you can do them lazily 18:05:39 oh good point 18:06:09 also not 1/4 of a reference 18:06:10 it is: 18:06:14 "A quarter of the platform-defined pointer size." 18:06:42 alise, and how did you implement AMICED? 18:06:45 PUDDING is just a reference to everything in a humidor; or, a reference to the entire universe sans one value (so you can just store that value); 18:06:57 or, a reference to the entire metaphysical nature of an expression 18:07:07 AnMaster: make the value be a NEGATIVE_AMICED 18:07:10 like scarf did 18:07:11 AnMaster: AMICED is relatively easy; the weird bitwidth is harder than the actual negativeness 18:07:22 scarf, oh? 18:07:24 hm 18:07:40 it hardly matters anyway, as I don't know of any actual way to create a value of type AMICED 18:07:57 according to the rules, you can just specify a variable and its value to declare one 18:08:09 but what's the syntax for an AMICED literal? 18:08:26 clearly the actual bits and trits are embedded in the source 18:08:31 since we only have bits trits are represented as bits 18:08:39 so the following 5/3 bits of the source code are the value 18:08:42 obviously 18:08:52 why would you need syntax? you have the inherent syntax of character arrays right in front of you 18:09:02 now clearly amiced is negative 18:09:08 so the /preceeding/ 5/3 bits are the value 18:09:11 hey, you know how, say, bz2 treats the data as a stream of bits, rather than octets? 18:09:14 so if it was 18:09:16 x = y 18:09:18 it'd be 18:09:31 could you treat the program as a purenumber, and take fractional bits from that? 18:09:32 x =y= 18:09:33 or something 18:09:49 where the latter is 2/3rds 18:09:50 of a = 18:09:53 and the former is 1/3rd 18:09:54 I think 18:09:57 no esiy 18:09:58 no wait 18:09:59 that's bytes 18:10:01 you get the idea 18:10:11 scarf: eh? 18:10:27 alise: say, you have a huge purenumber 18:10:33 scarf, " AnMaster: AMICED is relatively easy; the weird bitwidth is harder than the actual negativeness" 18:10:34 ANHAHA 18:10:35 but actually 18:10:36 you can extract one bit from it by dividing by 2 and taking the remainder 18:10:40 " Negative six sevenths of a decimal digit. " 18:10:46 and one trit by dividing by 3 and taking the remainder 18:10:46 what the heck is a decimal digit here 18:10:50 how wide is it 18:10:57 AnMaster: ln(10)/ln(2) bits 18:11:00 scarf, is it stored as BCD perhaps 18:11:02 just like normal decimal digits 18:11:02 that is my guess 18:11:07 and no, it's stored as decimal 18:11:08 scarf: oh very good idea 18:11:15 let's do it 18:11:18 alise: this may even extend to fractional bits 18:11:20 scarf: collaborate? or am i just too crazy for you 18:11:23 but I'm not sure 18:11:39 alise: I would, but I need to get some RL work done by three days ago, only nobody's noticed I haven't done it yet 18:11:52 get going then! 18:11:53 divide by 5/3*2 and take the remainder obvs 18:12:11 yep, ofc 18:12:28 and an AMICED literal would presumably /add/ info to the source 18:12:38 whatever info gets added, that's the value that the AMICED doesn't contain 18:12:41 it's all falling into place 18:12:46 hmm no 18:12:57 i think "The following -n bits" = "The preceding n bits" 18:13:01 alise: I don't 18:13:02 but maybe you're right 18:13:13 so you specify every 5/3 bit value apart from the one it contains? 18:13:17 rer 18:13:18 er 18:13:20 doesn't contain 18:13:21 so to speak 18:13:49 think about it this way: a literal bit has 2 possible values, 0 and 1; code containing a literal bit, you have 2 possibilities for the code giving 2 values for the bit, and 1 possibility for the rest of the code, assuming all you change is that bit 18:14:09 `addquote and an AMICED literal would presumably /add/ info to the source whatever info gets added, that's the value that the AMICED doesn't contain it's all falling into place 18:14:10 135| and an AMICED literal would presumably /add/ info to the source whatever info gets added, that's the value that the AMICED doesn't contain it's all falling into place 18:14:13 now, a literal negative bit has half a possible value; code containing a literal for that, you have 1 possibility for the code but 2 possibilities for the rest of the code 18:14:20 scarf: so, wait 18:14:36 bi_its can't just be integers 18:14:40 because the fractional portion gets wasted 18:14:43 so are they rationals? reals? 18:14:46 it's not specified 18:14:49 I give up understanding this 18:14:52 ieee floats? 18:14:54 better to avoid going insane 18:15:01 I guess a real 18:15:05 alise: they're something with... a fractional number of possibilities 18:15:05 since we're dividing the program 18:15:09 no, wait, rationals 18:15:18 scarf: yes, but we're dividing by a fractional number and taking the remainder 18:15:28 hmm wait 18:15:35 alise, fmod()? 18:15:35 a negative amiced isn't a rational number of bits 18:15:40 so it /has/ to be reals 18:15:40 :-D 18:15:51 so we need a computable real system to do all this 18:16:10 which means we're losing some nice things... for instance equality won't terminate if the two reals aren't equal 18:16:17 alise, what is the bit width of a decmial digit? 18:16:24 meh, TURKEY BOMB doesn't have equality, maybe that's why 18:16:31 AnMaster: log(10)/log(2) 18:16:42 hm okay 18:16:45 AnMaster: you can even implement this, using 10-valued logic 18:16:47 just it would be a real pain 18:16:52 scarf: but turkey bomb doesn't specify ascii or whatever 18:16:53 and you have to do it in hardware not software 18:16:56 so how do we construct the program number? 18:17:13 scarf, you could emulate it in software? By writing a 10-valued-logic-emulator? 18:17:13 oooh! 18:17:18 alise: presumably, as an expression, Mathematica-style 18:17:26 obviously the character set has exactly the number of characters that are used in the monospace portions of the spec 18:17:40 scarf: no, i mean, we don't actually have a defined way to make the text into a number 18:17:44 anyway, I see something neat about, one program containing a negative-bit literal contains 1/2 a possibility for that literal * 2 for the rest of the program 18:17:47 scarf, after all you can emulate ternary systems... 18:17:56 alise: syntax is the least of my worries here :) 18:17:59 obviously the character set has exactly the number of characters that are used in the monospace portions of the spec, and they are ordered by order of occurence (not from CLIN_TON; that's part of the older-human-written stuff) 18:18:05 no? :P 18:18:11 AnMaster: yep, that involves wasting a bit of memory, though, and TURKEY BOMB dislikes padding 18:18:19 alise: maybe 18:18:32 scarf, well write it in VHDL then! 18:18:37 or something 18:18:42 what is TURKEY BOBM 18:18:42 scarf: oh, wait, the article is in ASCII, and it says it originates from the late 90s 18:18:49 and ASCII would have been used then 18:19:02 so clearly, as they wouldn't DARE reinterpreting the monospace things from the spec for... some reason, it's ASCII 18:19:19 MissPiggy: take a turkey (preferably, a real, live turkey), or a time bomb (preferably, a real, live time bomb); preferably both, /securely/ strapped together 18:19:29 oh great, we're going to have control characters in literals 18:19:50 MissPiggy: ...and DRINK! 18:20:54 You know, when you consider both the premise of TURKEY BOMB, and the fact that FBBI stands for "Flaming Bovine Befunge Interpreter"... I'll bet the SPCA hates me. 18:21:08 cpressey: now ANSWER OUR INQUIRIES!!!! 18:21:13 :P 18:21:31 hmm, OTOH, the TURKEY BOMB spec does seem to imply particular representations for operators 18:21:32 Heh. Where do you people get the idea that ambiguities in a spec can be resolved by asking the person who wrote it, anyway? 18:21:44 Or the idea that I wrote the TURKEY BOMB spec? 18:21:50 cpressey: SHUT UP 18:21:51 oh you didn't? 18:21:56 I FOUND IT 18:21:59 so, is the valuestream separate from the operators themselves? 18:22:04 "Discovered mysteriously one day amidst a pile of Byte magazines in a second-hand book store by Chris Pressey" 18:22:06 yep, I believe you 18:22:07 At the bottom of a birdcage 18:22:17 The Byte magazines were in the birdcage? 18:22:19 anyway, I wasn't under the impression that cpressey had any idea how TURKEY BOMB worked 18:22:20 Or just the spec? 18:22:26 Was there anything else in the birdcage if the latter? 18:22:39 alise: The whole bookstore was in the birdcage. 18:22:45 Ah. 18:22:48 It was a very large birdcage. 18:23:01 Or a very small bookstore. 18:23:29 You know, when you consider both the premise of TURKEY BOMB, and the fact that FBBI stands for "Flaming Bovine Befunge Interpreter"... I'll bet the SPCA hates me. <-- SPCA? 18:23:29 \ ADVISORY ADVISORY ADVISORY ADVISORY 18:23:29 Returns the type thus pointed to. Also, the player holding the TURKEY BOMB must pass it off. 18:23:35 scarf: so types are values 18:23:38 but what are their types? 18:23:52 well, the type of a TURKEY BOMB is obvious enough 18:24:09 yes, TURKEY BOMB::Type 18:24:14 anyway, I always assumed that \ returned a value, and "type" was a typo for "value" there 18:24:17 but if \, an _expression_ 18:24:22 can return a type as a value 18:24:24 and every value has a type 18:24:26 then types must have a type 18:24:28 good catch 18:24:33 alise, or perhaps the bird cage was larger on the inside? 18:24:34 but there ain't no type specified for types 18:24:37 maybe types themselves are untyped 18:24:38 so it was both 18:24:42 scarf: the most turkey bomb way to resolve this is obviously that not all values have typers 18:24:44 *types 18:24:48 nothing really implies that TURKEY BOMB is strictly typed 18:25:05 AnMaster: No, that's a police box. 18:25:06 well, the spec implies it more or less everywhere but doesn't actually /say/ it, so we should ignore the implication 18:25:15 alise, yeah, it was disguised! 18:25:19 anyway, this means you can have references to types 18:25:22 it was a bird cage all along! 18:25:30 given that an ADVISORY is a quarter of a reference 18:25:31 $ BI_IT BI_IT BI_IT BI_IT BI_IT BI_IT $ 18:25:32 Attempt to make a GRUBSTEAK. 18:25:32 TRIVIA Y EXPR Y TRIVIA 18:25:32 Attempt to make a TRIVIA. 18:25:33 TRIVIA BI_IT // 18:25:33 Attempt to connect a TRIVIA to itself and return it. The BI_IT argument is required, but serves no detectably useful purpose (hardcore followers of the drinking game tradition insist that it's for good luck.) 18:25:33 Note how the first two don't actually say they RETURN anything... 18:25:46 scarf: Well, no, you can have a quarter of a reference to a type. 18:25:53 There's just one operation that takes four and dereferences their inaccessible combination. 18:26:18 If there is a type with no value, then you cannot construct an ADVISORY PERTAINING TO type. 18:26:24 ADVISORY PERTAINING TO type 18:26:24 A quarter of a reference to a object of the given type. 18:26:38 You can't get to the quarter-referenced value, just its type. 18:26:46 But you need a value to construct one in the first place. 18:26:52 So you have quarter-references to types that have values. 18:27:05 I still think it's a typo, the spec makes no sense otherwise 18:27:09 well, even less sense than it normally would 18:27:15 GARNISH PUDDING 18:27:15 Convolutes the PUDDING with recent context drawn from the program. The player holding the TURKEY BOMB must pass it off. 18:27:17 maybe cpressey copied it incorrectly from the magazine? 18:27:21 no magazine 18:27:25 the spec was discovered amongst magazines 18:27:27 oh 18:27:30 Since a pudding is basically a universe, 18:27:32 well, copied it incorrectly anyway 18:27:34 convoluting it with recent context 18:27:36 = 18:27:42 did cpressey find the spec typed on paper, or in electronic form? 18:27:42 updating the values it has to be their current values 18:27:47 but recent, that doesn't mean most-recent, surely? 18:27:47 it would help to know if it implies ASCII or not 18:27:56 perhaps it's the turn before this one's state 18:28:01 cpressey: ^ 18:28:09 this question is about your transcription :| 18:28:10 scarf, EBCDIC? 18:28:17 scarf, or baudot? 18:28:27 * Sgeo_ is about to post something stupid to Facebook 18:28:34 Sgeo_: So don't. 18:28:36 Sgeo_, well, don't do that then 18:28:44 NOMENCLATURE % GRUBSTEAK GRUBSTEAK 18:28:44 Perform iterative cypher transformation of set of names. 18:28:49 Clearly the grubsteaks define the cypher. 18:28:54 GRUBSTEAK 18:28:55 A fraction whose numerator is a perfect square and whose denominator is a prime number. 18:28:56 Fractran, anyone? 18:29:01 alise, doesn't the nomenclature? 18:29:10 NOMENCLATURE 18:29:11 A set of variable names, defined by an EBNF expression that must contain at least one { } (repeated 0 or more times) term. 18:29:11 No. 18:29:14 AnMaster: you are thinking in completely the wrong terms here 18:29:20 NOMENCLATURE is a bunch of variable names with some sort of EBNF something. 18:29:29 alise, pretty sure nomenclature is a crypto term, isn't it? 18:29:30 "Defined"? Howso, I wonder? Maybe that is the syntax. 18:29:41 something related to transposing cryptos 18:29:50 So {a} would be the variable names "","a","aa",... 18:30:09 or something 18:30:21 some problems are referred to as mental exercise 18:30:34 turkey bomb is mental tv-watching 18:30:43 it ruins your mind!!! 18:30:48 ag irn 18:30:50 fub bip 18:30:55 PUDDING!!!!! 18:30:55 "So far, in every college class I've taken, there's always been at least one atheist." 18:31:08 Sgeo_: yeah that's a pretty significantly retarded thing to say 18:31:38 alise http://www.youtube.com/watch?v=2PyXLNL-eHI 18:31:44 Sgeo_: are you yourself an atheist? or does someone else you know to be an atheist take every class you take? or something else? 18:31:52 he's an atheist but he's pretty stupid about it in practice 18:31:56 alise, it was handwritten. Do you believe that? 18:32:04 * Sgeo_ removes it 18:32:07 (note: I am counteracting the holier than thou/insulting balance) 18:32:11 who's an atheist??? 18:32:17 AMOUGST US??? 18:32:18 cpressey: Yes. (No) 18:32:25 Now what's this about a pigeonhole principle for atheists in college classes? 18:32:41 cpressey, with a quill pen? 18:32:51 Bye all 18:32:57 And now, it's time for WHO'S AN ATHEIST, the game show where we hunt down and kill anyone who doesn't worship the father, the son and the holy spirit! *theme music plays* 18:32:59 AnMaster: If only to keep the bird-related theme up, yes. 18:33:11 cpressey, ooh I didn't think that far 18:33:11 Gregor: Don't forget... Robert! 18:33:17 atheists are more likely to go to college, because they need surrogates like higher education to fill their life with a semblance of meaning. 18:33:22 Groogger :D 18:33:28 cpressey: What natural language was it written in, exactly? :P 18:33:51 lament: Oh you scoundrel. 18:33:52 alise: In truth I cannot be certain... 18:34:03 cpressey, how comes? 18:34:09 AnMaster: he was playing TURKEY BOMB at the time 18:34:11 with LSD 18:34:17 oh 18:34:18 (he hadn't seen the warning yet, as he hadn't found the spec yet) 18:34:41 alise, I thought we were in for some LP Lovecraft thingy to explain it 18:34:42 :/ 18:35:04 The spec /is/ /Cthulhu/. 18:35:11 Oh how I wish it was merely LSD! In fact, it was extract of shoggoth. 18:35:16 NASTY stuff. 18:36:25 So did your finding of the TURKEY BOMB spec cause a lasuac violation that caused you to find it in the first place? 18:37:05 you mean LSD is not extract of shoggoth? 18:37:40 lament, no it is lysergic acid diethylamide 18:37:51 i really want to kill you AnMaster 18:38:03 It's Lucy in the Sky with Diamonds. 18:38:04 alise, why? 18:38:09 Gregor, haha 18:38:10 it's complicated 18:38:43 alise, if it changes things I had to google it, didn't remember what the name was exactly 18:39:40 no i guessed you googled it. 18:40:47 if it helps I remembered it was acid diethylamide 18:41:40 Gregor, actually Beatles got that wrong. It's Lisa not Lucy. She lied about her name 18:42:18 "lucy in the sky with diamonds" sounds like a weird variation of Cluedo 18:42:25 Lucy O'Donnell Vodden (1963 - 22 September 2009) was the inspiration for the song. 18:42:28 scarf: :D 18:42:36 scarf, heh 18:42:51 OK 18:42:59 Gregor: KO 18:43:05 We officially must make a version of Clue in which "Lucy in the Sky with Diamonds" is a valid guess. 18:43:15 * pikhq could've sworn atheism was... Common... 18:43:18 bbiab 18:43:32 Gregor: ah, I forgot that you Americans had a different name for it 18:43:33 pikhq: WHAT WOULD YOU KNOW JEBUS-HUGGER 18:43:52 alise: Many things. 18:43:59 scarf: Probably just a consequence of trademark vagaries. 18:44:04 too bad your system is inconsistent 18:44:08 YOU KNOW EVERYTHING AND NOTHING 18:44:11 This was shortly before John Carpenter and I travelled to FSU to steal the Kappa Upsilon Chi's mascot at the time, which was, as fate would have it, a turkey. 18:44:17 alise: How very Xen of you. 18:44:33 cpressey: You forgot "...on acid". 18:44:36 ... That was an odd misspelling. 18:44:43 alise: I am an expert on these matters. 18:45:08 cpressey: Or are you? 18:45:22 pikhq, Z and X are next to each other 18:45:26 Alas alise, not as much as fungot. 18:45:26 cpressey: athame: the ki-rin is a member of the great tail sweeping from side to side, like a child, opened them and brought them many gifts of food and clothing for their relentless persecution of their victims. 18:45:27 on qwerty at least 18:45:37 [[Kappa Upsilon Chi ("Keeping Under Christ", Kappa Chi, or ΚΥΧ)]] 18:45:37 that's a really irritating abuse of the greek alphabet 18:45:54 ugh 18:45:59 I like that last fungot quote 18:45:59 alise, eta beta pi 18:46:00 scarf: always sweep the floor. only the beginning of lactation in ewes and was a single, savage thrust of her sisters to have been born on the take. 18:46:07 alise, and that's from Discworld 18:46:08 Excellent Buttock Pissing 18:46:14 alise, no no 18:46:22 "eat a better pie" 18:46:24 why aren't there any fraternities with three of the same letter? 18:46:25 eta beta pi 18:46:28 see? 18:46:29 Xi Xi Xi 18:46:37 alise, because that sounds silly 18:46:41 EXACTLY 18:46:54 Welcome to Kappa Kappa Kappa! 18:47:13 scarf, I think I saw someone riding a tame ki-rin on NAO once 18:47:23 I have no idea how that happened 18:47:30 Digamma Digamma Digamma! 18:47:59 AnMaster: blessed figurine of a ki-rin 18:48:02 I've done it myself 18:48:12 scarf, ah of course... 18:48:13 DIGAMMA DIGAMMA DIGAMMA DIGAMMA DIGAMMA DIGAMMA DIGAMMA upsilon upsilon upsilon upsilon upsilon upsilon upsilon upsilon upsilon upsilon upsilon upsilon 18:48:14 get it hur hur? 18:48:24 s/upsilon/UPSILON/g 18:48:31 alise, developers developers? 18:48:44 but what is the UPSILON? 18:49:04 Beta Beta Beta Beta (Badger Badger ...) 18:49:05 In the geek alphabet: ϜϜϜϜϜϜϜΥΥΥΥΥΥΥΥΥΥΥΥ 18:49:19 Lowercased: ϝϝϝϝϝϝϝυυυυυυυυυυυυ 18:49:24 har 18:49:28 (Well, the obsolete greek alphabet.) 18:50:55 alise, old greek you mean? 18:51:03 No, that's your mom. 18:51:08 that's still used in math 18:51:24 alise, that's what your dad said! 18:51:31 (now go figure that one out!) 18:51:42 (also he said it to your mom) 18:52:03 I'm my mother's dad's son's brother's father's granddaughter's cousin. 18:52:28 I'm my cousin. 18:52:43 (= I'm my self.) 18:52:59 har 18:53:09 pikhq isn't lying though :) 18:53:28 alise, impossible? 18:53:40 No. 18:53:42 Not with inbreeding. 18:53:43 how 18:53:51 maybe 18:53:55 pikhq comes from a real good Southern family. 18:54:01 not sure how you would need to inbreed for that 18:54:11 pikhq: Explain to the peon! 18:55:03 peon? 18:55:30 alise, that is what your mom said (referring to herself) 18:55:39 I'm my mother. 18:55:45 `quote unborn 18:55:46 56| im my dads unborn sister 18:55:47 * cpressey drowns in feathers. 18:55:53 AnMaster: Cousins married a few generations back. Twice. 18:55:57 cpressey, why? 18:56:01 Making me my own 7th and 9th cousin. 18:56:10 pikhq, oh not first cousin at least 18:56:19 because that shouldn't be possible 18:56:20 pikhq: That's not something you're supposed to admit on the tuberwebs :P 18:56:39 cpressey: noo, don't mention Feather 18:56:43 I have real work to do atm! 18:56:48 scarf, oooh feather! 18:56:49 That being said, we're all cousins ... even if you have sex with a sheep, you're having sex with your cousin. 18:56:50 My family tree is... Hard. 18:57:05 scarf: add the feather operations to turkey bomb 18:57:06 scarf, a pity can't show intonation 18:57:09 I have 2 parents, 4 grandparents, 8 great-grandparents, and so forth. Therefore I have an infinite number of ancestors. 18:57:11 the way I thought it... 18:57:22 Gregor: We're all part of the same big family :D 18:57:30 Freaking Hatfields. 18:57:46 cpressey: You know, the Bible tells us of all the inbreeding that went on in Genesis. 18:58:02 cpressey, ooh, do that as proof by induction 18:58:06 alise: If it wasn't for all that Genesis inbreeding, we'd all be living for five hundred years. 18:58:08 alise: Actually, it's pretty mum on most of the inbreeding that had to happen. 18:58:09 AnMaster: He did. 18:58:12 alise: That inbreeding broke our genes. 18:58:16 alise: Indeed. That's how those cats all lives to be 800 years old. 18:58:17 Gregor: 900 was the top no? 18:58:18 900 or so 18:58:18 alise, not a formal such proof 18:58:20 s/s/d/ 18:58:22 Well, had to happen according to given accounts. 18:58:38 alise: Yuh. 18:58:54 I'm not entirely sure how biblical literalists... Rationalise that. 18:59:08 Oh, wait. 18:59:12 They don't. 18:59:19 cpressey, what cats? 18:59:29 I'm not entirely sure how biblical interpretists-and-ignoring-a-large-portion-of-it-anyway... justify believing in /any/ of it. 18:59:31 Oh, wait. 18:59:32 They don't. 18:59:34 hmm, are there any biblical literalists that take the lolcat version as the version that literally happened? 18:59:38 Well, some of the weirder ones do (rationalize it.) 18:59:58 I'm pretty sure talking about the /relative rationality/ of Christians is ridiculous,. 18:59:58 -!- Slereah has joined. 19:00:01 *ridiculous. 19:00:16 scarf, what, there is a lolcat version of the bible?? 19:00:26 http://www.lolcatbible.com/ 19:00:27 Warning: Awful 19:00:41 AnMaster: apparently yes 19:00:57 http://www.lolcatbible.com/index.php?title=Revelation_1 19:01:09 Interestingly, this makes exactly the same amount of sense as the actual Revelation. 19:01:18 alise, yeargh 19:01:19 indeed 19:01:25 -!- mrbug has joined. 19:01:32 alise: Somehow, that doesn't surprise me. 19:02:10 http://www.lolcatbible.com/index.php?title=Revelation_22 19:02:11 hahaha 19:02:32 "He which testifieth these things saith, Surely I come quickly. Amen. Even so, come, Lord Jesus." 19:02:33 --> 19:02:34 "BRB" 19:03:38 scarf: wait, from what do you derive that turkey bomb actually has variables? 19:03:45 NOMENCLATUREs are related to them 19:03:52 but I see nothing about actually using variables in expressions or anything 19:04:12 alise: there's a comment somewhere else that anyone can create a variable by saying its name and value 19:04:18 at any time, including while someone else is calculating 19:04:21 "Variables are also declared by any player spontaneously standing up and shouting out a name that hasn't been mentioned yet, and a type to go with it, at any time." 19:04:26 scarf: but that doesn't mean you can actually use them in expressions 19:04:27 oh, name and type 19:04:31 only that they exist, in some vague sense 19:04:34 alise: no, I wasn't assuming that 19:04:39 :D 19:04:43 for all I know, they exist just to mess with NOMENCLATUREs 19:05:06 then, wait 19:05:11 it doesn't say there are literals, either 19:05:17 so every expression /must be infinitely nested/ 19:05:36 it also says the spec is possibly incomplete 19:05:38 doesn't it 19:05:48 so you shouldn't assume that it is complete 19:05:48 I think there probably are literals, or how could you play it as a drinking game? 19:05:50 AnMaster: that's why we're making such ridiculous assumptions 19:06:02 alise, ? 19:06:07 scarf: holding literal BI_ITs and PUDDINGS etc up 19:06:13 AnMaster: because it's incomplete 19:06:19 ah 19:06:38 BI_IT BI_IT BI_IT ! BI_IT BI_IT BI_IT 19:06:42 I assume those are values 19:06:46 Yes. 19:06:47 to be inserted there 19:06:52 then there must be literals 19:06:52 scarf: but yes there probably are literals 19:07:09 unless that is actually the literal phrase "BI_IT BI_IT BI_IT ! BI_IT BI_IT BI_IT" 19:07:16 AnMaster: or just nested expressions 19:07:25 scarf: so obviously a @HUMIDOR type of pudding "contains" all the values within it 19:07:46 a regular pudding-but-with-exclusion contains all values in the entire turkey bomb universe (possible values or only used values?) except for one 19:08:09 a metaphysical-pudding contains the interpreter's representation of EXPR, represented somehow as multiple values inside the pudding 19:08:58 alise, except which one? 19:09:20 ALL BUT EXPR 19:09:20 Returns a PUDDING indicating everything but EXPR. 19:09:22 That one. 19:09:30 ALL BUT EXPR 19:09:30 Returns a PUDDING indicating everything but EXPR. 19:09:31 WHEREFORE ART EXPR 19:09:31 ah 19:09:31 Returns a PUDDING indicating the entire metaphysical nature of EXPR. 19:09:31 WHEREFORE AIN'T EXPR 19:09:32 Short for WHEREFORE ART ALL BUT EXPR. 19:09:32 WHEREFOREN'T EXPR 19:09:32 Short for ALL BUT WHEREFORE ART EXPR. 19:09:48 WHEREFORE AIN'T EXPR = A PUDDING indicating the metaphysical nature of (a PUDDING indicating everything but EXPR). 19:10:07 WHEREFOREN'T EXPR = A PUDDING indicating everything but (a PUDDING indicating the metaphysical nature of EXPR). 19:10:15 hm 19:10:17 those other ones 19:10:21 are somewhat trcky 19:10:35 HUMIDOR.type 19:10:35 Retrieves an element from a HUMIDOR. 19:10:45 scarf: is type a placeholder in the syntax or literally "type" do you think? 19:10:53 no idea 19:10:53 they don't seem to use type, so i guess it's literal 19:11:10 HUMIDOR BUILT UP FROM type, type & type 19:11:10 A structure containing three other types, specified at compile-time, all of which must be different, one of which must be another HUMIDOR. 19:11:10 Infinite. 19:11:11 HYBRID OBTAINED BY COMBINING type & type [WITH GUSTO] 19:11:11 A unified structure containing data from two different types, specified at compile time. 19:11:13 HYBRID.type 19:11:13 Casts a HYBRID to either type it was defined with. 19:11:14 HUMIDOR.type 19:11:14 Retrieves an element from a HUMIDOR. 19:11:15 it does use type indeed 19:11:23 -!- tombom has quit (Ping timeout: 246 seconds). 19:11:32 wait, HUMIDOR /types/ are infinite 19:11:44 HUMIDOR BUILT UP FROM ZILCH, ZILCH & HUMIDOR BUILT UPF ROM ZILCH, ZILCH & ... 19:11:48 yes 19:12:11 wasn't there a discussion about implementing it sometime during 2007? 19:13:02 well, I wish you best of luck 19:13:16 i really do believe I need scarf to do it though :P 19:13:25 alise, why? 19:13:35 because it needs 10-valued logic? 19:13:38 and he knows VHDL? 19:13:45 no, because he has thought about it a lot and has lots of answers 19:13:52 plus a potentially TC model of execution (it doesn't actually have one) 19:13:56 (you have to derive it from the drinking game) 19:13:58 why on earth has he spent time on it 19:14:04 he was trying to implement it 19:14:08 why 19:14:09 :/ 19:14:15 look at the channel name 19:14:17 look at our wiki 19:14:18 then GTFO 19:14:26 lol 19:14:33 alise, yeah but I think it is impossible 19:14:36 turkey bomb, like everest, was there. 19:14:38 AnMaster: no, it isn't 19:14:45 almost certainly not 19:14:51 very well then 19:15:12 alise, implement it in intercal then 19:15:21 why? 19:15:30 alise, it will be next to impossible 19:15:36 even if not actually impossible 19:15:44 malbolge if that isn't hard enough 19:16:20 no 19:16:24 you are greatly overestimating its difficulty 19:17:24 I DONt know what TURKEY BONB is 19:18:16 MissPiggy, ffs... see link above 19:18:24 ? 19:18:35 MissPiggy, /lastlog http:// 19:18:44 look for one containing turkeyb 19:18:59 MissPiggy, now I'm not going to give you any more info than that 19:19:07 yck 19:19:14 was that "thanks"? 19:19:18 no 19:19:22 then what was it 19:19:57 MissPiggy, also it is on the esolang wiki I bet 19:20:07 unlike AnMaster, I am not a blithering jerk 19:20:08 http://catseye.tc/projects/turkeyb/doc/turkeyb.html 19:20:11 loll 19:20:15 alise, hey you do that to me 19:20:21 so stop claiming not being a jerk 19:20:25 yes because i like irritating you :) 19:20:41 Animated from the cover of an edition of New Scientist magazine, February 1977. 19:20:44 ... (more info) 19:20:45 alise, discrimination 19:20:47 (less info) 19:20:48 Mrs Smith teaches the blind baby to see 19:20:56 AnMaster: yes. 19:21:03 MissPiggy, also http://esoteric.voxelperfect.net/wiki/TURKEY_BOMB 19:24:39 -!- tombom has joined. 19:29:06 It would be nice if my language was a language to describe values of certain types, and have certain values be programs that result in values of certain types, maybe. 19:29:14 Although in a total language, I guess they're the same. 19:34:27 alise: Hey, that sounds like my language. 19:35:00 "My language", said by Chris Pressey; one of the most ambiguous statements ever made? 19:35:07 lol 19:35:56 OK, OK! The "for real" language I want to do but never will. 19:36:29 But what do you mean by "total language"? 19:36:36 Well, Lisp fits the description, if you say that there's only one type. 19:36:42 (Which lets you model untyped languages.) 19:37:02 cpressey: A total language is a functional programming language without general recursion; structural recursion is instead substituted. All programs halt. 19:37:08 total implies that every expression has a result (no exceptions, no infinite loops) 19:37:19 (You can have TCness, though, with coinductive data types and even emulate non-totality with a partiality monad. It's Complicated.) 19:37:43 Basically, e.g. Natural in a regular FP lang is Natural | Bottom 19:37:44 well, a strictly total language can't be TC 19:37:48 OK, that's what I thought. 19:37:49 Bottom = nontermination, 19:37:56 errors, etc. 19:37:58 but you can have an almost-total language which is 19:38:01 cpressey: It's good because you can adorn it with dependently-typed languages, and get a constructivist proof system. 19:38:08 Types = propositions; values = proofs. 19:38:23 Otherwise "let x = x in x" is a proof of anything, which is rubbish. And if you have dependent types and non-totality, typechecking can loop forever. 19:38:34 scarf: Well, it's the magic of codata. 19:39:08 For a lot of stuff I'm happy with merely primitive recursive. I wrote a totality-checker for Scheme programs in Scheme once. I wrote it in PR style and it passed its own check. 19:39:32 It's sufficient for anything w/ a partiality monad etc. 19:39:41 If you've used Agda, Coq, or Epigram; they're all total. 19:39:49 Most of the time you don't even notice. 19:41:19 cpressey: oh, a program to see if a program is primitive-recursive or not? 19:41:28 -!- tombom_ has joined. 19:41:44 scarf: Well, written in a certain PR style, yes. there are probably PR programs that it wouldn't see 19:41:50 ah, ok 19:42:10 But if it's not PR, it would tell you that. 19:42:34 The "pure" way to do it is to define one inductive data type and base them all on that. 19:42:45 data Mu f = Mu (f (Mu f)), basically. 19:42:52 And then a function to deconstruct such types recursively. 19:42:57 Plus no actual recursion facility. 19:43:14 hmm, ⅋ is a great punctuation mark 19:43:35 -!- tombom has quit (Ping timeout: 246 seconds). 19:43:52 alise: I have ... different ideas about type systems. 19:44:41 cpressey: That's nice. 19:44:45 cpressey: Such as? :P 19:45:03 I mean, type checking is a kind of static analysis, and all static analyses (incl but not limited to type checking) can be expressed in terms of abstract interpretation. 19:45:14 Well... yes. But that's at a metalevel to what I'm talking about. 19:45:19 Are you familiar with dependent types at all? 19:45:31 Well, kind of. Yes, passingly familar. 19:46:12 Yeah. The difference in perspective when you just add dependent types is immense. 19:47:03 it's like you're on acid while everyone else is merely drunk. 19:47:41 hmm, one thing I'd like to do someday is to redo Splint, but properly 19:47:51 lament: EXACTLY 19:47:54 as in, actually working, and with a set of types rich enough to actually describe interesting programs 19:48:00 Well, what I'm getting at is, I'd like to design a language without any particular type system, and let different type systems be "plugged in", by allowing them to be written in some kind of annotation language for abstract interpretation. 19:48:24 That would in no way preclude the use of dependent types... 19:49:11 That sounds fun. 19:50:05 alise, what is your opinion on ipad btw? Now that it isn't as new any longer, and there are (maybe) some reviews out there 19:50:06 Not too different from just saying "Here's my dynamically typed language, y'all write your own linters for it plz k thx", except a little less hands-off 19:50:44 AnMaster: It's probably good at what it does and it's damn flashy, but what it does isn't what I want to do. 19:51:07 alise, Right. Someone linked me this image (related to this): http://thismight.be/offensive/uploads/2010/03/01/image/288902_Think%20different.jpg 19:51:19 not actually offensive (as the url would indicate) 19:51:27 well, maybe to apple fanboys 19:51:29 :D 19:51:31 totally SFW though 19:51:32 iSpace 19:51:39 alise, ooh that would be the next step 19:51:49 a totally flat 2d plane underneath all of space itself 19:51:53 then... 19:51:55 iCube 19:51:57 then... 19:51:58 iUniverse 19:52:01 (filling in the corners) 19:52:11 heh 19:55:25 bbl 19:55:32 newtype Mu f = Mu (f (Mu f)) 19:55:32 data Nat nat = Succ nat 19:55:32 instance (Show nat) => Show (Nat nat) where 19:55:33 show (Succ n) = "Succ (" ++ show n ++ ")" 19:55:33 instance (Show (f (Mu f))) => Show (Mu f) where 19:55:33 show (Mu x) = show x 19:55:36 You wouldn't believe it, but this actually works. 19:55:46 There are some other cool methods for termination analysis that have come out of term-rewriting research. I wanted to play with those in Scheme, but I balked at reworking the Scheme semantics into a rewrite system... 19:55:47 does it need flexible instance 19:55:54 yes; and undecidable instances too 19:56:03 Mutually recursive typeclass instances. Fuck yeah. 19:56:42 -!- mrbug has left (?). 20:01:10 I totally do not get it. Well, not totally. Actually I get the idea. Just not the mechanics. 20:01:44 Then you have to realize, I'm living in a code-world where people still say things like d["%s_%s" % (a, b)] = c 20:02:04 I thought that sort of stuff died with Perl 4 20:03:18 that isn't legal Perl4, surely? 20:03:45 Ah, no, in Perl 4 it would be $d{"$a_$b"} = $c; 20:03:53 But the IDEA is Perl 4-ish. 20:04:21 Because when you can't store a dictionary inside a dictionary, well, you compose keys. 20:04:21 you'd write it $d{$a,$b} = $c 20:04:31 where, instead of using _ to compose the keys, it uses the value of $; 20:04:42 which is by default ASCII 28, on the basis that you probably weren't using it for anything else 20:04:59 That would be better style, then. 20:05:07 brb 20:05:09 typical nowadays would be $d{$a}->{$b} = $c 20:05:19 and unlike C, you don't have to set up all the subhashes, they autovivify 20:05:29 so messing with $; is rather deprecated nowadays 20:07:25 scarf: That's exactly my point, or at least part of it. This is Python, where there is no such restriction against storing dicts in dicts. Why are keys being computed? Makes them hell to cross-reference. 20:07:39 cpressey: ah 20:08:29 Sort of my higher point was, in this world, decidable *anything* is a dream -- dependent types are too much to hope for... 20:13:27 otoh, when the type system is C++'s, ... I'm sure that's hardly better... 20:16:07 cpressey: I'm a pessimist, so of course I realise that the only way any of this can work is in my grand unified redesign of all of computing. A pessimistic idealist. What a thing. 20:16:32 alise: hey, I'm a /cynical/ idealist, which is even more ridiculous 20:16:57 what 20:17:01 dependent types are real 20:17:13 I used to be a pessimist idealist, and I probably should have stayed one. 20:17:27 cpressey: what are you now? 20:17:32 MissPiggy: he never denied that 20:17:38 Well, maybe I still am, at heart. 20:18:08 scarf: Now I'm up a certain creek without a paddle :) 20:18:26 Hey, there's that pessimism coming back! 20:19:45 MissPiggy: Yes, in case there was any confusion, I meant only that people *using* dependent types in 90%+ of the industry is a pipe dream. 20:20:24 o_o 20:20:39 uh oh, here it comes 20:20:47 I think BF compilers should use dependent types 20:20:56 and dependent type inference 20:21:07 in order to work out what a program is actually doing, rather than just peephole-optimising 20:22:37 But peephole optimisation is so very *easy*! 20:23:06 yep 20:24:11 Does this connection still work? 20:24:45 Ah, apparently it does... 20:26:48 either that or you're imagining things 20:27:54 dhcpcd took a SIGKILL and then was restarted... 20:28:46 alise, what is tex for dot product? 20:28:53 \cdot? 20:28:56 ah thanks 20:29:21 alise, and normal product? 20:29:31 \times... 20:29:35 oh ffs 20:29:39 I'm too tired for this 20:29:43 :D 20:29:48 alise, wait isn't that vector product? 20:29:56 I mean, a non-vector related scalar product 20:30:28 er... you mean juxtaposition? 20:30:32 what? 20:30:39 i'm trying to account for your tiredness here :) 20:30:42 The scalar product of three and three is nine :P 20:30:59 alise, you know: scalar*scalar→scalar vector*vector→scalar and vector*vector→vector 20:31:03 three different products 20:31:12 I need three different symbols to not confuse things 20:31:14 product of a and b is ab 20:31:19 where a and b are scalars 20:31:21 :P 20:31:28 alise, yeah and product of |a| and |b| is unreadable 20:31:34 tough shit 20:31:36 |a||b| 20:31:36 use \times 20:31:41 use the word "times" 20:31:45 even http://en.wikipedia.org/wiki/Dot_product says |a| |b| 20:31:49 just deal with it 20:31:52 cpressey, NO the point of this is unicode 20:32:12 if you want add some spacing 20:33:08 hm that could work 20:36:18 Silly alternatives: use the explicit a^T b for the dot product, then you can use the center-dot for multiplying scalars if you really need something there. Or the angle brackets for general inner product in place of the dot product, and the same thing. 20:37:48 Personally I think the spacing of \left|a\right| \left|b\right| at least here is readable enough; there's a natural gap in-between, and the |s are closer to the letters than other |s. 20:38:14 If you just write it as "|a||b|" then it won't look right, of course. 20:38:25 |a|b| 20:38:37 plus :: Nat -> Nat -> Nat 20:38:37 plus x = rec (\_ -> x) (\_ z -> suc z) 20:38:37 times :: Nat -> Nat -> Nat 20:38:38 times x = rec (\_ -> zero) (\_ z -> plus x z) 20:38:38 Fuck yeah, structural recursion 20:38:43 fuck YOU! 20:38:49 what 20:40:02 That was an offer, not an insult. 20:41:03 > fact (suc (suc (suc zero))) 20:41:03 (Zig ()) 20:41:04 NOT SO SUCCESSFUL 20:42:08 faftstawfpa4d 20:42:23 alise what should I code 20:42:50 a core total, dependently-typed language! like I'm doing except in Haskell! 20:58:40 I give up. 20:58:47 This code makes my soul bleed. 20:58:58 cpressey: Eat some functionality. 20:59:04 It has good warming properties. 20:59:10 Mmm. 20:59:34 * cpressey listens to some KMFDM 21:00:47 -!- lament has quit (Ping timeout: 256 seconds). 21:01:42 -!- lament has joined. 21:02:07 -!- Oranjer has joined. 21:09:33 I really need to unify my uber-simple-auto-optimised-language-with-everything-as-one-basic-structure-that-acts-as-values-as-types-and-certain-values-being-programs omegalanguage with my total-functional-dependent-types-oh-me-oh-my omegalanguage. 21:10:43 well, hypothetically, how would someone unify chinese and english? 21:11:09 They wouldn't. But natural languages are mishmash and already extant; these are mere concepts that I can bend to my will. 21:11:34 I guess I could use directed graphs for the former - a graph is the type of the graph of the same structure, the type of something like 42 is the ur-element of natural numbers; either 0 or 1+1+1+1... = infinity. 21:11:49 The type of a list of as would be [urelement a] 21:11:55 Although lists would just be sugar over graphs 21:11:59 In fact, everything would be. 21:13:13 Is there a unicode character that's like => without the =? 21:13:21 Just a very small straight two lines and then > 21:14:18 http://www.symbols.com/encyclopedia/04/index.html 21:14:26 it might be here, beats me 21:14:41 Nope. 21:15:11 What do you call a digraph with named arcs? 21:15:23 Well, just arcs with an extra piece of info attached to them that no other arc with the same head shares, I guess. 21:16:47 I don't know if it has a particular name. 21:17:08 annotated, heh 21:17:21 A digraph with labelled edges, is actually what I'd probably call iot 21:17:23 it 21:18:17 Methinks it is the fundamental structure of everything. 21:18:41 A list is 'head -> x. 'tail -> another list. A vector is 0,1,2,... -> element. 21:18:59 A natural is 'pred -> another natural or 'zero. 21:19:09 Long live ASCII bells 21:19:16 (now how many got beeped by that?) 21:19:29 Not i. 21:19:30 *Not I 21:19:35 well I didn't expect that 21:19:55 An unordered set has no annotations. 21:20:03 So I guess the annotation is optional? But that seems rubbish. 21:20:23 ASCII bells, ASCII bells, ASCII all the way 21:20:26 Also, I still need to define a way to reduce graphs to do computation. 21:20:31 Oh what fun it is to ASCII all your console friends awaaaay 21:20:35 "A weighted digraph is a digraph with weights assigned for its arcs" 21:20:57 But they're not weights, just arbitrary tags 21:21:35 -!- SimonRC has quit (Ping timeout: 265 seconds). 21:21:54 -!- coppro has joined. 21:22:12 -!- MigoMipo has quit (Quit: When two people dream the same dream, it ceases to be an illusion. KVIrc 3.4.2 Shiny http://www.kvirc.net). 21:23:16 arbitrary usually means optional, sometimes 21:24:05 totalAge 'people :> {+ ::> people ? 'age} 21:24:09 I think. 21:25:46 http://pastie.org/848777.txt?key=ohkyy1lvvdow7fk8lxaraq 21:25:49 A drawing of that graphs. 21:25:50 *graph 21:26:54 alise: Whatever you're talking about is reminding me of Category Theory. 21:27:04 Arrows, arrows, arrows. 21:27:04 Category theory is fun but not what I'm on about. 21:27:09 It's just graphs. 21:27:12 god damn it people irritate me so much 21:27:13 Arrows? 21:27:25 Basically I'm trying to figure out the most elegant way of doing computation with graphs on graphs. 21:27:37 arrows and monads! 21:27:57 Graphs. 21:27:57 alise: I like the eodermdrome method, but there's probably another 21:28:49 scarf: yes, well, mine's meant to be not so ridiculous :) 21:28:58 also, eodermdrome doesn't have cyclic graphs does it? 21:29:06 abcda 21:29:10 or is that not what you mean? 21:29:24 maybe it is 21:29:29 i mean graphs with internal cycles 21:29:30 hmm 21:29:31 tree :: {'left :> {'left :> 1; 'right :> 3}; 'right :> {'left :> 2; 'right :> 4}} 21:29:38 so i need anonymous nodes 21:29:43 wha tthe fuck isthat 21:29:46 so why not have /all/ nodes be anonymous :D 21:30:39 All nodes are anonymous; there is one distinguished node with named arc to all the "named" nodes, and those arcs contain the names. 21:31:35 Kind of hard to follow where alise wants to go with this design because the design space is so large... 21:31:51 I've only seen anonymous nodes in a semantic web language, where the creator wishes to "reify" an edge--that is, treat it as a node 21:31:59 Basically, the idea is that your entire (operating) system, including every single thing you care about, is one gigantic graph-like of some sort. 21:32:03 Oranjer: RDF? yeah 21:32:09 N3 makes that quite easy 21:32:53 cpressey: Including all the relevant functions/drivers/programs (stored not as machine code ofc), their data, your data... 21:33:14 alise: Arrows? Graphs? Names. 21:33:17 So we need a graph structure that has some property related to the vague notion of "nesting", otherwise our namespaces will get clogged down. 21:33:30 And we need anonymous nodes, because naming every single piece of a nested data structure is ridiculous. 21:33:50 An acyclic graph is probably unworkable, as it means we have no pointers. 21:33:55 Pointers. 21:34:03 cpressey: wat 21:34:27 Every single piece of data is named, isn't it? Otherwise how do you get to it? 21:34:46 And by "named" I mean, there's pointers to it, from other pieces of data. Maybe not explicit ones. 21:35:00 -!- SimonRC has joined. 21:35:13 Good point. 21:35:39 Yes, you are right. Annotated arcs are the same thing as non-anonymous nodes. 21:35:40 Trying to put it into words... there are graphs everywhere already, but they're... what's the word? Latent? 21:35:57 And there are many, many ways to make them explicit. 21:36:49 Oh what fun it is to ASCII all your console friends awaaaay <-- so you got beeped? 21:36:57 AnMaster: No 21:36:59 ah 21:37:39 -!- Libster has joined. 21:39:39 http://pastie.org/848803.txt?key=bybdg9fl0pwv1vrtme9q 21:39:54 Annotated arcs and anonymous nodes: cancelling each other out since today. 21:40:12 alise shut up 21:40:18 ?? 21:40:19 No? 21:40:21 stop taking your anger out on me 21:40:29 what 21:40:38 I haven't even mentioned your name in... forever? 21:40:40 I think it's actually my anger. alise is just borrowing it 21:40:46 AnMaster: My reasonably raw bip bouncer log doesn't show any suspicious ASCII characters in your long-live comment. I guess it's possible the log is filtered, but are you sure freenode's +c filtering doesn't remove ^G too? 21:40:49 MissPiggy: no but seriously what? 21:41:32 fizzie, maybe it does since the ircd switch 21:41:35 if so how sad 21:42:11 -!- Libster has left (?). 21:46:42 AnMaster: http://dev.freenode.net/ircd-seven/browser/include/inline/stringops.h#L57 21:46:59 fizzie, sad 21:47:31 Hmm. 21:47:48 cpressey: My graphs have ceased entirely to be graphs at all, because you can have multiple nodes with the same value. 21:47:50 That isn't kosher, is it? 21:47:51 -!- Azstal has joined. 21:48:31 alise: Wait, I thought only the arcs had values? In which case 2 arcs with different labels can point to the same node, yes. 21:49:05 Not so different from symlinks... 21:49:15 Aliasing. 21:49:21 I realised that if you allow duplicate nodes, all anonymous nodes + annotated arcs = normal nodes + normal arcs. 21:49:25 -!- Asztal has quit (Ping timeout: 268 seconds). 21:49:34 But allowing duplicate nodes means it isn't a graph any more. 21:50:01 I suppose not. 21:50:20 You get from graph (set of nodes, set of edges) a multigraph if you make the edge-set a multiset, but I'm not sure what you get if you make the node-set a multiset too. 21:51:37 Possibly a multi²graph. 21:51:45 -!- adu has joined. 21:51:55 a directed multi^2graph might be what I want 21:52:07 obviously I want a multigraph, otherwise you couldn't have one object in two lists (right?) 21:52:24 In the mathematical discipline of graph theory, a graph labeling is the assignment of labels, traditionally represented by integers, to the edges or vertices, or both, of a graph.[1] 21:52:50 I haven't really been following the context in which your graph lives here; I was busy with my look-up table of ircd sources. 21:53:03 haven't found a graph-theory anonymous-graph though 21:53:09 alise: Of course you can't have one object in two lists. Unless a) those two lists share a tail, and the object is in the tail, or b) the list really only contains a pointer to the object. 21:53:25 Well it's a graph, everything is a pointer :P 21:53:43 Anyway, they can't share a tail unless you can have multiple pointers to one node 21:53:51 So what you want is the same point in two different lists! 21:53:56 *pointer 21:53:56 fizzie: Graphs as the most generalest of all data structures: http://pastie.org/848825.txt?key=das1exf0bvjldwzy6lmag 21:54:00 cpressey: Of course. 21:54:06 But the whole point of using a graph is that it "does pointers". 21:54:17 alise: But pointers *define* the list. 21:54:39 So the same pointer in 2 lists would mean they're actually the same list. 21:55:15 At least, that's how I see it... 21:55:21 I think we're thinking of the wrong thing 21:55:28 Consider the value fred. Doesn't matter what it is. 21:55:42 [fred,bob,lark] and [frak,fred,mogul] 21:55:57 This is impossible in a (non-multi)graph, because there are two arcs ending in fred. 21:56:28 Note that since we have no object identity we can just duplicate the object, but this sucks. 21:56:40 i.e. next(fred) isn't unique, right? 21:56:58 next(fred) has no meaning 21:57:00 I refer to a linked list 21:57:06 list of a = nil or cons(a, list of a 21:57:07 ) 21:57:14 so we have 21:57:24 the list has two arcs 21:57:32 one to "head" (goes to "fred") 21:57:33 well, next(fred, [fred,bob,lark]) might have some meaning, for some defn of next() 21:57:36 one to "tail" (goes to [bob,lark]) 21:57:46 cpressey: Then the issue is removed. 21:58:27 I'm not following ya, exactly... if lists are lists of names of objects, and fred is the name of an object, this is fine. 21:58:41 if fred is the object itself, then you can't say [fred,fred,fred] 21:58:48 Okay, let me show you the structure of a list. 21:59:39 http://pastie.org/848837.txt?key=t2z1krwvkltzmo8hmhizqw 21:59:46 "head" and "tail" are just symbols/atoms there 21:59:57 but "fred" just means that this arrow points to the fred node 22:00:00 imagine fred as another list 22:00:08 so we'd have 22:00:09 head 22:00:10 | 22:00:12 foo 22:00:16 / \ 22:00:17 head tail 22:01:43 Maybe I am all wrong about everything. 22:02:29 -!- Libster has joined. 22:02:40 -!- ChanServ has set channel mode: +o lament. 22:02:42 -!- Libster has left (?). 22:02:47 too late 22:02:48 lol 22:02:53 -!- lament has set channel mode: -o lament. 22:03:15 who's Libster? 22:03:18 a troll 22:03:25 (self-proclaimed; really bad at it) 22:03:26 -!- Libster has joined. 22:03:26 we get trolls her? 22:03:29 *here? 22:03:40 alise: http://pastie.org/848845.txt 22:03:41 scarf: only because MissPiggy got Libster and ...base3? annoyed or something a while ago 22:03:55 cpressey: Yes. But note that fred *is not a name*. 22:04:02 'fred' and 'fred' can be the same node, if you like. 22:04:03 -!- Libster has set topic: alise sighting counter currently out of order | http://tunes.org/~nef/logs/esoteric/?C=M;O=D | lament sux. 22:04:04 Imagine both those head lines swirling around to wherever fred is, and latching on. 22:04:13 Sure. 22:04:17 So it's a multigraph. 22:04:18 -!- ChanServ has set channel mode: +o lament. 22:04:19 Or that would be impossible. 22:04:22 -!- lament has set channel mode: +b *!*Libster@*.bltmmd.east.verizon.net. 22:04:24 -!- scarf has set topic: alise sighting counter currently out of order | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 22:04:36 lol 22:04:37 spambot 22:04:37 -!- lament has set channel mode: -o lament. 22:04:40 lament: is that the actual reason? 22:04:44 I love your reasoning 22:04:57 alise: you're right, that is /incredibly/ bad trolling 22:04:58 libster is a GLUT 22:05:06 -!- Quadrescence has joined. 22:05:06 alise: http://pastie.org/848850.txt ? 22:05:16 either he or base3 propositioned me for sex the first time (on this nick) 22:05:33 they are pretty colossally bad trolls 22:05:43 cpressey: no; the head of the second list points /away from the whole thing/ 22:05:47 to whatever "fred" means in this context 22:05:49 that IS why you chose this nick, isn't it? 22:05:58 both heads are different arcs, ending at the same node 22:06:05 lament: well, partly. 22:06:14 also to topple the fascist english pronoun structure through sheer absurdity 22:06:20 I don't see why you'd proposition random people for sex over IRC, given how unlikely it is you live within walking distance of each other 22:06:27 turns out people don't use gender-specific pronouns much on irc, though 22:06:38 I actually use a spiral to indicate anonymous nodes, myself 22:06:38 scarf: Virtual reality is JUST ALONG THE CORNER 22:06:41 *AROUND 22:06:43 AROUND the corner 22:06:51 alise: but then, you wouldn't need anyone real to have sex /with/ 22:06:56 scarf: Why did you change nicks? 22:07:07 hey are we talking about sex 22:07:07 Realistic sexbots: Harder than VR 22:07:11 coppro: saw that this one wasn't taken, and thought I might as well 22:07:20 -!- coppro has changed nick to Cu. 22:07:23 alise: http://pastie.org/848855.txt 22:07:25 fair enough :P 22:07:27 * alise is now known as nt 22:07:30 We're a perfect pair 22:07:34 Quadrescence: unfortunately 22:07:36 cpressey: Yes. That's a multigraph. 22:07:39 nt is not an element! 22:07:48 Cu is an element 22:07:50 alise: It is?? 22:07:50 Quadrescence: were you lurking here in the hope that the channel went offtopic? 22:08:01 I only see one node at the end of each arc... 22:08:05 -!- Cu has changed nick to Cn. 22:08:07 scarf: I'm not sure. 22:08:10 aw, this one is taken 22:08:22 I want my copernicium :( 22:08:23 Quadrescence: that's a good enough answer, I suppose 22:08:25 -!- Cn has changed nick to coppro. 22:08:35 cpressey: In mathematics, a multigraph or pseudograph is a graph which is permitted to have multiple edges, (also called "parallel edges"[1]), that is, edges that have the same end nodes 22:08:41 *nodes. 22:08:45 QED 22:09:16 Does this include directed graphs where the two edges go opposite directions? 22:09:37 Ooh, good question. 22:09:40 hm now we are talking about graphs 22:09:46 Graph sex. 22:09:49 I thought graphs can could not have edges that end in the same node were called "trees". 22:09:50 coppro: I would guess yes. 22:09:55 s/can/that/ 22:10:14 cpressey: Yeah, because a tree can express cyclic structure, innit. 22:10:17 *structures 22:10:25 foo -> bar, bar -> baz, baz -> foo: A TREE 22:10:34 aren't trees supposed to be acyclic? 22:10:39 cpressey: if you can have two edges AB and AB, it's a multigraph; if you can have AB and also AC+CB, it's a normal graph; a tree, if you can get from A to B one way, even indirectly, you can't get there another way 22:10:39 coppro: yes 22:10:47 directed acyclic graph = tree 22:10:51 In my world, trees are acyclic, yes. 22:11:08 Quadrescence: that's not strong enough 22:11:15 Right, so a non-acyclic non-multigraph graph is not a tree. 22:11:17 imo 22:11:17 It's just a graph. 22:11:21 coppro: You could require more, but whatever 22:11:36 Any vertex should only have one edge leading to it 22:11:47 coppro: that's... K_2, or K_1 22:11:48 why say 'tree' when you can say 'directed acyclic plant' 22:11:53 there are no other graphs with that property 22:11:56 well, undirected ones 22:12:20 HEY GUYS 22:12:22 HOWSIT GOIN 22:12:31 scarf: we're talking about directed ones 22:12:38 alise: I'm still confused; I don't see any edges "AB and AB" (scarf's words) in my diagram. So I don't see how it's a multigraph. 22:13:05 I see, uh, ABCD and AEFGHD, or something similar 22:13:13 maybe i read the words wrong 22:13:23 "that is, edges that have the same end nodes" 22:13:26 not same start nodes, no? 22:13:35 It's AB and CB. Maybe I am misinterpreting. 22:13:46 Well, I thought it was: two (direct) edges between the same two nodes. 22:13:59 In a tree, the path between the root and to another node must be unique 22:14:00 (AB and AB) 22:14:03 HOW IS THAT 22:14:27 cpressey: Considering the diagram on the page I concede; you are right. 22:14:41 http://www.youtube.com/watch?v=FJ3oHpup-pk 22:14:54 I think anonymous nodes + annotated arcs is best, because otherwise I have to have dummy nodes on lists like "list" 22:14:58 what are you people talking about 22:15:00 jesus 22:15:05 which is really just a stand-in for an anonymous node 22:15:19 and besides, what if the name node (= arc annotation) has multiple connections from it? that makes no sense 22:15:42 alise: Well, the 'list' labels actually make a lot of sense to me. 22:15:44 A nice thing we can have from this is that a scope/environment/whatever just has variable names as the graph annotations. 22:15:45 augur: Clearly we are talking about categorical monadic parser combinators and language grammars 22:15:56 cpressey: I think I'll have a typing system apart from such annotation, though. 22:16:02 language grammars?! 22:16:05 hellll yeah 22:16:10 lets talk bout some grammars 22:16:11 they kind of reflect: data List = List head tail | Nil 22:16:12 Yes 22:16:13 :D 22:16:17 okay i love grammars 22:16:26 You need to keep repeating "List" there to conform to the "grammar" of the data type. 22:16:28 have i shown you my contributions to wikipedia? 22:16:31 no 22:16:32 cpressey: I see what you mean. 22:16:34 o man 22:16:48 (Everyone kept saying "grammar" so I typed it in what I was typing. Scary.) 22:16:49 I remember you though from whatever irc channel augur. 22:17:01 ##compsci 22:17:04 yes 22:17:07 But in a "graphy" language, we would say that both nil, and any node with two arcs annotated 'head and 'tail, where the latter obeys these same constraints, is a list. 22:17:11 or maybe ##proglang 22:17:16 chomsky hierarchy 22:17:18 somewhere in that direction 22:17:20 alise: I can see why you would want to cut it out though, it's all so.... verbose. 22:17:32 augur: do you have to be Ada Lovelace to register #proglang? 22:17:32 cpressey: Yes. Would you rather right 22:17:33 *write 22:17:35 {'left :> {'left :> 1; 'right :> 3}; 'right :> {'left :> 2; 'right :> 4}} 22:17:36 or 22:17:54 i can't even bring myself to write it 22:17:55 too ugly 22:18:11 (1:3):(2:4) ? 22:18:20 Quadrescence: http://toolserver.org/~soxred93/pages/index.php?name=Augur&namespace=0&redirects=noredirects 22:18:21 no, the same but with tree labels everywhere 22:18:27 what you said would be sugar :P 22:18:27 oh 22:18:33 yeaaaaahhhh no. 22:18:40 yeah no to what? 22:18:51 no, i wouldn't want to write it either. 22:19:02 yeah 22:19:04 i also added to the Indexed grammar page and the Combinatory categorial grammar page 22:19:09 augur: wow 22:19:41 cpressey: Cool thing about scopes just being graphs with variable names as arc annotations: We can have a thing for "in scope" which lets us add stuff to a graph without naming it each time, and this is the same as our scoping operator. 22:19:56 Quadrescence: the controlled grammar article took about a week 22:19:59 Yes. 22:20:14 -!- breeden has joined. 22:20:17 It also relates to the tuple-space of languages such as K: every single thing in the environment can be accessed by a list of names relative to the root of the environment. 22:20:23 Ugh, graph of free variables in outer closures etc. 22:20:40 -!- breeden has left (?). 22:20:46 augur: this is the very important stuff I have done http://en.wikipedia.org/wiki/Special:Contributions/Quadrescence 22:21:14 i see! 22:21:22 I guess functions should be "abstract nodes"; if we have a natural being {'pred :> natural} | 'zero - so e.g. {'pred :> {'pred :> 'zero}} is 2, then we can say 2 'pred = 1. 22:21:28 So it is natural to wish for 2 'succ = 3. 22:21:30 no pages created :( 22:21:51 yeah 22:22:00 alise: Your omission of 'list labels also permits "duck typing", for better or wose: anything that works on things that have lefts and rights, works on your structure. 22:22:00 I am too cool I guess 22:22:04 But does this belong in the ubergraph itself or just as sugar in the language? After all, the whole idea is that the language is just syntax to describe graphs, and some graphs are typed and interpreted as programs. 22:22:15 TOO LAME YOU MEAN 22:22:15 cpressey: Yes. I'm planning some sort of typing, though; just have to think about it first. 22:22:17 :P 22:22:24 augur: yeah true 22:22:29 augur: I do write stuff though 22:22:41 like I am writing a BOOK 22:23:04 -!- kar8nga has quit (Remote host closed the connection). 22:23:05 im a total grammar nerd, and i tried looking for a lot of these grammars but couldnt find anything 22:23:11 cpressey: In that group language of yours, the concatenation of a program with itself isn't the inverse, right? You have a separate inversing function of sorts. 22:23:11 so i did research, found papers, books, etc. 22:23:18 So that part of languagespace is still open for my design. 22:23:19 then wrote the wikipedia articles, for future curiousiters 22:23:30 wth: 22:23:30 http://www.lspace.org/books/apf/reaper-man.html#p1516 22:23:37 " If you have access to the Internet, you can find an online version of this story at the URL: 22:23:37 " 22:23:40 augur: Maybe you can help me design some syntax then 22:23:43 what do they think 22:23:45 alise: Correct. In general xx != e 22:23:46 on a website... 22:23:47 maybe! 22:23:55 Since my biggest concern for syntax is making the grammar easy peasy 22:24:03 AnMaster: APF Chapter 3: Discworld Annotations 22:24:12 http://www.lspace.org/books/apf/ 22:24:12 like lisp :))))))))))))))))) 22:24:13 alise: You have to find x' for which xx' = e. But x' exists (well, in the fixed version, it does.) 22:24:14 Organisation: Unseen University 22:24:14 Newsgroups: alt.fan.pratchett,alt.books.pratchett 22:24:19 well, grammar for what 22:24:22 'nuff said 22:24:30 augur: a programmin' lang' 22:24:35 cpressey: Right. What I'd like is xx = e. 22:24:42 i see 22:24:43 alise, hm good point 22:24:50 well, most programming languages have context free grammars 22:24:52 so 22:25:08 alise: ... good luck. :) 22:25:20 maybe I shouldn't be simple 22:25:23 cpressey: That ... is the sound of the language being useless, isn't it? 22:25:26 Maybe I should be complex but elegant 22:25:38 alise: That is the sound of my brain stopping. 22:25:45 Quadrescence: its often quite hard to find a reason why you would want the extra complexity 22:25:48 Well, bit-flipping does it. 22:26:01 -!- dev_squid has joined. 22:26:07 natural language has it, as far as i can tell, solely for efficiency 22:26:13 augur: Well, the language in design is very complex itself. 22:26:16 Hey guys. 22:26:17 but computers have no need for this. 22:26:20 And say we have some piece of state s=0 normally, and have an operation meaning "if s=0, move left, if s=1 move right. flip s" 22:26:22 dev_squid: calamari? 22:26:25 ok, tell me about this language 22:26:33 Gregor, heheh. Sorry? 22:26:49 Glad to see #esoteric is still active. 22:26:50 Quadrescence: will your language be used to program underwater exploration robots? 22:26:56 lament: yes 22:27:07 *confused* 22:27:15 dev_squid: Was asking if this is an alt nick for the one known as "calamari" :P 22:27:32 augur: It is as statically typed as possible, but it is very dynamic in nature, um...., it will be used for mathematics 22:27:52 primarily for math 22:27:55 It is flexible yet rigid, hard yet soft 22:27:59 yes 22:28:02 my cock? 22:28:08 dev_squid: Thou art... Who? 22:28:08 non-newtonian fluid like 22:28:25 and lament-cock like 22:28:25 pikhq, I used to hang around here a while ago. 22:28:32 Gregor, nah. 22:28:36 dev_squid: Yes, just don't recall the nick. 22:28:38 dev_squid: I bet there wasn't so much gay sex then. 22:28:47 And I've been around for quite some time. 22:28:48 Wow >_> 22:28:48 alise, is there now? 22:28:58 alise, o.o 22:29:02 augur: I don't know, maybe I'll tell you about it more later 22:29:03 dev_squid: yes >) 22:29:04 Pray tell, what nick did you use? 22:29:24 dev_squid: Well, sometimes. 22:30:21 Apparently dev_squid had not a nick in the past. 22:30:21 Anyway, just to clear up this issue that's been bothering me for a while...if you limit a language to only being able to deal with two bytes of storage (i.e. RAM), can it still be turing-complete? 22:30:32 No. 22:30:38 Why not? 22:30:42 *deal* with? yes 22:30:46 *only have*? no 22:30:49 pikhq, this is my new computer. 22:30:50 dev_squid: Because it can't. 22:30:54 Because a Turing-complete language must have unbounded memory. 22:31:01 True, true. 22:31:11 dev_squid: Still not informing me about what nick you had previously. ;) 22:31:16 Waaaaait wait 22:31:20 dev_squid: You can manipulate two bytes at a time and be turing complete 22:31:26 If it can only have two bytes of storage, but can have I/O, it may still be TC. 22:31:38 But could you DO anything in a 2-byte environment that you could do in a fully turing-complete environment? 22:31:49 Gregor: Not without fixed IO sources... 22:32:02 dev_squid: there isnt a machine in existence that is turing complete. 22:32:12 its not even theoretically possible to build a turing complete machine. 22:32:18 he didn't say so 22:32:20 dev_squid: all your machine has is 2 bytes? 22:32:27 alise: I didn't say /any/ I/O would make it TC, but it's possible that I/O would be sufficient, with the right kind of I/O. 22:32:28 16 bits of memory? 22:32:33 augur: Hey, I've got spools of unbounded tape right here! 22:32:43 pikhq: ;) 22:32:45 you would 22:33:09 Hey, I've already made the I-am-a-turing-machine-and-my-genitalia-comprise-the-tape joke. 22:33:15 dev_squid: For any program you can write for your 2-byte computer, I can tell whether it will halt eventually, or not. Therefore it's not TC. 22:33:22 so the technical answer to your question, dev_squid, is no, your machine aint turing complete. but that doesnt matter. its a proper subclass of the turing machines, those that are Turing Complete-enough 22:33:24 Including the corollary wrapping-universe-so-I-am-actually-sexing-myself-up subjoke. 22:33:31 dev_squid: someone has built a 4-bit computer, that's way sexier. 22:33:34 * pikhq greps logs for dev_squid 22:33:35 cpressey: OR CAN YOU 22:33:40 alise: o mai 22:33:46 cpressey, alright, alright. I didn't put that question very clearly. 22:33:47 Definitely never had someone using that nick here. 22:33:47 ur gettin me hawt 22:33:48 alise: Well, not me personally. My hordes of servants. 22:33:52 But I get it now. 22:33:53 augur: not turing complete enough if it only has one bit of address 22:34:00 then it cannot be made tc without serious graft surgery 22:34:07 alise: depends on how you handle memory. 22:34:18 depends on how your mom handles memory 22:34:29 i dont think she handles memory well 22:34:35 precisely 22:34:46 i popped your mom's stack 22:34:57 unfortunate 22:35:33 -!- tombom_ has quit (Quit: Leaving). 22:35:53 I was just wondering if it's viable (not practical!) to construct a language that only allows the programmer to operate on two bytes of RAM on bit at a time. 22:35:59 It would make quite the challenge. 22:36:11 * pikhq continues to enquire 22:36:37 Hey, I think that my language should allow multi-word symbols. 22:36:39 Just cause. 22:36:44 dev_squid: operate on, or address using? 22:36:49 so smallfuck with 16-cell memory 22:37:07 (for example) 22:37:09 like, the programmed can address an arbitrary number of memory cells, each of which is only 2 bytes? 22:37:22 programmer** 22:37:28 augur, no. 22:37:32 Hrm. Who hasn't been around in sufficient time to be surprised #esoteric's still active? 22:37:40 me 22:37:45 me 22:37:54 pikhq: hcf 22:37:55 No wait, ... 22:37:55 dev_squid: ok, clarify then? 22:37:57 Think of brainfsck where you're inconvenienced by having two bytes of data space to work with. 22:37:59 Who's been *gone* for sufficient time. 22:38:03 me 22:38:07 dev_squid: *Brainfuck. 22:38:11 ... ok, right. me. 22:38:18 dev_squid: i dont know jack shit about brainfuck. 22:38:25 cpressey was gone forever 22:38:26 cpressey: Ah, right. 22:38:30 and me, slightly less than that 22:38:40 alise, I don't really know the rules on profanity, so I just went with brainfsck. 22:38:52 lament: When did you wander back? Must have been shortly before me, I reckon. 22:39:02 Fucking hell, you think we give a shit about profanity? Only an utter cunt would do that! 22:39:02 (Pard'ner.) 22:39:06 (Just doing my job to lower signal/noise.) 22:39:09 Heheh. 22:39:10 dev_squid: Profanity? Yes please. 22:39:13 cpressey: He's been here intermittently forever. 22:39:20 alise: you watch your mouth! 22:39:22 He's just shocked every single day we still exist. 22:39:24 cpressey: i'm not sure. there was a dark ages kind of period in the history of #esoteric 22:39:26 * augur slaps alise cross the mouth 22:39:29 kids these days 22:39:32 lament: yes, all of it 22:39:51 no, it was pretty cool before you joined 22:39:52 lament: i made the sparkline, ma'am. activity has been /steadily rising/ since the start, and has never gone significantly down 22:40:02 lament: lawl 22:40:13 by dark ages i mean noise-to-signal, not volume 22:40:42 i remember something about razor-x and anime. 22:40:46 lots and lots of anime discussions. 22:41:00 i remember seeing you whine about that when feeding everything to that kicker bot thing :D 22:41:19 also signal/noise presumably, so that it gets lower as quality is shittier 22:41:50 what 22:42:31 not noise/signal 22:42:49 lament! :o 22:42:55 hey changod 22:43:02 no that's andreou 22:43:04 hows the changoddery 22:43:12 close enough 22:43:43 i'm not god :( 22:44:02 but dont you have ... 22:44:06 THE POWER? 22:44:13 scarf: my language seems to unintentionally have autovivification, yet it is totally "pure" i.e. no hacky stuff. do you approve? 22:44:19 yes 22:44:28 i think i need to go shopping 22:44:31 bye 22:44:38 i have godlike powers, sure 22:44:38 Here's my idea: a language which can only operate on one bit at a time of one of two bytes in memory...your'd have your standard bitwise operators like AND, OR, XOR, and NOT, except these took bits as operands, not bytes like an 8-bit processor. I guess you could say it (sort of) simulates machine language of a 1-bit processor...sort of. 22:44:49 *you'd 22:45:02 dev_squid: this language would be... limited. 22:45:08 lament, very. 22:45:15 -!- adu has quit (Quit: adu). 22:45:25 is it a von neumann machine? 22:45:32 Well... 22:45:33 are programs limited to being 2 characters long? 22:45:48 lament, no. 22:45:59 lame 22:46:13 the 4-bit computer people have built is a von-neumann machine 22:46:49 dev_squid: I'm sure there are some (small) problems such a computer could solve 22:47:02 operative word there being, uh, small. 22:47:16 it could easily add 1 and 2 22:47:56 dev_squid, how many bits in a bit? 22:47:59 The only thing making that actually do anything at all is not being Von Neumann.. 22:48:18 scarf: don't suppose you're interested in the details? 22:48:21 I'll come back later when I've formulated a better explanation. I'm confusing myself even. 22:48:33 alise: no, busy having a flamewar atm 22:48:39 heh, about what? 22:48:45 -!- oerjan has joined. 22:49:20 if hasattr(xyz, 'xyz'): self.xyz = xyz.xyz 22:49:41 That's what's been causing me so much pain. (The names were changed to protect the "innocent".) 22:50:01 ... 22:50:34 This is what happens when you mix subclass-based inheritance with delegation at your whim. 22:50:40 MUD. 22:50:48 anywho 22:50:54 help alise 22:51:17 MissPiggy: wut 22:51:25 alise what about haskell' 22:51:34 I could always make it where you have [8 bits][1-bit swap space][8 bits]. Basically, you can toggle which 8-bit cell you're operating on, while also being able to pass data between the two via the 1-bit swap cell. It wouldn't be a realistic model by any means, but it'd be interesting. 22:51:40 which is basically nothing at all but you have so many extensions you can turn it into anything 22:52:03 MissPiggy: What about it? 22:52:18 that' s my idea 22:52:39 Anyway, I love minimalistic or limiting esolangs because when you manage to write a working program in them, you feel much more accomplished...IMHO. 22:52:49 MissPiggy: well that's the reality of haskell today :P 22:53:49 Actually, I really have to have anonymous nodes with named arcs, I think: because I really can't have nodes all being unique. 22:53:58 George --- name --- something, Robert --- name --- something. 22:54:01 Krr, name is duplicate. 22:54:12 Or is there a name for a graph where you can have duplicate nodes? 22:54:38 MissPiggy: http://hackage.haskell.org/trac/haskell-prime/ ? 22:55:26 no 22:55:36 their "Haskell 2010" sounds like hell 22:55:51 yeah 22:56:11 Hell how? 22:56:18 Haskell 2010 is just a standardisation of, well, GHC. 22:56:30 for integer exponents it is trivial to implement. Somewhat more involved for non-integers. 22:56:48 Well, if GHC is to Haskell as gcc is to C, ... 22:57:30 It's not, though? :P 22:57:33 haskell has three different power functions, dependent on whether the underlying type allows just multiplication, allows division, or allows general powers 22:57:41 oerjan: wait what's the third 22:57:44 I know ^ and ** 22:57:47 ^^ 22:58:30 you cannot implement the last one (**) cleanly for rationals 22:58:44 alise: Haskell 2010 is not a standardisation of GHC. 22:58:50 didn't even know of ^^ 22:58:53 It's a standardisation of a handful of GHC extensions. 22:58:59 pikhq: shaddap 22:58:59 :P 22:59:25 alise: it's defined for rationals, but it won't help you take cube roots alas 22:59:36 ((^^)) 22:59:48 desu 23:00:00 * cpressey was waiting for that 23:00:28 btw, is there some way to get Hugs to tell me what types implement a particular type class? 23:00:36 cpressey: Step one, don't use Hugs. 23:00:42 :( 23:00:53 You're going to make me wait for all my crap to COMPILE, aren't you. 23:00:58 cpressey: ghci 23:00:59 i think the idea of a cell containing 5/3 bits is hard to think about logically. 3 of them should give 32 possibilities, but how do you achieve this consistently? maybe it's something quantum :D 23:01:05 Compiles on the spot, interactive like hugs. 23:01:09 runghc foo.hs 23:01:14 Runs the program like a script interpreter. 23:01:38 Hugs doesn't even have the latest major version of the standard library, which changed quite a bit. 23:01:42 alise: OK, I'll give it a shot. 23:01:43 Does it even have 3? 23:02:04 Hugs is like... Dead. 23:02:18 alise: I'll give it a shot if it can tell me what types implement Integral. 23:02:28 cpressey: even ghc cannot do it without you having loaded the modules defining the type instances, i think. 23:03:08 Maybe I'll just stick to Visual Basic. 23:03:09 otoh the web documentation frequently lists types defining a particular class 23:03:22 although maybe that's module-dependent too 23:03:23 oerjan: I couldn't find it in the docs, that's why I was curious. 23:03:37 What, besides the various integery types, implement Integral? 23:03:44 nnone 23:03:46 none 23:03:47 nnone 23:03:47 nnone 23:03:53 Prelude> :info Integral 23:03:53 class (Real a, Enum a) => Integral a where 23:03:54 quot :: a -> a -> a 23:03:54 rem :: a -> a -> a 23:03:54 div :: a -> a -> a 23:03:55 mod :: a -> a -> a 23:03:55 quotRem :: a -> a -> (a, a) 23:03:55 divMod :: a -> a -> (a, a) 23:03:56 toInteger :: a -> Integer 23:03:56 -- Defined in GHC.Real 23:03:56 instance Integral Integer -- Defined in GHC.Real 23:03:57 instance Integral Int -- Defined in GHC.Real 23:03:59 (Sorry for the flood.) 23:04:02 Import more modules, get more Integrals. 23:04:11 alise: Thank you. 23:04:14 cpressey: in addition to the standard Int and Integer, the Int* and Word* types from Data.Int and Data.Word 23:04:19 Of course you can't just say "import *" then look. 23:04:30 are the ones i know of 23:06:00 -!- scarf has quit (Remote host closed the connection). 23:07:49 cpressey: http://www.haskell.org/ghc/docs/latest/html/libraries/base/Prelude.html has a sizable list a way down 23:08:07 oerjan: Thanks. 23:08:23 http://www.haskell.org/ghc/docs/latest/html/libraries/base/Prelude.html#7 23:08:39 is the closest anchor i could find 23:08:45 haskell.org is not responding for me, lovely 23:09:06 oh, it's just reeeeeally slow 23:09:08 oh? i just brought it up 23:11:30 i guess most of those are for the ffi, lots of C types 23:12:26 and of course those are at most the instances that come with ghc. other packages can define their own. 23:12:34 I finally made a channel for my system/language/thingy. #usys 23:20:27 let's say you have 6 * 5/3 bits in a row. that is 10 bits. now you should be able to read off 5 bits starting from _any_ of the 4 first 5/3 blocks. 23:20:51 heh 23:21:34 -!- Asztal has joined. 23:22:08 -!- Azstal has quit (Ping timeout: 245 seconds). 23:22:11 also, if you read off 5 bits from overlapping areas, you should be able to deduce all other 5 bit offsets inside that same area 23:22:29 *from two overlapping areas 23:23:08 this is probably enough to get a logical inconsistency 23:23:41 alise 23:24:47 hm more generally you should be able to take any three 5/3 bits and combine them into a 5 bit value 23:26:21 maybe there is some mad sort of logic where this kind of thing is allowed. i've vaguely heard that toposes replace boolean truth values with something else... 23:27:07 (varying by topos) 23:29:20 -!- dev_squid has quit (Ping timeout: 246 seconds). 23:30:47 -!- dev_squid has joined. 23:35:52 -!- Oranjer has left (?). 23:36:58 heeeeeyo 23:37:43 yoooyo 23:38:31 ma 23:46:41 -!- angstrom has joined. 23:51:09 !haskell data Nat nat = Succ nat deriving Show; main = print . Succ . Succ . Succ $ "Test" 23:51:19 Succ (Succ (Succ "Test")) 23:51:23 hah 23:51:35 BAI NAO 23:52:02 alise: your Show instance for Nat back when was just the usual derived one 23:53:16 oerjan: hm right 23:53:27 why hah? 23:53:41 or almost. it left out the parentheses around "Test". 23:53:54 alise: because you didn't notice it? 23:54:06 well i was being careful :) 2010-03-02: 00:10:06 -!- jcp has joined. 00:14:34 in ruby, "test".succ.succ.succ (or whatever the term is in ruby; next? whatever) would be tesw 00:16:47 !haskell instance Enum String where succ s = init s ++ [succ (last s)]; main = print . succ . succ . succ $ "test" 00:16:59 grmbl 00:17:12 !haskell instance Enum String where {succ s = init s ++ [succ (last s)]}; main = print . succ . succ . succ $ "test" 00:17:51 !haskell {-# LANGUAGE TypeSynonymInstances #-}instance Enum String where {succ s = init s ++ [succ (last s)]}; main = print . succ . succ . succ $ "test" 00:18:44 *sigh* i guess there is no way to turn off warnings about undefined methods without defining them all :( 00:19:30 !haskell {-# LANGUAGE TypeSynonymInstances #-}instance Enum String where {succ s = init s ++ [succ (last s)]; fromEnum = undefined; toEnum = undefined}; main = print . succ . succ . succ $ "test" 00:19:33 "tesw" 00:23:41 succ ['a','b',succ maxBound] 00:23:44 you need wrapping son 00:24:15 i'd think that should give a carry, actually 00:25:00 What does succ a_list supposed to mean? 00:25:19 Grammar fail 00:25:50 Sgeo_: i think version strings is one of the intended cases 00:26:00 *use cases 00:26:35 ruby may do something more complicated than just looking at the last character for all i know 00:27:00 like, what is "test9".succ ? 00:27:35 I think tryruby.com has a ruby interpreter 00:27:42 Or some similar URL 00:27:55 no, that's why's 00:27:58 and why killed himself 00:28:07 alise, WHAT? 00:28:16 Sgeo_: person-behind why killed the-persona why. 00:28:22 Oh, ok 00:28:23 (deleted all online accounts, code and websites) 00:28:36 hm 00:28:46 Sgeo_: i don't find it any less sad, it's not like person-behind-why will be exactly like why, a lot of it will be an act of sorts - or at least a costume 00:28:52 and we'll never contact them anyway 00:28:54 irb(main):001:0> "test9".succ 00:28:54 => "tesu0" 00:28:57 tesu tesu tesu 00:29:20 alise, but it means the person isn't dead. 00:29:39 ;_; 00:29:48 Although it is upsetting that we'll never speak to Why again, probably [and even that isn't definite, unlike RL death] 00:29:51 it's so useless being ill because even though i'm not at school I can't work on my own stuff 00:30:03 MissPiggy: just lie in bed and chill 00:30:10 Sgeo_: he's not coming back 00:30:11 MissPiggy, severely ill, or known-to-be-temporarily-ill? 00:30:23 alise, how do we know this? 00:30:24 and, do you care about some random person dying that you don't know? don't lie, you don't 00:30:30 the sad event is that persona why is gone 00:30:39 just a bit ill 00:30:42 Sgeo_: well, the probability is almost 0 00:30:54 he completely wiped out everything, he had been a bit pessimistic about programming on his twitter just before 00:31:01 and it was an /utter/ wipeout of EVERYTHING 00:31:04 MissPiggy: famous last words 00:31:11 * oerjan whistles innocently 00:31:33 It's a little bit of cancer. 00:31:34 alise, what's that "a bit pessimistic" 00:31:35 ? 00:31:39 would love to read what it was 00:32:23 MissPiggy: wasn't much interesting "blah blah programming is ephemeral the only things that truly survive are games; people will do anything to keep games running; if you want your stuff to last make it a game" which seems... false, but whatever 00:32:43 which means esolangs will outlive all other languages 00:32:44 later 00:32:46 -!- cpressey has left (?). 00:33:12 alise huh. well i guess it's lost forever/ 00:33:12 ? 00:33:32 not quite 00:33:41 There are games, good games, that don't survive 00:34:14 can't find it. but there is a mirror of most stuff 00:34:15 Although that's mostly online games 00:34:26 http://github.com/whymirror is code, can't remember where the writing stuff is 00:35:22 HE LOOKS LIKE JACK BLACK 00:35:40 he does 00:37:17 wugh 00:37:24 zed shaws opinions can fuck off 00:38:11 yeah he's a dick 00:38:18 -!- dev_squid has quit (Ping timeout: 265 seconds). 00:42:34 -!- Azstal has joined. 00:42:42 -!- Asztal has quit (Ping timeout: 268 seconds). 00:48:41 MissPiggy: join #usys :| 00:49:03 -!- Azstal has quit (Quit: .). 00:50:59 -!- jcp has changed nick to devmarlen. 00:51:23 -!- devmarlen has quit (Changing host). 00:51:23 -!- devmarlen has joined. 00:52:01 -!- devmarlen has quit (Changing host). 00:52:01 -!- devmarlen has joined. 00:52:39 -!- devmarlen has changed nick to multimarlen. 00:52:51 -!- multimarlen has quit (Changing host). 00:52:51 -!- multimarlen has joined. 00:53:21 -!- multimarlen has quit (Changing host). 00:53:22 -!- multimarlen has joined. 00:53:26 -!- multimarlen has changed nick to jcp. 00:57:02 http://www.stationv3.com/d/20080319.html 00:58:29 :D 00:59:10 http://www.stationv3.com/d/20080322.html 00:59:15 he stole my alternative universe syntax :( 00:59:16 (almost) 01:00:06 straight men are so unreliable 01:00:13 ^ 01:01:26 ... 01:04:42 -!- augur has changed nick to OriginalSyntax. 01:05:33 OriginalSyntax: I can't decide if that nick is clever and hilarious or just stupid. 01:05:46 someone in ##proggit is OriginalSyn 01:05:49 so i figured 01:05:51 lets up the ante 01:05:54 -!- OriginalSyntax has changed nick to augur. 01:06:10 See, now OriginalSyn is clever and hilarious. 01:06:18 Because it's meaningful in both senses. 01:06:32 (If not a particularly useful meaning) 01:06:40 hows it meaningful in both senses? 01:06:41 hello 01:06:44 i find all this Syn a little taxing 01:07:37 augur: In a TCP session, there will be a first (and so "original") SYN. 01:08:07 i see! 01:08:40 I have to go now. I may or may not be on tomorrow; if not, probably tomorrow; if not, probably the next day... otherwise on the weekend, maybe, or even later depending. 01:08:42 But probably not never. 01:08:43 Bye! 01:08:45 -!- alise has quit (Quit: alise). 01:16:29 -!- dev_squid has joined. 01:34:16 Egobot's o'er here. 01:35:11 Uhhh, yes? 01:35:22 !c printf("Isn't 'e?"); 01:35:27 Isn't 'e? 01:36:13 EgoBot is just a bot anyway :P 01:39:48 http://filmdrunk.uproxx.com/2010/03/forgotten-classics-white-dog-the-racist-dog 01:39:51 i have no words 01:40:29 そう。 01:40:48 esu 01:41:10 MissPiggy: もっとです? 01:42:49 -!- adu has joined. 01:49:15 I think APL should be considered an esoteric language. At first, that's what I thought it was. 01:49:30 ok 01:49:31 What paradigm does APL use anyway? 01:49:36 array programming 01:49:39 vector programming 01:49:41 Thought so. 01:49:44 Like Lisp? 01:49:50 you can do it in lisp 01:50:17 I never got around to learning Lisp, but it looks hella fun. 01:50:42 Structurally, I think the language is genious. 01:50:48 you should learn it 01:51:32 I should! 01:51:36 That's my next project. :) 01:51:42 good D 01:52:12 Is it practical for software development? 01:54:02 I suggest Haskell. 01:54:03 its tits 01:54:18 You will then realise that Haskell is fairly mundane. :P 01:54:21 Erm. 01:54:23 Lisp. 01:54:28 *Lisp* is fairly mundane. 01:54:28 haskell is tits 01:54:34 Farking thinkos. 01:59:00 pikhq: lisp is genius 01:59:17 Haskell is mundane comparatively 01:59:32 Haskell is a very different sort of genius 01:59:41 No, Haskell isn't genius at all 01:59:47 It plays off of the work of previous languages 01:59:53 namely Miranda and SML 02:00:07 It's like saying that I'm a genius if I write E=mc^2 02:00:22 SML gets my genius points 02:00:45 haskell is difficult enough that most people who learn it think it's god 02:00:57 And what MissPiggy said 02:06:58 Originality and genius are not necessarily connected 02:08:22 the tits, or just tits? 02:08:23 In this case they're the same 02:08:46 But I appreciate your insight coppro :) 02:09:07 Quadrescence: in Lisp's case, I completely agree; it was both genius and original 02:09:10 haskell is obviously standing on the shoulders of giants 02:09:15 right 02:09:38 you mean both genius and unreadable 02:09:51 lament: It's very readable 02:10:03 Admittedly, it's more acquired though 02:10:13 It's not like python where lol N E 1 CAN REED 02:10:19 NO LEARNING REQUIRED 02:10:26 Quadrescence: if you're repeatedly fucked in the eye socket for years, eventually you learn to tolerate it 02:10:47 !haskell (.)(.) (++) "What" (' ':) "tits?" 02:10:49 "What tits?" 02:10:49 lisp pisses me off more than chardonnay 02:10:54 and chardonnay fucking pisses me off 02:11:02 lament: No, honestly, if it's properly indented, it's not bad 02:11:08 Also I mean lisps in general, NOT common lisp 02:11:20 For the language implementer it's great, the end user just hands you an AST :P 02:11:23 Common lisp is a mess 02:12:16 Quadrescence: i don't believe you. I looked at Scheme code. I can certainly see that it gets better with practice, but so does everything else, and Lisp after X time spent on practice will still be less pleasant than non-Lisp after X time 02:12:35 humans work in a certain way which is very much the opposite of what Lisp tries to do. 02:12:49 Even if non-lisp is, in particular, Brainfuck? 02:12:59 Gregor: be practical jeez 02:13:03 :P 02:13:51 lament: I know what you're saying. I guess I should put it this way: lisp syntax is perfectly suitable for the style of programming it promotes, and trying to replicate this style in other languages would be impossible without sexps 02:14:39 Quadrescence: duh, obviously. To me this just says the whole style is crap. 02:15:04 alan perlis, etc. 02:15:12 I prefer Haskell syntax. It actively rewards those who learn it. 02:15:20 pikhq: with tits. 02:15:26 lamentits 02:15:32 lament: Heheh. 02:15:56 lament: I think it needs some work. But the style is remarkable. The point is that you can make your own syntax constructs at any time. Programs writing programs writing programs, data is code, etc etc 02:16:06 MissPiggy: I apologize if my obsession with tits offends you. 02:16:15 Quadrescence: Plof does it better. 02:16:18 :P 02:16:24 Quadrescence: yeah, it sounds great especially when you just learn about it :D 02:16:30 pikhq: I knew you were going to say that :P 02:16:35 HOLY SHIT MIND BLOWN 02:16:38 kind of thing 02:16:39 Gregor: Is true, though. 02:16:45 But of course! 02:17:10 Granted, Plof doesn't have the backing of tons of crazy compilation research to make it efficient. 02:17:12 Quadrescence: although forth blew my mind more than lisp, even though i learned lisp first 02:17:25 Really? Weird 02:17:51 lament: The entire compiler setup *is* mind-blowing, yeah. 02:18:04 Forth compilers are really neat, tru dat 02:18:07 Quadrescence: prolly because lisp is still a language 02:18:09 lament forth blew my mind too "How can ANYONE program in this" 02:18:13 Especially when you realise how bloody *simple* it is to do, even in assembly. 02:18:23 forth is an environment or something 02:18:33 MissPiggy: Same way they do in any other language: abstraction. 02:18:36 abstraction-creating environment 02:18:47 bare metal, drunk with power, etc 02:18:51 tits 02:18:59 obligatory http://i.imgur.com/k9YEP.jpg 02:19:04 Forth makes abstraction cheap. 02:19:20 yes exactly 02:19:22 If you're willing to make the abstraction, of course. 02:19:23 -!- FireFly has quit (Quit: Leaving). 02:19:24 that picture says all really 02:20:00 -!- BeholdMyGlory has quit (Read error: Connection reset by peer). 02:20:16 FORTRAN makes abstraction cheap L O L 02:20:41 I do wish I could have made Plof taste a bit more like Forth in some ways. 02:20:45 Not too much though. 02:20:53 Sort of a "Forth with syntax" would be nice :P 02:21:05 (Except not) 02:21:16 Gregor: Well, you did get part of the way there already. 02:21:36 Gregor: i don't know anything about plawf plz link me 02:21:41 Still, there is rather a lot of work going into the PUL, compared with Forth. 02:21:44 http://plof.codu.org/ 02:21:47 Quadrescence: http://plof.codu.org 02:23:16 this LaTeX for the standard needs some work 02:23:17 ^______________^ 02:23:44 Yes, it does, it was nastily converted from OpenOffice at some point :P 02:24:16 Besides, it changes too often for me to focus on the spec rather than the actual design. 02:24:19 lament is a latexpert 02:24:28 I've been too lazy to do it right. 02:24:35 * pikhq <3 \latex 02:24:54 Amazingly, the LaTeX still looks somewhat good 02:25:25 coppro: actually it looks pretty bad but whatever :( 02:25:56 Quadrescence: it's bad for LaTeX 02:26:06 period, end of story 02:26:16 Which is still better than everything else. :P 02:26:25 but LaTeX starts on top of the heap 02:26:40 So... 02:26:48 I converted it to LaTeX to have room to expand upwards in quality, I just haven't really done that yet :P 02:26:50 Just because you're better than the entire retarded population, doesn't mean you're good 02:26:51 :) 02:27:22 Gregor: Oh, please don't take my comments about the latex negatively. I realize it can get better. I am just saying it's mediocre at the moment 02:27:24 -!- supperrfreek has joined. 02:27:29 Maybe I'll be so nice and make the latex beautiful 02:27:47 Quadrescence: I realize it is, I just don't care that much because my focus isn't the code of the spec, it's the language itself :P 02:28:07 I guess I care but that's just because I'm weird and like typography 02:29:34 Anyway, I would appreciate comments on Plof the language more than comments on Plof's specification :P 02:29:36 Most of us do -- note that we learn LaTeX. 02:29:42 :P 02:30:06 Gregor: Maybe I'll go through the spec thoroughly. 02:30:19 I have been known to be an expert in language design and implementation. 02:30:24 -!- supperrfreek has left (?). 02:33:34 * Sgeo_ is an expert at giving up because no one else cares. 02:33:41 He's a supper freak, supper freak, he's supper freaky. 02:34:05 Sgeo_: Hoot. 02:37:36 http://www.stationv3.com/d/20090313.html 02:40:02 Does Station V3 run on Unix V3? 02:41:44 If Unix V3 is obsolete junk made by incompetents that tends to cause the generator to fail and the security system to grab everyone and throw them out, probably 02:50:51 -!- MissPiggy has quit (Quit: Lost terminal). 02:56:19 "Today's guest strip is from my left hand" 03:19:17 -!- dev_squid has quit (Ping timeout: 246 seconds). 03:38:29 -!- dev_squid has joined. 03:44:07 * Sgeo_ still can't get used to Neap and Morty talking. 03:46:18 (Neap and Morty being Sgeo_'s pet gerbils) 03:46:29 lol 03:55:32 -!- coppro has quit (Read error: Connection reset by peer). 03:55:51 * Sgeo_ wants to see Floyd's body again 03:58:21 -!- coppro has joined. 03:58:29 wb 04:14:44 (Floyd being Sgeo_'s on-again-off-again gay lover) 04:15:17 Floyd being the robot in http://www.stationv3.com/d/20091202.html 04:16:01 * oerjan sees no contradiction in those two statements 04:16:26 oerjan: Sgeo_ was just further clarifying. 04:16:41 ah. 04:37:31 Sgeo_: Floyd died? 04:37:44 No 04:37:49 He's just bodyless 04:38:06 Whew. I was hoping this would actually make sense. 04:38:10 Although the universe did end. 04:38:19 Yeah, I kinda remember that, slightly. 04:38:27 I saw the most recent strip recently. 04:38:38 Hmm. I suddenly want to reread El Goonish Shive. 04:38:44 * Sgeo_ is now in February of this year 04:38:45 Because rereading the whole thing is the best way to catch up. 04:39:01 Unfortunately, that would take a really long time, and I don't have much time. 04:39:04 I'm a very busy man! 04:39:08 * Sgeo_ will soon have read the entire archive, not counting the bonus strips, of Station V3 04:39:09 Or so I've declared myself. 04:39:26 Instead of studying, working on an important project, writing a rebuttal 04:39:29 Or anything else 04:39:45 uorygl: not to mention that you will realize how bad the art was originally and try to stab your eyes out 04:40:01 See, Sgeo_, this is why we take only one class per semester. 04:40:12 It gives us time to do the important things. 04:40:23 coppro: I already want to stab my eyes out just thinking about it. 04:40:25 Studying's the only thing in the list that has to do with college 04:40:35 Oh, whew. 04:40:40 What's your important project? 04:41:01 It's "classified" 04:41:05 Oh. 04:41:13 Which means I've been talking about it here incessantly 04:41:46 lol 04:41:50 If it's Normish-related, abandon it and join #sxmc so you can help me with my... also classified project. 04:49:10 So, Sgeo_, as you were saying... 04:49:53 uorygl, look up mentions that I may have made about C# 05:23:54 -!- oerjan has quit (Quit: leaving). 06:00:28 -!- adu has quit (Read error: Connection reset by peer). 06:00:53 -!- adu has joined. 06:16:50 -!- uorygl has quit (Read error: Connection reset by peer). 06:17:10 -!- uorygl has joined. 06:18:38 -!- uorygl has quit (Read error: Connection reset by peer). 06:20:25 Guys. 06:20:27 Anyone here? 06:20:45 Never. 06:21:11 Okay, well I came up with an idea for an ugly esolang called Nibble. 06:21:27 Here are my notes: http://pastie.org/849378 06:21:29 :| 06:22:09 -!- uorygl has joined. 06:23:25 -!- uorygl has quit (Read error: Connection reset by peer). 06:24:11 There's a few things I forgot to mention in there so it's okay if it makes no sense whatsoever. 06:27:09 -!- uorygl has joined. 06:30:02 Whatcha think? 06:40:19 -!- adu has quit (Quit: adu). 06:42:44 -!- adu has joined. 06:42:46 -!- adu has quit (Client Quit). 06:46:50 Eh? 06:47:52 This channel is dead. Please cast a resurrection spell/reboot the server/pray to the gods/start the daemon/plug the channel in/start the devil. 06:49:59 -!- angstrom has quit (Quit: leaving). 06:55:25 Nice. 06:57:44 -!- jcp has quit (Quit: I will do anything (almost) for a new router.). 07:00:56 -!- tombom has joined. 07:03:08 -!- coppro has quit (Quit: I am leaving. You are about to explode.). 07:29:07 Question. 07:29:21 Is CoreWar still around? 07:29:27 i.e. popular? 07:52:21 -!- coppro has joined. 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:54:21 I have a question. 09:00:33 -!- scarf has joined. 09:13:29 wow, the Chile earthquake actually made a measurable change to the Earth's rotation 09:13:44 days are now 1.26 µs shorter than they were before 09:14:42 And that tsunami quake few years ago shortened them by 6.8 µs. (I happened to be reading the same bit of news at the same time.) 09:16:04 all of these just to reduce angular momentum by itself? 09:16:22 shorter days implies a faster angular momentum 09:16:33 although it could also happen due to a change in rotation speed around the sun 09:17:53 i mean reduce moment of inertia 09:18:04 ah, apparently it sped up because the Earth became denser towards the centre and less dense towards the crust as a result 09:19:05 The news article I happened to be reading does note something vague about there being regular larger changes in day-length "due to other causes, such as atmospheric mass moving around on Earth". 09:19:35 tidal forces apparently have the largest day-to-day effect 09:19:52 it apparently takes 100 days of the Moon going round in circles to produce a similarly-sized change to the earthquake 09:20:22 Yes. That's clearly bad design. A responsible Intelligent Designer would've made things much more orderly. 09:23:19 The word-pair "combat-wombat" keeps going round my head. 09:30:08 Ohai, gaiz. 09:30:34 How do you like my idea for a universal brainfuck entension? (http://pastie.org/849477) 09:32:30 It mimics ideas from pbrain, brainstack, fukyorbrane and some others, but I came up with the data indirection and thought it was pretty neat. 09:32:37 But it's centralized. 09:35:16 -!- lereah_ has joined. 09:35:28 * scarf looks 09:35:58 :;@ work as in fukyourbrane? 09:36:10 actually, looks like @ terminates a procedure if it's in one, or a thread if it isn't 09:36:37 also, -126 to 127 is a weird range, you probably meant -128 to 127 09:37:46 -!- MissPiggy has joined. 09:42:07 Yep. 09:42:13 I sure did. Meh. 09:43:23 I'd love to implement C-style functions, especially if it had stack support. :) 09:48:02 So do you like it? 09:51:12 it seems reasonable; we get a lot of BF variants of that sort 09:51:20 if you can create a compiler from that to regular BF, it would be even more interesting 09:52:41 Fixed it up. (http://pastie.org/849497) 09:52:45 Sure would. 09:54:55 Yerp. I've just never seen one that implemented basic features like this without going overboard. I believe it's still minimal, yet powerful. 09:57:12 have you seen Modular SNUSP? 09:58:02 http://esolangs.org/wiki/SNUSP 09:58:07 it might be interesting to look at for ideas 09:58:13 we should just compile LLVM bitcode to BF; at that point you're golden 10:01:11 Interesting. 10:02:19 You know what? I've yet to see a BF derivative implement C-compliant functions with stack support. 10:02:23 Maybe Crainfuck. 10:03:11 I have seen that 10:03:26 you just host brainfuck inside C 10:03:42 I think LLVM -> BF would be the crowning moment in esoteric glory. 10:03:44 then you can use whichever is most appropriate for the task 10:07:16 -!- dev_squid has quit (Ping timeout: 276 seconds). 10:27:46 jesus fucking christ 10:27:54 hi augur 10:27:55 wipeout fusion's tethys league is impossible 10:28:07 are you feeling wiped out by it? 10:28:29 im feeling pissed is what im feeling 10:28:38 i feel like the computer is cheating 10:30:13 you have turned me into jesus 10:40:21 what XD 10:41:53 :) 10:44:01 -!- Gregor has quit (Ping timeout: 264 seconds). 11:08:37 -!- alise has joined. 11:10:36 Bleh. I'm all uncomfortable. 11:11:12 scarf: "If it's Normish-related, abandon it" -- uorygl 11:11:24 sure am glad I didn't rely on it for anything serious :^) 11:11:26 ugh 11:11:45 01:13:44 days are now 1.26 µs shorter than they were before 11:11:45 01:14:42 And that tsunami quake few years ago shortened them by 6.8 µs. (I happened to be reading the same bit of news at the same time.) 11:11:45 wow 11:11:47 and I operate under the assumption that Normish is likely to go offline at any moment 11:11:58 20:40:40 What's your important project? 11:11:58 20:41:01 It's "classified" 11:11:58 20:41:05 Oh. 11:11:59 20:41:13 Which means I've been talking about it here incessantly 11:11:59 20:41:46 lol 11:11:59 20:41:50 If it's Normish-related, abandon it and join #sxmc so you can help me with my... also classified project. 11:12:02 So it's not quite Normish-is-over. 11:12:08 But it's obviously I-have-a-shiny-new-project-now-Normish-sux. 11:12:29 normish, in the end, effectively became a server for helping with nomic things 11:12:36 it hosts loggic and blognomicbot, for instance 11:12:54 over ten years the difference in earth's rotation 11:12:57 we'll have lost 0.08ms 11:13:24 blognomicbot? 11:13:38 alise: a bot that hangs out in BlogNomic's IRC channel 11:13:43 Doing? 11:13:58 mostly for doing ChanServ duties when ChanServ goes insane, but it also counts votes, and copies the topic and user list to the blognomic server 11:14:36 also, prevents the channel being dropped due to lack of active ops) 11:14:39 s/\)// 11:15:07 counts votes on what? like !voteon Excellence mogriband? 11:15:30 also, as you know the entirety of my current situation - do you think it's irresponsible to reregister for Agora? As in, for who-knows-what-will-happen reasons. 11:15:45 I find it quite likely that the unit is not over yet. 11:16:10 alise: once a week should probably be enough, although it's not quick enough to catch without-objection 11:16:25 however, given that contracts were repealed, you can normally rely on someone else to object for you 11:16:39 Ah, I just meant as in neglecting any obligations or whatever 11:16:52 you can avoid taking on obligations that you can't fulfil easily enough 11:17:09 I don't particularly want to play if I'm still fighting the unit, so I'd probably inactivate if it starts again. 11:17:12 Is the point. 11:17:57 it's pretty quiet atm 11:18:16 we repealed most of the interesting rules, presumably this would be a good time to create more 11:18:31 although there's been an intriguing discussion about whether the IBA still exists, given that contracts have been repealed 11:18:44 Well, if there's nothing interesting to do... 11:19:09 What's RtRW? 11:19:46 read the ruleset week, first week of february 11:20:19 ah 11:20:25 * alise sees a genius idea on reddit 11:20:34 if a government has national debt, they should just bail themselves out 11:20:44 o_o 11:20:51 :D 11:21:35 and charge interest! 11:25:09 has agora been without contracts before? 11:25:14 I'm pretty sure they've been around for almost all time... 11:25:20 (that is, after their first introduction) 11:26:34 no idea; I wonder if they were continuously there between the whole SLC mess (years ago) and modern contracts? 11:29:48 SLC mess? Haven't heard of that one. 11:29:58 scarf: Regardless, I doubt it's been without them for more than weeks before. 11:30:04 They've been the backbone of Agora for how long? 11:30:20 the power system has been the backbone ever since it was invented 11:30:30 contracts have just been a fun thing to mess around with 11:30:33 Nah, that's just a safeguard. 11:30:41 The actual non-nomic gameplay, I mean. 11:30:46 (Most people like that stuff.) 11:38:07 scarf: Logicnomic! 11:38:14 You win if you prove a contradiction. 11:38:34 Formallogicnomic, I should say. 11:38:48 thus proving the entire ruleset inconsistent? 11:39:05 exactly (but there's a metaruleset that says that the game restarts in a certain way after) 11:39:15 presumably with the contradiction eliminated somehow 11:41:22 meh, just have it end after someone wins 11:41:26 some nomics have actually ended like that 11:41:31 then you can start a new one 11:41:43 hmm... /me wonders at lea being used for addition 11:41:46 but everyone would be trying to subtly introduce contradictions all the time 11:41:50 it makes sense on some level, but not on another level 11:41:52 so i imagine the turnover would be quite high 11:48:18 Given that x86's add (and so many other ops) have the target register fixed to be one of the operands, the popularity of some lea-trickery is not very surprising. 11:48:57 it's more a case of, why have two addition instructions which use utterly different syntax? 11:50:10 Yes, I guess it only makes sense if you think about it on the implementation level. (Where you have this pile of logic ready for all kinds of addressing modes, and it's easy to make an instruction that just reads the computed address into a register.) 11:53:42 gcc-bf, incidentally, uses lea for pointer computations and add for integer computations 11:53:52 pointers and integers are stored utterly different ways, so it makes sense to have two commands 11:54:57 Your "hardware" there is a bit on the strange side, though. 11:58:09 On x86-64 you "need" lea to turn IP-relative offsets into real pointers (if you need to pass it to somewhere, for example), since you can't add the RIP register normally -- it's not general-purpose enough -- but you can LEA reg, [rel offset]. 12:03:08 alise 12:03:11 http://www.inc.com/magazine/20100301/lets-take-this-offline.html 12:03:44 Joel Spolsky? My bullshit filter just turned up to maximum while the page is loading. 12:04:36 503 Service Temporarily Unavailable 12:05:06 Loaded now. 12:05:18 Blogging is holding you back? Excellent! Less shit for me to ignore. 12:06:05 wow, I've never seen a picture of Joel Spolsky before 12:06:09 I didn't realise he looked so smug 12:06:12 Blog blog you startup masturbate you rock blog huh??? you're WRONGGG nobody cares (oh the irony) BLOG PROPER SHITTERS not worth it lol too much work it's the OVERRRRRRRRRRRR 12:06:21 ^ summary 12:06:42 The only thing worse than a Joel Spolsky is a Joel Spolsky & Jeff Atwood. 12:06:49 (Which is also the only thing worse than a Jeff Atwood.) 12:06:58 Okay, okay, maybe Spolsky is /marginally/ better than Atwood. 12:06:59 which of spolsky & attwood is the one that's at least half-competent? 12:07:06 Spolsky. Atwood is the codinghorror dude. 12:08:01 lol wut, apparently north and south korea are still technically at war and have been since 1950 12:08:56 he looks retarded 12:09:16 I don't mean that in a nasty way just that normal people don't smile in that way 12:10:01 alise: they still have weapons pointed at each other 12:10:05 I thought it was amusing that he blogged about quitting blogging, and that he gave some tips on how to write a good blog, one of which was: Give tips on how to do X rather than just announcing some event/product/whatever 12:10:11 the issue is, neither dares fire, because then the other would fire and they'd both be wiped out 12:10:14 wow MissPiggy u r mean 12:10:33 scarf: yeah but i mean they never actually got around to ending the korean war after stopping all those killing dealies :P 12:10:53 they're still at war, it's just a cold war now 12:11:06 Is it the same war as the Korean War, though? 12:11:14 apparently, the south koreans have been dropping informative pamphlets over north korea 12:11:32 and the north koreans mostly don't pick them up because the propaganda machine has convinced many of them their hands will drop off if they try 12:12:05 :-D 12:12:11 Joel Spolsky is the Nickelback of computing. 12:12:19 Kim Jong-il is hilarious 12:12:35 (If I didn't consider it the best comedy ever created I'd just be depressed) 12:12:42 I am /convinced/ they are filming all this 12:12:48 For surveillance? No, for syndication! 12:13:04 There's a bit related but not the same extended-war list at http://en.wikipedia.org/wiki/List_of_wars_extended_by_diplomatic_irregularity 12:13:20 431 BC404 BC1994 12:13:22 now /that/ is impressive 12:13:33 1994? This. Is. SPARTA! 12:14:22 that first one is ridiculous 12:14:26 and possibly not even true 12:14:48 Shut up! I want to believe it! 12:15:10 335 years for the Dutch Republic vs. the Isles of Scilly is still impressive, though 12:15:14 and presumably that one's verifiable 12:15:32 The second one is almost equally ridiculous and even has a citation -- did not check what sort of. 12:15:45 ^ Saudi Aramco World, (bottom of page) 12:15:48 http://www.saudiaramcoworld.com/issue/198503/delenda.est.carthago.htm 12:15:50 Some magazine 12:15:56 When Carthage and Rome finally signed a peace treaty - in February 1985 - Ugo Vetere, the mayor of Rome, seemed deeply moved by the still existing traces of the catastrophe at Carthage - which he described as "blackened by fire." The catastrophe, he said, "... should be regarded, not just with curiosity, or with a love for archeology, but... with the eyes of those who wish for and... work for peace today." 12:16:15 Furthermore, it is my opinion that Carthage must be destroyed. 12:16:27 also, allegedly one of the peace treaties for the World War was typed backwards 12:16:32 what 12:16:33 due to an accident with putting in carbon paper in the dark 12:16:36 and nobody noticed at the time 12:16:43 didn't they ... read it? 12:16:47 so it ended up being typed on the back of the sheet of paper 12:16:52 alise: I'm not sure I believe it myself 12:16:54 :D 12:17:05 the urban legend goes that it was dark at the time, and so nobody saw it until later 12:17:25 "At the time World War II was declared over, there was no single German state that all occupying powers accepted as being the sole representative of the former Reich. Therefore the war technically did not finish until the country was reunified." 12:18:11 Andorra vs German EmpireWorld War I191419181958[6]Andorra was not invited to the Treaty of Versailles. 12:18:14 Fuck you, Andorra 12:18:26 "Montenegro declared war in support of Russia but this was merely a gesture as Montenegro lacked a navy or any other means to engage Japan." 12:18:28 -!- FireFly has joined. 12:19:22 [[Nevertheless, reportedly in 1966 a Soviet official waited upon the Mayor of Berwick, Councillor Robert Knox, and a peace treaty was formally signed. Knox is reputed to have said "Please tell the Russian people that they can sleep peacefully in their beds."]] 12:19:40 alise: that's also apparently a rumour; at least, snopes.com tried to find evidence of that but couldn't 12:19:43 it's a fun story though 12:19:45 [[To complicate the issue, some have noted that Knox did not have any authority with regard to foreign relations, and thus may have exceeded his powers as mayor in concluding a peace treaty.]] 12:19:46 AAAAAAAAAAAAAAAAAAAAAAAAA 12:19:56 scarf: the whole signing, or the saying? 12:20:14 both, IIRC 12:21:45 -!- augur has quit (Ping timeout: 248 seconds). 12:21:52 aw 12:26:27 I can't find any references to that backwards-treaty thing on Wikipedia or Snopes, not even as debunked rumours 12:26:32 so I have no idea where I heard it from 12:28:38 hey i have an idea for an esolang 12:29:12 here it is: basically everything you type is either pushed onto a stack or applied to a stack, so 1 1 + would push 1 then 1 then apply + and everything follows these rules 12:29:16 IS THIS A GOOD IDEA? 12:30:15 Quadrescence: concatenative langs! 12:30:20 yes, it is 12:30:28 http://esolangs.org/wiki/Underload is a bit like that 12:30:40 which was my attempt to reduce concatenativeness to a tarpit 12:30:51 and there are some "real" languages which work like that too 12:31:05 See: Joy, Factor, ("almost" Forth) Cat, Underload, ... 12:31:24 Congratulations: you're intelligent enough to independently invent concatenative languages. 12:31:40 -!- BeholdMyGlory has joined. 12:32:18 http://en.wikipedia.org/wiki/Kim_Il-sung_University I'm surprised this even _exists_ 12:32:41 and wtf do they teach in history? Or philosophy? Government? Economics? Law? :P 12:32:52 I wonder how much of their sciences just happen to /conveniently/ tie in with Juche... 12:33:01 scarf: I was kidding 12:33:07 it's pretty much the worst idea ever 12:33:16 why? 12:33:19 idk 12:33:27 you can even do control flow like that 12:33:30 Strong intellectual bent in this one I see 12:33:37 Only if you have quotations 12:33:44 well, yes 12:33:45 like fagtor does 12:33:50 "Fagtor". 12:33:53 Wow, just go away now. 12:33:55 Factor* 12:34:02 Oh come on, that was clearly intentional 12:34:03 actually, I think alise invented a variation which didn't need them directly 12:34:09 scarf: Well, with your help. 12:34:17 alise: Hey, I've been to slava's house before 12:34:20 I formulated the language, you proved that it was equivalent (ignoring IO). 12:34:26 and did some bignum stuff for factor 12:34:29 so don't be hatin' 12:34:38 then he moved to NZ 12:35:07 with his gigantic pile of profit from Factor 12:35:27 ^ul (!())(~(:)~*(*)*:(*)~^S~(/)S:^):^ 12:35:27 */**/***/****/*****/******/*******/********/*********/**********/***********/************/*************/**************/***************/****************/*****************/******************/*******************/********************/*********************/**********************/***********************/************************/ ...too much output! 12:35:35 and I just wrote that off the top of my head 12:35:51 alise: His profit seemed to be spent on large mac displays and stuff 12:35:59 Don't forget the Mac Pro. 12:36:00 and macbooks 12:36:05 yeah 12:36:11 I doubt he actually profits from Factor though :P 12:36:16 I doubt it too 12:36:21 his place was pretty dumpy 12:36:40 but he makes good блины 12:36:46 wonder what his day jorb is 12:37:05 Quadrescence: you could have just said "pancakes" 12:37:15 even though I can type google.com/translate_t in about 0.5 seconds by now 12:37:38 alise: No 12:37:42 They are not the same 12:38:01 It is a rough /American/ translation but they are not at all the same 12:39:27 Quadrescence: have you been here before under another nick? 12:40:13 alise: No 12:40:20 ok, under the same nick? 12:40:22 I vaguely recognise you 12:41:18 Same nick 12:41:28 You might have seen me in other channels 12:41:33 scarf: it's 6:30 AM 12:41:34 hmm... maybe... how long ago? 12:41:39 alise: I don't know. 12:41:43 no, it's 12:41 am 12:41:49 [06:38.01] * Received a CTCP TIME from scarf 12:42:11 your clock is 3 minutes slow, unless you're in a UTC-6:03 timezone 12:42:20 :-D 12:42:54 It is indeed 3 minutes slow 12:49:24 -!- augur has joined. 12:50:07 good morning augur 12:50:15 moin 12:51:25 Technical discussion about antelopes. 13:09:43 The ant elopes with his fellow queen. 13:31:59 #usys sure is lonely 13:32:05 <_< >_> 13:33:34 -!- asiekierka has joined. 13:33:35 hi alise 13:33:40 hmm, what should i destroy today 13:33:40 Hi. 13:33:40 `ls 13:33:45 Yourself. 13:33:45 :P 13:33:46 i said 13:33:47 `run ls 13:33:47 bin \ cube2.base64 \ cube2.jpg \ help.txt \ huh \ paste \ poetry.txt \ quotes \ share \ test.sh \ tmpdir.15927 13:33:49 bin \ cube2.base64 \ cube2.jpg \ help.txt \ huh \ paste \ poetry.txt \ quotes \ share \ test.sh \ tmpdir.15957 13:33:51 there we go 13:33:57 `./test.sh 13:33:58 No output. 13:34:13 `ls 13:34:14 bin \ cube2.base64 \ cube2.jpg \ help.txt \ huh \ paste \ poetry.txt \ quotes \ share \ test.sh \ tmpdir.16082 13:34:33 `cd / && ls 13:34:34 No output. 13:34:40 `run cd / && ls 13:34:40 bin \ dev \ etc \ home \ lib \ lib64 \ proc \ tmp \ usr 13:34:49 `run cd /etc && ls 13:34:50 alternatives 13:34:58 `cd /lib && ls 13:34:59 No output. 13:35:04 `run cd /lib && ls 13:35:05 cpp \ firmware \ init \ ld-2.9.so \ ld-linux-x86-64.so.2 \ libBrokenLocale-2.9.so \ libBrokenLocale.so.1 \ libSegFault.so \ libacl.so.1 \ libacl.so.1.1.0 \ libanl-2.9.so \ libanl.so.1 \ libattr.so.1 \ libattr.so.1.1.0 \ libblkid.so.1 \ libblkid.so.1.1.0 \ libbsd.so.0 \ libbsd.so.0.1.6 \ libbz2.so.1 \ libbz2.so.1.0 13:35:22 hmm, is it so sure that this is actually secure 13:35:28 It is absolutely secure. 13:35:39 Even if I do `run rm -rf / 13:35:46 If you break out of the plash sandbox, which overrides every single system call, you will find yourself within an empty chroot. 13:35:56 From which you then must find a vulnerability in the Linux kernel to escape. 13:36:00 Good luck. 13:36:16 asiekierka: One, all changes are revisioned. Two, you can't delete anything that isn't yours. 13:36:18 `ls 13:36:18 bin \ cube2.base64 \ cube2.jpg \ help.txt \ huh \ paste \ poetry.txt \ quotes \ share \ test.sh \ tmpdir.16399 13:36:26 That stuff's ours. 13:36:31 If you remove it, we'll put it back in one command. 13:36:32 `help 13:36:33 Runs arbitrary code in GNU/Linux. Type "`", or "`run " for full shell commands. "`fetch " downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert " can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/ 13:36:36 `run cd .. && ls 13:36:37 hackenv.16464 13:36:41 `run cd ../.. && ls 13:36:42 bin \ dev \ etc \ home \ lib \ lib64 \ proc \ tmp \ usr 13:36:47 `run cd /tmp && ls 13:36:48 hackenv.16547 13:36:51 okay... 13:37:00 `id 13:37:01 uid=1856920 gid=1856920 13:37:02 `id 13:37:03 uid=1642345 gid=1642345 13:37:05 `run mkdir /home 13:37:05 New user each time. 13:37:06 No output. 13:37:15 `run cd / && ls 13:37:16 bin \ dev \ etc \ home \ lib \ lib64 \ proc \ tmp \ usr 13:37:22 wait, it already existed 13:37:25 gah, i'm stupid 13:37:28 `run cd /home && ls 13:37:29 hackbot 13:37:42 `mkdir /home/asiekierka && cd /home && ls /home 13:37:43 No output. 13:37:48 `run mkdir /home/asiekierka && cd /home && ls 13:37:49 No output. 13:37:55 `run mkdir /home/asiekierka 13:37:56 No output. 13:37:58 `run cd /home && ls 13:37:59 hackbot 13:38:03 ...I don't like you. 13:38:06 `run cd /home/hackbot && ls 13:38:07 hackbot.hg 13:38:38 `run cd $PWD && ls 13:38:39 bin \ cube2.base64 \ cube2.jpg \ help.txt \ huh \ paste \ poetry.txt \ quotes \ share \ test.sh \ tmpdir.17038 13:38:44 Oooooookaay... 13:38:45 cd $PWD; how pointless. 13:38:51 You're angering me, HackEgo 13:39:08 try 2>&1 after each command 13:39:10 to see errors 13:39:17 `run mkdir /home/asiekierka 2>&1 && cd /home && ls 13:39:18 /bin/mkdir: cannot create directory `/home/asiekierka': Permission denied 13:39:22 Oooooh 13:39:26 not shiny. 13:39:29 sh <( cat 'cd $PWD' ) 13:39:35 `run cd /lib && ls 13:39:36 cpp \ firmware \ init \ ld-2.9.so \ ld-linux-x86-64.so.2 \ libBrokenLocale-2.9.so \ libBrokenLocale.so.1 \ libSegFault.so \ libacl.so.1 \ libacl.so.1.1.0 \ libanl-2.9.so \ libanl.so.1 \ libattr.so.1 \ libattr.so.1.1.0 \ libblkid.so.1 \ libblkid.so.1.1.0 \ libbsd.so.0 \ libbsd.so.0.1.6 \ libbz2.so.1 \ libbz2.so.1.0 13:39:42 MissPiggy: a file called cd $PWD? 13:40:07 `run cd / && ls 13:40:08 bin \ dev \ etc \ home \ lib \ lib64 \ proc \ tmp \ usr 13:40:09 alise, http://simple.wikipedia.org/wiki/Fundamental_theorem_of_arithmetic 13:40:11 `run cd /lib64 && ls 13:40:12 cpp \ firmware \ init \ ld-2.9.so \ ld-linux-x86-64.so.2 \ libBrokenLocale-2.9.so \ libBrokenLocale.so.1 \ libSegFault.so \ libacl.so.1 \ libacl.so.1.1.0 \ libanl-2.9.so \ libanl.so.1 \ libattr.so.1 \ libattr.so.1.1.0 \ libblkid.so.1 \ libblkid.so.1.1.0 \ libbsd.so.0 \ libbsd.so.0.1.6 \ libbz2.so.1 \ libbz2.so.1.0 13:40:34 "The Fundamental theorem of arithmethic (also called the unique factorization theorem) is a theorem of number theory. The theorem says that every positive integer greater than 1 can be written as a product of prime numbers (or the integer is itself a prime number)." 13:40:39 yes, that's absolutely simple english /rolleyes 13:41:58 `run uname -r 13:41:59 2.6.26-1-xen-amd64 13:42:09 Yay, old linux kernel versions! 13:42:22 libBrokenLocale and libSegFault, the best libraries evar. It's too bad they're not exactly what it says on the tin (tvtropes ref); libBrokenLocale (as far as I can tell) doesn't break locales, and libSegFault doesn't cause segfaults. 13:43:42 http://pastie.org/849736.txt?key=mp48bw1mgnnh2sbcrtayq an actually simple rewrite of the start of that article 13:44:05 I guess it depends whether the audience is someone who knows Simple English and no english maths terminology or someone who knows Simple English and english maths terminology 13:44:05 Guys, a theoretical question 13:44:09 but I imagine the latter is quite rare 13:44:26 If I would in fact find a working linux kernel vulnerability (the chance being 1:infinity in our current reality), what would happen? 13:44:34 (I mean, and used it on HackEgo) 13:44:38 Well, you can't. 13:44:45 First you'd have to escape the plash sandbox (VERY hard). 13:44:48 Then you'd have to use the exploit. 13:45:06 what if it theoretically happened? 13:45:10 So you'd need to find a serious vulnerability in Plash (very unlikely), and then a serious vulnerability in Linux's chroot code (almost impossible). 13:45:25 asiekierka: Then you would find yourself on Gregor's system, as a user with no privileges. All you could do would be to delete HackEgo. 13:45:40 If you then found a Linux exploit that let you elevate to root, you would then be able to wipe out Gregor's VPS. He probably has backups. 13:45:52 So nothing would really happen except I'd waste time and get banned? 13:45:59 Yep. 13:46:11 And HackEgo would disappear? 13:46:32 Until the backup was restored; so a few hours. 13:46:37 It'd probably be set to ignore you afterwards. 13:52:41 Bah, why isn't anyone interesting online. :P 13:52:53 I don't think you need a vulnerability exactly in the chroot code, you just need a local privilege escalation so that you get root inside it; that thing's not supposed to hold raptors, after all. Still, a combination of plash and linux vulnerabilities isn't exactly trivial, and really, getting access to someone's virtual server can't be worth the trouble. 13:52:54 Bah, why can't I do anything interesting in Hack(gr)Ego(r) 13:53:54 Linux local privilege escalation: Even three-year-olds can do it 13:54:04 A vulnerability in chroot code is more likely than privilege escalation 13:54:13 But then you'll only be a useless user. But still. It's the outer VPS. 13:54:22 You could use up all his disk space if he hasn't set a quota (he probably has, though). 13:54:35 You could jam his network, though you could do that from HackEgo anyway. Pointless, though. 13:54:36 If he had a Mac, I could run Lose/Lose on it maybe 13:56:26 "The Royal Standard is never flown at half-mast, as the Sovereign never dies (the new monarch immediately succeeds his or her predecessor)." 13:56:45 THE QUEEN: Literally immortal 13:57:19 alise: So could you design a faster-than-light information-transfer system based on killing royalty? 13:57:35 :D 13:58:09 A. The Queen has four Corgis – Linnet, Monty, Holly, Willow. She also has four Dorgis (cross-breed of Dachshund and Corgi) Cider, Berry, Candy, Vulcan. 13:58:12 The Queen has a dog called Vulcan. 13:59:24 anyone knows HackEgo's IP? Just wondering 13:59:29 whois 14:00:13 ugh 14:00:18 i need longer output from HackEgo 14:01:12 Anyone has any fun idea 14:02:09 Wasn't there some DCC thing, or was that a different bot? Do you remember, fungot? 14:02:10 fizzie: an elven cloak: the hitchhiker's guide to the moonlight and the cimmerian. they are found in many places, not surprisingly, are large, dark shape rose from the chaos and gave it to open locked doors. 14:02:30 alise? 14:03:05 that's EgoBot 14:03:10 or maybe HackEgo does it too 14:03:48 HackEgo Seems To Be Failing 14:03:55 HESTOBEF 14:04:16 i'm trying to compile something and ./configure just won't work 14:09:35 alise I just got my highest upvoted comment on reddit ever 14:09:53 MissPiggy: ah, -649 points! 14:09:55 you're improving! :D 14:10:01 What? 14:10:04 what -649 points 14:11:54 http://www.reddit.com/r/math/comments/b81mh/what_is_the_style_of_hat_worn_by_david_hilbert_in/ 14:11:57 this is making me lol 14:12:01 "Hilbert's Epsilon Hat. 14:12:01 " 14:12:34 "My mom wears one when she gardens. I'm sure you could borrow it. 14:12:35 " 14:18:01 http://kr.img.blog.yahoo.com/ybi/1/9d/96/know_blog/folder/3/img_3_211_3?1141364520.jpg 15:11:06 -!- asiekierk has joined. 15:11:43 -!- asiekierka has quit (Ping timeout: 245 seconds). 15:15:23 -!- lifthrasiir has quit (Ping timeout: 246 seconds). 15:17:15 -!- lifthrasiir has joined. 15:25:48 -!- lereah_ has quit (Quit: Leaving). 15:30:34 -!- coppro has quit (Quit: I am leaving. You are about to explode.). 15:31:48 -!- Sgeo__ has joined. 15:33:56 -!- cpressey has joined. 15:35:03 -!- Sgeo_ has quit (Ping timeout: 268 seconds). 15:45:12 -!- kar8nga has joined. 15:49:55 -!- Asztal has joined. 16:02:26 -!- dev_squid has joined. 16:15:59 -!- cpressey has quit (Ping timeout: 276 seconds). 16:20:36 MissPiggy: I'm writing that thing i said i would explaining why files suck 16:21:04 good 16:23:38 -!- oerjan has joined. 16:24:43 it will be long 16:26:09 -!- cpressey has joined. 16:26:23 all of these just to reduce angular momentum by itself? 16:26:30 -!- tombom_ has joined. 16:26:40 angular momentum is a conserved quality. hth. 16:27:20 so an earthquake couldn't change it, since that's just internal to the earth 16:28:33 oh, yes 16:28:36 -!- tombom has quit (Ping timeout: 260 seconds). 16:29:10 what changes iirc is the moment of inertia, determined by the mass distribution. and that combined with angular momentum changing the rotation and axis. 16:29:28 *changes 16:31:58 The word-pair "combat-wombat" keeps going round my head. 16:32:06 that sounds somewhat awkward 16:32:53 -!- scarf has quit (Remote host closed the connection). 16:34:17 Combat Wombat; that could be the latest Pokémon ripoff. 16:34:56 Kombatto Wombatto 16:35:00 *Kombattu Wombatto 16:37:09 You mean Battletoads rip-off 16:39:56 :D 16:40:04 Combat Wombat vs. Battle Toad 16:40:08 vs. Altercation Albatross 16:47:50 MissPiggy: almost finished the article 16:52:28 If you break out of the plash sandbox, which overrides every single system call, you will find yourself within an empty chroot. 16:52:38 it's the matrix! 16:54:30 MissPiggy: okay, it's done 16:54:31 more or less 16:54:55 Sgeo__: ping 17:12:46 oerjan: Pretty much. 17:13:22 コンバット・ウァンバット! 17:13:44 Sgeo__: pingping 17:13:54 pikhq: do you think files are good? 17:13:54 i find your japanese questionable 17:14:03 as in, i just see question marks. 17:15:02 oerjan: Hah. 17:15:22 alise: I think they're a sign of a poor type system in the OS. 17:15:32 Good! 17:15:35 Then you will like my article. 17:15:44 Now if only I had somewhere to put it; I haven't registered usys.org yet. 17:15:50 I mean, really? An associative array of chars? 17:15:54 Erm. 17:15:59 Associative array of char*s. 17:16:36 don't let your characters associate with arrays 17:17:02 >_< 17:18:40 pikhq: Guess the language: 17:18:44 real :: answer = 42 17:18:57 ehird. 17:18:59 Fortran 90. 17:19:02 Seriously. 17:19:21 ... 17:20:03 yeah. 17:21:34 Sooo. 17:42:34 -!- Gregor has joined. 17:43:55 Hi Gregor. 17:48:00 -!- augur has quit (Ping timeout: 256 seconds). 17:49:22 -!- kar8nga has quit (Remote host closed the connection). 17:50:19 -!- augur has joined. 17:50:27 -!- oerjan has quit (Quit: leaving). 17:59:42 -!- jcp has joined. 18:03:33 Hail. 18:09:13 -!- kar8nga has joined. 18:10:31 -!- augur has quit (Ping timeout: 265 seconds). 18:16:29 I started defining an extension of the rationals with n/0, then I ended up having to define 0/n as special too. Now I'm having to define 0 =/= -0. 18:16:36 I have a sneaking suspicion this is turning into something that isn't anything at all. 18:16:51 0/0 IS EVIL 18:17:37 I was going to have 0/0 as a special case, I think. 18:17:53 As a separate weirdtional where 0*(0/0) = 0. 18:19:46 -!- augur has joined. 18:28:35 alise ... why 18:29:03 Because I was going to have a consistent system with 0/n, dammit, no matter what I had to do! 18:33:13 BREAKING NEWS: INCREDIBLE COMPUTER SCIENTIST EHIRD CRACKS TEN MILLION YEAR PROBLEM 18:33:29 18:34:35 Shaddap :) 18:35:50 Hey, "nullity" can be defined in an axiomatic system. 18:35:52 For one, mine has 0*(n/0) = n. 18:36:07 And 0*(0/n) = 1, but that's an entirely separate issue :P 18:36:08 This guy just claims that he had added it to the ordinary one used for arithmetic. 18:36:17 Which is... Bullshit. 18:36:36 Erm. 18:36:41 Not added it, "discovered" it. 18:36:46 By making a symbol up for it. 18:38:36 alise admit it :! 18:39:08 trying to reconsile division by zero is as braindead as these people trying to 'hide from the clutches of godelian incompleteness' it's just fucking stupid 18:39:53 It's also fun. 18:39:56 I'm not doing it seriously. 18:40:07 I'm doing it to see what crazy, crazy things you have to entail to get it working. 18:43:56 -!- kar8nga has quit (Remote host closed the connection). 18:47:09 "mathematical arithmetic is sociologically invalid" —discoverer of Nullity 18:47:22 it's 100% true 18:50:04 Yay NULLITY 18:55:06 -1*-1 = 1 is EVIL and StUPID 19:01:22 Hey guys. 19:01:30 ohiho 19:02:41 -1 * -1 is the TIME CUBE 19:02:59 yes 19:05:22 My cat is being really weird. 19:05:42 She'll sleep on my bed for a while, then get up and meow at me. I look at her, and she goes back to sleep. 19:07:16 0/0 = pi 19:07:17 I want to learn an esolang that's fun and makes programming a challenge. Any suggestions? 19:07:19 :) 19:07:38 BrainFuck then Befunge then 2L then Glass :P 19:07:43 -!- jcp has changed nick to javawizard. 19:07:52 I've been meaning to try befunge. 19:07:52 dev_squid: Give us some desired weights for "fun" and "challenge" 19:08:05 -!- javawizard has changed nick to javawizard2539. 19:08:12 dev_squid: Agda 19:08:13 Befunge, somewhat more fun, somewhat less challenge. 19:08:16 Gregor, I'm pretty don with BF. 19:08:25 cpressey: Self-promotion ey?! 19:08:33 We'll have none of that round 'ese parts! :P 19:08:35 -!- javawizard2539 has changed nick to jcp. 19:08:48 FYB! 19:08:52 alise: Pft, it's "not challenging enough" for most here, I would guess. 19:08:57 cpressey: Well. Yeah. 19:09:02 Glass is a pretty decent language. 19:09:18 Any language with the Gregor Richards stamp of approval! :P 19:09:26 Gregor: Hahah. 19:09:42 Glass is basically the object-lambda calculus. 19:09:51 Yeah, pretty much. 19:09:56 But with classes. 19:09:56 Damn, esolangs've been around for a damn long time. 19:10:00 Sort of 19:10:02 Also, I only mentioned it because dev_squid mentioned it first. 19:10:10 Oh, INTERCAL. :) 19:10:23 cpressey, hey, if Befunge is fun, I'll try it. :) 19:11:02 Also on the "lighter" side is Kipple. 19:11:22 On the "heavier" side, why not try Malbolge? 19:11:24 Oh balls, Befunge looks interesting. :D 19:12:22 Hahah! I actually read about Malbolge before; I'm looking for a challenge, but that's a little outside of the definition. That is, impossible. :) 19:12:44 Don't let cpressey seduce you 19:12:54 He gave us so many ambiguities in the -98 spec we're still suffering :P 19:13:44 TWELVE YEARS LATER 19:15:08 Not my fault that no one on the committee said "this needs to be more rigorously defined". People preferred to complain about things that really matter, like that my HTML was missing

tags. 19:15:37 :-D 19:15:52 Ooh 19:15:54 Homespring 19:16:04 that was the one i couldn't remember the name of. 19:23:19 cpressey. 19:23:35 [[The sequences ‘ . ’ and ‘. .’ are required to cause a causality paradox in all con- 19:23:35 forming implementations. As such, there are no conforming implementations.]] 19:23:54 cpressey, Befunge is awesomesauce. Where'd you get the idea? 19:24:06 Biota; telepathically :P 19:24:50 Hah, no. 19:24:56 AmigaVision 19:24:59 and BASIC 19:25:12 replacing "goto 100" with an ASCII arrow pointing to line 100. 19:25:32 And was exposed to FORTH at the time. 19:26:30 Biota, for all I can tell, is a lot closer to what I'd call a cellular automaton, though not exactly cellular. 19:27:51 cpressey, did you write an interpreter for Befunge, or didja just idealize it? 19:28:56 dev_squid: I wrote an interpreter for the first version (-93). Being not so much into writing specs at the time, it sort of defined the language, alongside some crude documentation. 19:29:31 cpressey, what did you write it in? 19:29:32 For -98 I compiled the spec with input from the Befunge mailing list at the time, and wrote a very buggy implementation based on it. 19:29:42 Oh cool. 19:29:43 dev_squid: C (both of them.) 19:30:02 I write all my interpreter prototypes in assembly. :) 19:30:02 Um, it was compiled with DICE C on an Amiga 500, originally... 19:30:07 It's tedious. :| 19:31:00 Assembly's fun, but I tend not to implement languages in it often. I guess Shelta is one, and I did try to implement Befunge in x86 once. 19:31:17 "Try". LOL. 19:32:05 Yeah, it was an implmentation of Befunge-93 that I *think* *mostly* works, but I remember it failing badly on some example sources. 19:32:33 The executable was only like 4K or something in size though. 19:32:47 Yep. I remember trying to make a simple BF interpreter in x86 Asm but then failing epicly. To this day, I still don't know what I was doing wrong. >:( 19:33:01 Yeah. 19:34:03 Umm...there's this guy that made a 166-byte BF compiler. 19:34:19 For what? 19:34:37 Which is kittenpunchingly smaller than the 256-byte compiler by Meuller. 19:34:42 Brainfuck. 19:34:50 For what /system/ X_X 19:34:57 Linux x86. 19:34:59 TO WHAT END 19:35:14 (http://www.muppetlabs.com/~breadbox/software/tiny/bf.asm.txt) 19:36:42 I'm pretty sure it violates every single ELF standard in existence, but it *is* 166 bytes. 19:37:17 Yeah, ~breadbox is <3. 19:37:22 I love it. 19:37:32 He also wrote the CGI INTERCAL game. 19:37:54 And http://www.muppetlabs.com/~breadbox/software/tiny/teensy.html 19:37:57 the tiniest ELF executable 19:44:47 -!- Asztal has quit (Ping timeout: 252 seconds). 19:47:32 cpressey, Befunge interpreter. Where? 19:48:05 -!- pikhq has quit (Read error: Connection reset by peer). 19:49:04 dev_squid: I dunno, there seem to be lots to choose from. I've heard a lot good about http://sourceforge.net/projects/cfunge/ 19:49:41 You probably have to build it from that tarball, presumably that is not a problem. 19:50:52 -!- pikhq has joined. 19:51:09 Screw you, X. 19:52:00 cpressey, Needs POSIX 19:52:05 (but I assume that is no issue) 19:52:16 (oh and, it doesn't do 93 really, only 98) 19:56:19 -!- Asztal has joined. 19:57:55 -!- MigoMipo has joined. 19:59:32 cpressey, how does Befunge handle negative numbers? 20:00:39 Negative numbers are useless. 20:01:10 dev_squid: They're like any other numbers in the language... except negative. 20:01:26 :-D 20:03:04 They're stored in threes-complement 20:03:51 Gregor, that would be implementation defined 20:04:05 as in, befunge doesn't expose the bit representation like that 20:04:11 (except using some optional fingerprints) 20:04:11 * Gregor bashes AnMaster's head in with a plastic spork 20:04:18 Gregor, hard hat 20:04:19 :P 20:04:43 Doesn't take a particularly hard hat to protect against a plastic spork :P 20:04:48 Gregor, true 20:04:54 *Main> 1 // (0 // 0) 20:04:55 0 % 0 20:04:55 *Main> 1 // (0 // 1) 20:04:55 1 % 0 20:04:55 *Main> 1 // (0 // 2) 20:04:56 2 % 0 20:04:56 wat 20:05:08 alise, is that % as in modulo? 20:05:13 No, % as in fraction 20:05:15 ah 20:05:17 As in x/y 20:05:20 alise, still. that makes no sense 20:05:23 2/0... 20:05:29 It's the weirdtionals, where division by zero is perfectly acceptable because I said it is. 20:05:36 Which also leads to fun things such as all 0/n being unique. 20:05:42 heh 20:05:49 The "real 0" seems to be 0/1, because (n/1)/(0/1) = n/0. 20:06:07 Apparently (1/2)/0 = 1/0 20:06:11 Who'da thunk it 20:06:29 alise, I *somehow* suspect that certain things may break if 0/2 != 0/5 and so on 20:06:34 I mean, mathematically 20:06:49 AnMaster: My way of working is: Define something to work. Find a contradiction. Fudge things so that it's no longer a contradiction. 20:06:57 alise, :D 20:07:01 I'm losing all sorts of properties of course, addition and multiplication don't even distribute over each other 20:07:26 alise, oh that follows from 0/x being allowed? 20:07:28 err 20:07:30 x/0 20:07:42 yeah I was finding out the multiplicative inverse for (x/0)s 20:07:51 1/(x/0) = swap the two sides = 0/x 20:07:55 so (0/x)*x = 1 20:08:00 so we need distinct (0/x) for all x 20:08:07 ouch 20:08:16 alise, what is your goal with this 20:08:25 Make division by zero work. 20:08:32 ah, good luck 20:09:09 if you actually made it work sensibly (and in a rigorous way) then you would probably get the Fields medal at least! 20:09:34 The problem is that the resulting system is not likely to be very usable for anything 20:09:45 Deewiant: Of course. 20:09:48 AnMaster: Unlikely. 20:09:48 -!- BlackOut has joined. 20:09:51 -!- MizardX has quit (Read error: Connection reset by peer). 20:09:52 Distributivity is a rather nice property 20:09:55 alise, well, depends on how you solve it 20:09:58 Of course you can define things but since you do lose properties like distributivity of addition it's not really addition any more 20:09:58 alise, and yes indeed 20:10:09 And hence not very Fields-worthy, it's just another formal system 20:10:11 -!- MizardX has joined. 20:10:36 -!- BlackOut has left (?). 20:10:39 Hey, alise is here. 20:11:07 yeh 20:11:27 Deewiant, hm, don't you lose distributivity somewhere in the Cayley–Dickson construction? 20:11:38 or was that one of the few properties you didn't loose? 20:12:24 Does that mean alise is out of Britain? 20:12:30 cpressey, yay! My first Befunge program...sort of. I modified an example. :) 20:12:34 cpressey, http://pastie.org/850440 20:12:35 The problem here is that you lose distributivity over addition of fractions, not hypercomplex numbers :-P 20:12:49 Deewiant, true 20:12:56 uorygl: No. 20:13:02 alise, oh wait, this isn't even a ring any more is it? 20:13:02 Just that a bigger crisis is overriding atm. 20:13:06 AnMaster: ^_^ 20:13:20 Oh, a bigger crisis. Hmm. 20:14:32 alise, if you managed to solve it without loosing distributivity then you would get the Fields medal I guess ;P 20:14:48 I'd win the Pigs Can Fly medal because it'd be contradictory and we could derive anything. 20:14:51 Unless you also lose associativity etc 20:15:06 I want a Pigs Can Fly medal 20:15:13 Deewiant, me too! 20:15:32 What do I need to do to get one? 20:16:00 The n being irrelevant in (m/n)/0 disturbs me. 20:16:08 heh 20:16:10 Deewiant, do something that over-qualifies you for the Ig Nobel price? 20:16:32 Meh, too much work 20:19:12 cpressey, would you recommend (http://www.ashleymills.com/?q=befunge_applet_lite)? Most programs it's running makes it throw a "memory cell out of range" error when it hits a 'p'. 20:20:00 Are you sure you're p'ing into the 80x25 area? 20:20:02 -!- Azstal has joined. 20:20:19 If you are, then I definitely wouldn't recommend it because it's buggy :-P 20:22:21 *Main> (1//0) 20:22:22 1 % 0 20:22:22 *Main> (1//0)+(0//0) 20:22:22 2 % 0 20:22:28 cpressey, were you aware that there existed such a website as "www.quote-egnufeb-quote-greaterthan-colon-hash-comma-underscore-at.info"? 20:22:48 The worst thing is, I'm not even sure that doesn't make sense. 20:23:06 -!- Asztal has quit (Ping timeout: 265 seconds). 20:23:25 dev_squid, I'm pretty sure he does know as we discussed a program on there recently 20:23:28 It makes sense if and only if it's useful or makes sense. 20:23:35 uorygl, :D 20:25:11 uorygl: without it I can't seem to stick to one multiplicative identity :( 20:25:46 -!- MaXo2 has joined. 20:26:07 -!- increnaisi has joined. 20:26:09 Whenever you're having trouble doing something, try proving its impossibility. 20:26:15 -!- increnaisi has left (?). 20:26:46 AnMaster, I didn't know that...anyway, I still can't find a working Befunge interpreter for Win32. 20:26:56 Might there be an IDE? 20:27:17 WIN32 20:27:18 GET OUT 20:27:19 GET 20:27:19 OUT 20:27:26 We don't want your kind here. 20:27:41 :P 20:27:45 uorygl: But I don't accept the law of the excluded middle! :P 20:27:51 Yeah, yeah...I only keep it for the game. 20:27:51 (Yes, I know, fallacy. Also: Joke.) 20:27:53 *games 20:27:55 dev_squid, for windows? No clue 20:27:59 can't help you there at all 20:27:59 Constructivism ftw, though. 20:28:06 Such a poor excuse :P 20:28:12 dev_squid: Only recently. (I haven't been involved in Befunge in a long time. I've spent much of my recent time designing weirder, less popular languages.) 20:28:19 Nor do I if the law of the excluded middle is "Every statement has either a proof or a disproof." 20:28:24 cpressey, like what? 20:28:35 -!- MissPiggy has quit (Quit: Lost terminal). 20:28:55 dev_squid: If Befunge-98 is fine, my interpreter works on Win32. 20:29:09 uorygl: LEM = p|(p->false) 20:29:12 Which, yes. 20:29:27 Um, it was compiled with DICE C on an Amiga 500, originally... <-- fun. And unexpected. 20:29:44 Deewiant, what's the difference? 20:30:02 If you restrict yourself to the Befunge-93 instruction set: not much. 20:30:20 Deewiant, SGML spaces 20:30:21 Deewiant, so it's just a superset? 20:30:35 Division by zero is defined (gives 0), SGML spaces, bigger funge-space 20:30:45 dev_squid: I said "not much" not "nothing" :-) 20:30:52 alise, hey! ^ 20:31:01 alise, solved your problem there ;) 20:31:05 dev_squid: Everything >= 1998 on this page: http://catseye.tc/cpressey/languages.html 20:31:34 dev_squid: SGML spaces means that "x y" pushes the same three characters as "x y" 20:32:13 And of course, there's the fact that due to more instructions, you can't rely on them reflecting like they did in Befunge-93. 20:32:23 *Main> (5//6)*(0//3) 20:32:23 0 % 18 20:32:52 I am not sure this means anything at all. 20:33:00 dev_squid: Anyway, http://iki.fi/deewiant/befunge/ccbi.html has a binary if you're interested. 20:33:00 Deewiant: Also the stack and fungespace cells have the same size. 20:33:02 Hmm. 20:33:09 Deewiant: '93 had 8-bit fungespace. 20:33:11 Ah yes. 20:33:14 cpressey, btw, what do you think should happen on EOF on stdout? The way I read the spec, the program should not end, but reflect 20:33:32 cpressey, same goes for STDIN 20:33:46 So, (a/b)(c/d) = (ac)/(bd), and a/b + c/d = (ad + bc)/(bd)? 20:33:47 AnMaster: Reflect sounds like saner behaviour that just bombing, for sure. 20:33:52 *than 20:33:56 Frac m1 n1 + Frac m2 0 = ((m1%n1) + (m2%1)) // 0 20:33:56 Frac m1 0 + Frac m2 n2 = Frac m2 n2 + Frac m1 0 20:33:56 Frac m1 n1 + Frac m2 n2 = ((m1*n2)+(n1*m2)) % (n1*n2) 20:34:00 cpressey, this means that ctrl-d doesn't kill the program of course 20:34:01 Frac m1 0 * Frac 0 n2 = m1 % n2 20:34:01 Frac m1 n1 * Frac 0 n2 = 0 // ((n2%1)//(m1%n1)) 20:34:03 (//) :: WT -> WT -> WT 20:34:03 (Frac m1 n1) // (Frac m2 n2) = (m1*n2) % (n1*m2) 20:34:11 In general everything should reflect, not bomb 20:34:13 There's nothing inconsistent about treating 0/0 and its brethren that way. 20:34:13 I'm not done with * 20:34:20 Or is there? 20:34:21 Deewiant: Yeah, then we wouldn't have any wars. 20:34:23 Deewiant, well iirc you didn't catch SIGPIPE? 20:34:28 Deewiant, thanks. 20:34:33 fizzie, augh 20:34:34 fizzie: Exactly! 20:34:46 World peace via Befunge. 20:34:51 Deewiant, hey there 20:34:51 AnMaster: Might be, haven't tested. 20:34:54 Deewiant, wrong url 20:34:57 Deewiant, you meant "http://iki.fi/matti.niemenmaa/befunge/ccbi.html" 20:34:58 :P 20:35:06 uorygl: Who knows? 20:35:16 Deewiant, see, if you forget that yourself, don't complain when I don't use the perma link :P 20:35:19 AnMaster: They're equivalent, but no point in giving both alternatives on t he site. 20:35:25 AnMaster: Both are permalinks. 20:35:27 Well, see if those are associative, commutative, and distributive. 20:35:30 Deewiant, hrrm 20:36:04 uorygl: They are not distributive. 20:36:12 No? 20:36:13 I'm sacrificing that for having "coherent" division-by-zero. 20:36:18 uorygl: Uh, I don't think so... 20:36:20 Deewiant, works perfectly. Thanks. 20:36:25 What does the failure of distributivity look like? 20:36:32 dev_squid: No problem. :-) 20:36:36 I don't actually remember, I've been banging this out for a whole 20:37:08 *Main> 0*(1//(3//0)) 20:37:08 0 % 3 20:37:09 :( 20:37:15 Needs to be 1... or, wait, no. 20:37:16 AnMaster: It's just when I type them by hand, "deewiant" is shorter so I use that. 20:37:23 *Main> (3//0)*(1//(3//0)) 20:37:23 1 % 1 20:37:24 Yay!! 20:37:27 Deewiant, heh 20:37:32 *Main> (3//0)*(2//(3//0)) 20:37:32 1 % 1 20:37:33 Nay!! 20:37:44 uorygl: fixem 20:40:15 Meh 20:43:45 Sgeo__: ping 20:45:54 cpressey, beautiful. (http://pastie.org/850514) 20:46:32 why 00 at the start? Seems pointless 20:46:41 to push zeros on an empty stack 20:46:51 after all popping from empty stack yields zero 20:47:36 AnMaster: does cfunge optimize away pushing zero onto an empty stack? :) 20:47:45 What's with the infinite loop at the bottom 20:47:59 cpressey, that would take too long checking for! 20:48:02 Probably not worth optimizing that 20:48:04 Yeah 20:48:15 BUT THINK OF THE WASTED SPACE etc 20:48:20 cpressey, in an optimising JIT it might be worth it 20:48:28 cpressey, also, the stack size in y wouldn't work out 20:48:39 cpressey, and I just use ip->stack->top for it 20:48:50 (ip->stack points to TOSS) 20:48:59 AnMaster, true. 20:49:02 Ah yes, you can check for that can't you. It means zeros at the bottom of the stack have to be recorded somehow. 20:49:15 Recorded... with LOVE 20:49:24 cpressey, well yes, and that would mean another 8 bytes wasted! 20:49:27 Mycology tests that \ on an empty stack increases the stack size to 2 20:49:36 yes it does 20:49:45 which broke my optimisation of \ 20:49:50 which was peek, push 20:49:51 And mine :-) 20:49:56 instead of pop push push 20:50:39 cpressey, but cfunge does stuff like only shrink the bounds of funge space in case anyone looks 20:50:42 if (empty) push zeroes else peek push - might be faster 20:50:51 Deewiant, it's there because the interpreter doesn't seem to have a pause-at-terminate option. 20:50:57 Deewiant, I actually do that :P 20:51:06 AnMaster: :-) 20:51:20 dev_squid: Well yes, it generally assumes command prompt usage 20:51:29 dev_squid: You can always use ~ before @ 20:51:40 but that is wrong IMO :P 20:51:50 because normal usage is from terminal 20:51:53 Better than an infinite loop IMO 20:51:58 true 20:52:04 Deewiant, true. I just drag and drop. I'm lazy. 20:52:17 that seems like more working than just typing 20:52:21 Whatever floats your boat :-P 20:52:24 since you have the terminal open anyway all the time 20:52:36 I doubt he does 20:52:40 oh yeah windows 20:52:47 forgot windows terminal sucks 20:53:01 AnMaster: Please blow your predictable hot air elsewhere. 20:53:04 Yes, Windows sucks. We get it. 20:53:09 alise, I didn't say that. 20:53:12 But it's really not interesting, that it sucks. 20:53:12 Deewiant, if you want to get technical, ~ is, itself, and infinite loop. 20:53:17 alise, what I said was that cmd.exe sucks 20:53:26 "since you have the terminal open anyway all the time" is obviously just prelude to "OH LOL WINDOWS SUX" 20:53:43 alise, and if you disagree with that cmd.exe sucks, please explain why 20:53:47 dev_squid: How's that 20:54:02 I'm so oldschool, I don't use a desktop environment on my Linux platform. /flex 20:54:17 AnMaster: command.com is worse 20:54:22 Deewiant, true 20:54:32 -!- asiekierk has quit (Ping timeout: 240 seconds). 20:54:46 heh, like the programming teacher at university. He used twm. I was really surprised first time he hooked up his netbook to the projector.... 20:55:06 What's wrong with twm? :-P 20:55:16 Deewiant, very funny 20:55:22 Deewiant, well, ~ is an infinite loop that breaks when stdin changes. 20:55:23 Deewiant, ask alise instead 20:55:28 dev_squid, what? 20:55:39 dev_squid, ~ just waits, it doesn't busy loop 20:55:43 dev_squid: Well, semantically, I suppose you can say that 20:56:05 It's an argument from convenience, of course 20:56:14 `translate B skal straks se film med C. 20:56:24 B must immediately watch movies with C. 20:56:35 uorygl, if that is Swedish, it is extremely confusing... 20:56:41 Oh? 20:56:44 AnMaster, ~ doesn't halt the program (interpreter). It sends it into a loop that breaks when you input a character. 20:56:57 AnMaster, execution never halts. 20:57:11 `translate Hva de skal se, vites ikke enda! 20:57:13 What to see, is not known yet! 20:57:17 Is "skal" Swedish in that kind of meaning? I think not. 20:57:27 uorygl, "B shall/bark straks view movie with C" 20:57:33 uorygl, where "straks" doesn't exist 20:57:58 From the second example I am convinced that this is Norwegian 20:58:03 uorygl, wait, it isn't shall or bark 20:58:05 uorygl, it is "shell" 20:58:11 uorygl, since there is only one l 20:58:12 Yep, in Swedish 20:58:15 I guess it's not Swedish, then. 20:58:20 It's Norwegian. 20:58:29 Deewiant, probably 20:58:32 or Danish? 20:58:44 I'm pretty sure "hva" is only Norwegian. 20:58:54 `translate Hva de skal se, vites ikke enda! <-- yeah that looks like Norwegian indeed 20:59:35 Jatsu tsappari dikkari dallan tittari tillan titstan dullaa, dipidapi dalaa ruppati rupiran kurikan kukka ja kirikan kuu. 20:59:46 uorygl, I defer to Deewiant on that one 20:59:48 :P 20:59:54 It's from Ievan polkka 21:00:08 Deewiant, and what is that? 21:00:17 It's Finnish that doesn't mean anything, I think. 21:00:19 A song 21:00:23 Deewiant, I see 21:00:27 http://leekspin.com/ 21:00:42 <3 21:00:43 uorygl, ? Missing plugin? 21:00:47 And yes, it's just onomatopoeic, it doesn't mean anything 21:00:59 uorygl: <3 21:01:14 uorygl: Nice subversion :P 21:01:15 LOVEFEST 21:01:19 The leekspin one is a sped-up version of the Loituma one, IIRC 21:01:38 Might not be sped up, can't remember. 21:01:41 Is it sped up? 21:01:54 You want me to check? :-P 21:02:43 It doesn't seem to be sped up. 21:02:45 -!- cmeme has joined. 21:02:51 That one isn't, at least. 21:03:02 I seem to recall a version that was but maybe I'm thinking of something else 21:03:16 Nuapurista kuulu se polokan tahti jalakani pohjii kutkutti. 21:03:32 Ah, I actually think I'm thinking of caramelldansen 21:04:11 "From the neighbour's sounded the polka's beat the bottoms of my feet were tingling" or something to that effect 21:04:46 The translation I saw was something like ". . . and set my feet a-tapping, oh!" 21:05:02 -!- MigoMipo has quit (Read error: Connection reset by peer). 21:05:17 That's less direct a translation but equally valid I suppose 21:05:27 * uorygl nods. 21:07:05 -!- cal has joined. 21:07:05 -!- cal has quit (Client Quit). 21:08:55 Deewiant: you should host an .html file for me. In return, I will grant you: ONE (1) KITTEN UNICORN 21:09:15 Sounds nifty. What .html? 21:09:46 It's called files-suck.html and it is about how files suck. 21:09:57 Yes, I realise that it is itself a file. 21:10:02 I blame society^Woperating systems. 21:10:28 lawl, I'd love to see this :P 21:10:30 You want this permanently hosted or why're you asking me? 21:11:17 Well, because I'm not entirely sure who else to ask. There isn't an htmlpaste.org or anything :P 21:11:29 Gregor: THEN HOST IT 21:11:40 There should be an htmlpaste.org. 21:11:44 Does it lose much in plaintext form, then? :-P 21:11:56 Beautiful typography :| 21:12:05 -!- augur has quit (Read error: Operation timed out). 21:12:13 And ITALICS 21:12:51 I'll host it if I get to put a CSS saying * { font-family: monospace } associated with it 21:13:01 If you do that I verily will cry 21:13:23 How about font-face: Comic Sans 21:13:35 That works too I suppose 21:13:35 "Google is working on strong AI in the same way that NASA is working on interplanetary travel. Not yet, but...someday. They're working on the smaller problems that need solving, and eventually they'll put it all together." —Norvig 21:13:35 I sure hope they know how to make individual components Friendly. 21:13:40 Gregor: HOST IT 21:13:54 uorygl: Host it — in SPACE. 21:14:33 Can I host it at http://codu.org/stupid-nonsense/files-suck.html 21:14:40 Host what? 21:15:01 uorygl: It's an .html file. 21:15:30 Host it on Normish. 21:15:57 But I forgot every single thing about Normish. 21:16:42 Like its IP address? 21:16:48 Well, for one. 21:17:00 Its IP address can be found somewhere in #rootnomic. 21:17:28 -!- dev_squid has quit (Ping timeout: 260 seconds). 21:18:15 why isn't there Comic Sans Mono? 21:18:18 I mean, combine them 21:18:21 X-D 21:18:25 Best worst idea ever. 21:18:31 ow 21:18:40 I ostensibly own normish.org and all, but I can't be bothered trying to figure out who I have it registered with. 21:18:48 Gregor, should be a bitmap font of course 21:18:52 :D 21:19:06 YES. 21:19:36 Gregor, and the official name should he the full old style X font string 21:19:45 -!- dev_squid has joined. 21:19:47 YES. YES YES YES. 21:20:00 AnMaster: You are my temporary hero. :P 21:20:09 Gregor, and we should force alise to actually make this font for us 21:20:14 in return for hosting that thing 21:20:24 (and that thing should be forced to use this font) 21:20:34 of course, it had to be done propertly according to specs 21:20:39 alise: I suggest a data URL. 21:20:40 Because finding a way to host a file is sooooo difficult :P 21:20:41 Befunge question. What's a good tactic to use when you're trying to print a fixed number of ASCII characters from the stack? 21:20:42 Fixed. 21:20:46 pikhq: Way too big 21:20:57 Point a CNAME record at a data URL. 21:21:02 dev_squid, why fixed? But for 98? k 21:21:07 :P 21:21:15 dev_squid: Befunge-98: push the number of characters minus one, then use "k," (without the quotes) 21:21:22 dev_squid, for 93, I would do a 0gnirts instead 21:21:33 alise: Oh, hey. http://pastehtml.com/ 21:21:35 uorygl: CNAMEs don't point at URLs 21:21:48 pikhq: The main person who needs it may technically already have it. 21:21:51 >_> 21:22:08 Hence the :P 21:22:15 AnMaster, 0gnirts? 21:22:26 dev_squid, 0"string goes here" 21:22:29 So, yeah. Pastey? 21:22:29 dev_squid: 0-terminated string stored last-to-first 21:22:38 dev_squid, well that is 0"gnirts" of course 21:22:42 I.e. first character on top, so it's easy to print 21:22:45 Deewiant, then you can use the common idiom for it 21:22:53 AnMaster, yep. Okay. :) 21:22:53 Deerr 21:22:54 err 21:22:55 AnMaster: I know this. 21:22:55 dev_squid, ^ 21:22:57 :-P 21:23:02 De :P 21:23:06 and "last spoke" 21:23:22 dev_squid, anyway: the idiom being >:#,_ 21:23:25 Maybe you should read what you type 21:23:31 (mirrored and vertical versions exist) 21:23:37 AnMaster, oh, I'm so dumb. I was thinking "Crap, if I use >:#,_ then I'll run into my other data" 21:23:45 I just push a 0 before...*facedesk* 21:23:46 Deewiant, no, I read what other people say while I'm typing 21:23:46 :) 21:24:07 AnMaster: Maybe you should glance over your line on occasion 21:24:15 I have no trouble reading both at once 21:24:30 Just point one eye at each thing you want to look at. 21:24:31 Deewiant, well sure, but then you have to disconnect your eyes 21:24:39 uorygl, hah, beat you to it! 21:24:42 by half a second 21:24:45 On the contrary. 21:25:01 AnMaster: You lost from my POV 21:25:05 uorygl, well, lag means we will never know 21:25:14 who was truly first 21:25:20 * Ping reply from uorygl: 1.08 second(s) 21:25:39 I have about a hundred milliseconds of "extra" lag. 21:25:43 More like there is no "truly first" 21:25:53 Deewiant, oh? 21:25:56 Why Files Suck: http://pastehtml.com/view/5tmr7u1.html 21:26:01 Have at it, you gallery of peanuts. 21:26:12 alise, why is it like very narrow 21:26:14 it looks weird 21:26:17 in my browser 21:26:20 -!- cpressey1 has joined. 21:26:26 30em ~= 10 words a line ~= best typographical reading width. 21:26:30 Look at a book's width sometime. 21:26:34 alise, why not center it in the window 21:26:40 rather than have it aligned out at the edge 21:26:50 that way I have to turn my head slightly to read it 21:26:50 Dunno. Didn't feel like it. Would look weird with ragged-right text, anyway. 21:27:02 not comfortable for long sections 21:27:13 alise, why not adjusted margins? 21:27:33 Browsers are really, really bad at justified text. 21:27:36 * AnMaster is forced to un-maximise browser window and move it so the text is near the middle 21:27:45 Oh, the horror. 21:27:46 alise, why don't they just implement the TeX algo? 21:27:51 Because that's hard. 21:28:33 "A superior way to represent [a collection of unordered photos] would be as an unordered bag." 21:28:37 How would that be easier for anyone? 21:28:53 My browser size was already 797x358 or thereabouts 21:28:55 alise, indeed. You know why Hitchcock never made a horror/thriller about unmaximising the browser window? 21:29:02 alise, well, because it was too horrible of course 21:29:05 Just double-checking...if I use a null-terminates string with >:#,_ the 0 will be popped off, right? 21:29:09 Or because they didn't have browsers then :P 21:29:14 alise, well that too 21:29:30 uorygl: No needless arbitrary naming with the disadvantages given; it fundamentally is an unordered bag 21:29:34 dev_squid: No, it won't. 21:29:41 dev_squid, well, yes but also duplicated before that 21:29:43 Append a $ for that 21:29:46 so there will be one zero at the end 21:29:51 uorygl: Anyway, I think I come back to that later. Maybe. 21:29:57 Deewiant, the zero *will* be popped off, just not the last zero 21:30:01 since it was duplicated 21:30:12 AnMaster: "the" zero that was there originally is not popped off 21:30:16 -!- cpressey has quit (Ping timeout: 268 seconds). 21:30:27 alise: so the lack of any way to refer to a specific file using a string makes things easier for the user? 21:30:28 AnMaster, oh I see. 21:30:30 Deewiant, well, depends on how : is implemented 21:30:31 :P 21:30:45 Semantics, not implementation details, please. 21:30:54 uorygl: Meaningless. My proposed system has no "files". 21:31:06 alise: so the lack of any way to refer to a specific photo using a string makes things easier for the user? 21:31:06 Anyway read the rest before making a judgement based on the incomplete impression of the proposed system you have 21:31:14 Sure. 21:31:16 uorygl: I never suggested there was such a lack. 21:31:19 dev_squid, but Deewiant's answer is actually more useful than mine. Mine is just trying to answer to something else by exploiting loopholes in the question :P 21:31:26 Anyway, it does not propose a solution. 21:31:33 It says /why/ we need a solution, and some aspects it should have. 21:32:08 Okay, so to review, the right-to-left version of >:#,_ is _!,#: right? 21:32:13 -!- cpressey1 has changed nick to cpressey. 21:32:15 Nope 21:32:41 alise, photos often have inherent ordering due to "taken before/after" 21:32:49 dev_squid: It's _,#! #:< 21:32:53 That's one particular ordering you can give them. 21:33:00 Not an /inherent/ ordering. 21:33:04 alise, the one the camera gives them and a rather useful one 21:33:10 but sure 21:33:51 Deewiant, yeah, I just found the flaw. :) 21:34:23 alise, also, for many purposes a directory/file name model fits very well 21:34:43 AnMaster: Firstly, no it doesn't. Secondly, that doesn't mean there aren't better structures. 21:34:52 alise, like, "project/{source_data.csv, report.tex}" 21:34:54 or such 21:35:02 Sure. That's just a hierarchy. 21:35:10 of course, the file extension is another matter 21:35:18 Here it is in OOP: project.source_data is-a Table 21:35:23 project.report is-a TypesetDocument 21:35:32 OOP is just one way you could represent that, of course. 21:35:36 alise, typeset with what system 21:35:42 It was an example, dammit. 21:35:45 :P 21:35:59 So, you say that a superior way to represent the collection of photos would be as an unordered bag. 21:36:10 alise, why not Document.Type.TypesetDocument.TeX.LaTeX? :P 21:36:14 A directory full of files *is* an unordered bag, except that each file has a unique label. 21:36:24 -!- augur has joined. 21:36:31 As far as I know, those labels never get in the way of anything. 21:36:42 uorygl: Here is an example path — just one of many possible sort of syntaxes — you could use. 21:36:43 alise, as opposed to Document.Type.TypesetDocument.TeX.ConTeXt or Document.Type.TypesetDocument.roff.nroff 21:36:54 photos.select {takenAt==exactTimestamp} 21:36:56 (or should that last one just be troff?) 21:37:00 Perhaps my example was not the best. 21:37:05 My other points apply regardless, though. 21:37:06 alise, ah, object database 21:37:09 I see what your aim is 21:37:13 AnMaster: No, that's ONE EXAMPLE. 21:37:14 I hate OOP. 21:37:16 I don't want OOP. 21:37:19 ah okay 21:37:21 But most people understand OOP. 21:37:33 Most people wouldn't understand my system without lots of backstory to how it works :P 21:37:34 alise, anyway the file name isn't used to order the files 21:37:45 Never said it was. 21:37:54 I guess programs have a reason for storing stuff in databases rather than directly in files. 21:38:04 In a collection of photos, no photo has an inherent “name” — one must be constructed from some arbitrary properties of the photo. If the properties are not chosen well enough, there might even be conflicts. These are usually resolved by appending a meaningless number to the photo considered later — even though there is no inherent ordering. 21:38:06 The point is 21:38:11 we save photos to disk in a certain arbitrary ordering 21:38:23 we append -1,-2, etc when we've already seen a photo with the same generated name 21:38:28 uorygl, well, ACID is a pretty good reason for some usages 21:38:35 but "which ones have -1" is completely arbitrary and stupid 21:38:37 because there is no ordering 21:38:44 we're exposing an implementation detail of the disk-saver 21:39:00 Hmm, I like the idea of not exposing implementation details. 21:39:17 -!- MigoMipo has joined. 21:39:26 alise, there are good reasons to store images as png rather than raw uncompressed bits 21:39:32 AnMaster: Read on. 21:39:33 Read on. 21:39:37 Read the whole section before commenting! Jesus. 21:39:51 It's not a long article, and it covers that point :P 21:39:55 alise, also, what is the image format you suggest? What about 32 bit floating point numbers per channel? 21:40:01 READ 21:40:01 ON 21:40:16 Reading about Objective-C and how "transparent" it is really made me... 21:40:24 Just one more question. What if I want to subtract a number and an already-pushed number in the reverse order that - does the job? 21:40:25 uorygl: ...ontologise? 21:40:30 Think about C and its pointers and how they're really inconvenient for a certain niche purpose. 21:41:03 Also, although I doubt anyone here will ever want to link to this piece of complete and utter tripe :P, http://catseye.tc/ehird/files-suck.html is now a more permanent home for it. Thanks cpressey! 21:41:40 alise, if I just dumped some of those panoramas I made to disk I would get images half a GB large. That is why you use deflate on them. Even between the programs used to operate on said files. 21:41:49 Okay, I will say this one last time. 21:42:04 I'm at the next section now 21:42:04 Until you read the entire thing /I will not answer anything more you say about it/ because this is /covered/. 21:42:52 "Surely the very fact that we so often forget to save our files should set alarm bells off in the mind of anyone who wants to improve user interfaces."? 21:42:54 that isn't true 21:43:02 I usually save every half minute or such 21:43:13 "We" is not "you" 21:43:36 Deewiant, you forget to save files? 21:43:44 I never met anyone that had that issue mentioned there really 21:43:46 "We" is not "me" either 21:44:14 I've heard of people losing significant amounts of data come power failure or similar 21:45:20 so I read it all 21:45:31 alise, how would this transparent compression/parsing work then? 21:45:56 alise, would it be in the OS? 21:46:00 alise, now I read it all 21:46:03 so you have to answer 21:46:25 alise's wording is so hilariously whiny that it's hard to figure out what parts are the actual arguments and which parts are just whining :P 21:46:32 Gregor, true 21:46:46 and the whole thing breaks down because there aren't common formats for many purposes 21:47:21 would there be a OS level supported document.cas for mathematica and maxima? 21:47:34 (never mind that those aren't compatible in design at all) 21:47:53 and then, png can't be used for HDR images 21:48:04 due to a lack of support for such things as floating point values per channel 21:48:44 and the number of data formats that could be somewhat commonly supported is huge. And should you use lossy or loseless? 21:49:00 Presumably, mathematica has a data structure it stores notebook files in. 21:49:24 alise, also png doesn't support layers for example 21:49:36 would you use xcf or psd? Or something that supported both? 21:49:57 You assume that there is one single type to represent images for everyone. 21:50:01 alise, no 21:50:02 You assume there is only one format per single type. 21:50:03 I don't 21:50:09 Yes you do because your arguments are based on that. 21:50:15 but I point out that apart from common data interchange formats this breaks down 21:50:35 "[21:47] AnMaster: and then, png can't be used for HDR images" 21:50:40 So HDRImage doesn't support the PNG backend. 21:50:51 alise, What exactly is HDRImage? 21:50:55 that sounds like a single thing 21:50:57 which it is not 21:51:03 And if you want to process HDR images in a special way that some standard HDRImage class wouldn't work for, just have your own HDRImage in your thing. 21:51:14 -!- ruhtranayr has joined. 21:52:43 alise, sorry, but that statement doesn't mean anything until you define what you suggest a "standard HDRImage class" would be able to do 21:52:49 Not a class. 21:52:59 alise, I copied that from you 21:53:02 The vector class in a standard library may not be appropriate for all uses of vectors. 21:53:09 indeed 21:53:10 Which is why you make your own if it's not suitable. 21:53:12 Duh. 21:53:35 alise, well, but point is then you need to define your own way to serialise it 21:53:41 No. 21:53:54 All objects have a common serialisation format. If you want to use the standard image backends, call them according to their interface. 21:53:56 because what you don't want to do is store any HDR image raw. 21:54:00 My second Befunge program. :) 21:54:01 http://pastie.org/850663 21:54:05 that 500 MB is *after* deflate 21:54:06 not before 21:54:10 See above. 21:54:14 before is several times larger 21:54:25 alise, then you need to interface with it 21:54:34 AnMaster: Deflate is a piss-poor compression format for most anything. ;) 21:54:48 AnMaster: Trivial. Defining such a custom representation should not be very common, anyway. 21:54:53 There will be a library entirely for it, most likely. 21:54:53 pikhq, you know png uses it? And that works out quite well 21:54:55 dev_squid: Note that if you don't really have a need to head left after printing, you can also use >:#,_v#: which heads down at the v when it's done 21:55:12 AnMaster: Still crap. 21:55:16 pikhq: I take it you, being sane, have mostly no objections to the article :P 21:55:23 pikhq, also, since tiff is the common format here, you have basically packbits, lzw deflate to select from 21:55:30 alise: Eh, it's a bit whiny. But *shrug*. 21:55:31 pikhq, and there, deflate beats the other ones 21:55:41 I meant the contents, not the whininess. 21:55:48 Mmm. 21:55:52 Not especially. 21:56:25 I didn't write it to be whiny, anyway. Maybe it's just because I'm almost certain I'm right :P 21:56:30 alise, I always found file systems a very nice way to organise data though. *shrug* 21:56:34 Either that or I'm inherently whiny. 21:56:39 alise, the latter! 21:56:57 AnMaster: 1, you don't know any better systems. 2, we've established that you're basically designed for using Unix. 21:56:58 alise, also, go implement it 21:57:02 AnMaster: I find that file systems work very well for organising very specific forms of data. 21:57:03 That just makes /you/ faulty. :-) 21:57:04 AnMaster: I am. 21:57:11 alise, I do like plan9 though 21:57:12 Anything inherently hierarchical, basically. 21:57:14 I have to write the principles to create a design to implement it. 21:57:27 pikhq: Which is no reason to make everything a tree, of course. 21:57:33 alise, I just don't want to use it for daily use due to the lack for certain things, like supporting my disk controller 21:57:39 I find that hierarchical file systems fail where hierarchies fail. 21:57:40 alise: Yes. Just saying they work very well when a tree is natural. ;) 21:57:45 (at least last I checked) 21:57:50 Trees: Good for representing trees. 21:57:54 pikhq, yes 21:58:00 alise: Yes. 21:58:09 Yes. 21:58:48 * pikhq would like to see an OS where you just stick values in data structures when you want them to be organised somehow. 21:59:16 pikhq, that is scheduled to be invented right after the "do what I mean" operation 21:59:19 What if I "p" a null or non-printable ASCII character to a position? Will the rest of the line shift left? 21:59:19 Hi, my OS here. I'd ask you to purchase me, but it's free. 21:59:26 AnMaster: What? You believe serialising data structures is hard? 21:59:28 pikhq, still a few years off sadly :P 21:59:33 Uh. 21:59:35 alise, no... 21:59:39 Orthogonal persistence: Yeah, serialise objects to disk. Easy. 21:59:44 I'm asking for freaking Smalltalk. 21:59:48 A user interface where you create a data structure: That's what ... most UIs are. 21:59:55 pikhq, ah, then I misunderstood you 22:00:18 I just want to say "I want these images organised into a single group. I'll stick them into a bag." 22:00:31 pikhq, I thought you meant like "here are some data structures with values, organise them in a sensible way" 22:00:49 Nope. I want "Here are some values, stick them into this data structure." 22:00:50 my os is #usys btw, in case i haven't said that enough already 22:01:11 pikhq, well, try mov ;P (intentional misinterpreting) 22:01:38 "Saving"? Bah. That's sync. 22:01:54 Saving? Bah. That's done quicker than you can even notice. 22:01:58 actually saving makes sense sometimes 22:02:02 By the computer. 22:02:04 consider a database transaction 22:02:10 you want things either complete or not done at all 22:02:13 "Saving" is an action derived from my level of interest in the data. 22:02:15 of course, that isn't the common case 22:02:27 Incidentally, such an "auto-saving" system of course requires revision history. 22:02:32 What if I "p" a null or non-printable ASCII character to a position? Will the rest of the line shift left, potentially changing program flow? o.o 22:02:39 Or just deleting the entire contents of a document would permanently erase it; obviously untenable. 22:02:43 alise: I'm saying "Saving? Isn't that just making 100% sure it's on disk? ... So, sync()." 22:02:46 So we have everything versioned! 22:02:46 alise, you know how long saving a 700 MB image in RAM to disk takes? 22:02:47 Woo hoo 22:02:54 dev_squid: No, you just get a weird character at that location. 22:03:03 alise, even with no compression 22:03:07 AnMaster: One, deduplicative storage (plan 9 already does basically what i'm saying and it uses deduplicative storage 22:03:08 ) 22:03:10 Two, background tasks 22:03:16 Three, compression if it would work well 22:03:16 dev_squid: You can read it back with "g", or try to execute it (at your peril) :) 22:03:27 AnMaster: More than it takes to record a 10k modification transaction to that image on disk. :P 22:03:41 alise, 1) doesn't really work well when the data moved inside a block (and you can't do it per byte for obvious reason) 22:03:51 AnMaster: Yes it does. 22:03:57 Log storage. 22:04:02 Four, it's stored in the cloud anyway. 22:04:08 These are solved problems. :) 22:04:13 * alise stabs cpressey to death. Fatally! 22:04:17 Argh! 22:04:29 pikhq, well sure... that would take long to rerun! That switch from one colour space to another 22:04:33 changing all the values 22:04:36 pikhq, :P 22:04:54 I think it's safe to just assume that for anything even remotely in this vicinity, "AnMaster doesn't get it" is pretty axiomatic 22:05:02 * cpressey tries to regain credibility by explaining it's an actual cloud 22:05:22 cpressey: I like your thinking. 22:05:23 alise, I do see how it works for some cases. I just think the problems it solves are less than the new problems it introduces 22:05:26 You're promoted 22:05:32 AnMaster: So clearly if you want fast access, you then have (in the background) a write of the switched-colour-space file. 22:05:45 AnMaster: The existence of Plan 9 and its use by people for actual work using venti/fossil prove that this is a solved problem. 22:05:53 Because it does exactly this method of deduplicative storage. 22:06:03 alise, I never said venti was bad. On the contrary 22:06:05 I love venti 22:06:06 Solved problem. Seriously. Not interesting. No point discussing, because it's solved. 22:06:11 AnMaster: IT DOES EXACTLY WHAT I'M SAYING! 22:06:13 I just think there are good and bad usages for it 22:06:17 And if you wish to save space somehow, then you make the previous modification into a modification transaction that undoes that. 22:06:22 You haven't even used it for serious stuff 22:06:28 you just read about it on wikipedia, anyway 22:06:38 cpressey, cool, cool. A VERY neat thing would be being able to "p" a some char to a line, shifting the rest of the line left. That'd make for some very cool SMC. :) 22:06:39 alise, I have used it in qemu 22:06:45 and I liked it 22:06:47 Yeah, to create a hello world file 22:07:01 alise, ... why do you love making up shit? 22:07:01 dev_squid: The TOYS fingerprint has instructions for shifting lines and columns 22:07:29 AnMaster: Because I realised this conversation was fruitless some years ago 22:07:55 alise, maybe you would get more people interested if you wrote it in a less whiny style 22:08:02 it shouldn't be hard 22:08:39 It's only whiny insofar as I've thought about these concepts for ages and ages now so my presentation isn't very gentle 22:08:51 If I wanted to be a describer I wouldn't be a programmer 22:09:21 alise, further, yes I agree on *some* points, but far from all. Most importantly that while I agree file systems are suboptimal, they are better than the alternatives I have seen so far (venti is nice for some purposes, but have fun using it a partition with scratch data, like /tmp) 22:09:29 How are the coordinates calculated for "g" and "p"? 0,0 | 0,1 // 1,0 | 1,1 ? 22:09:32 :) 22:09:44 That being the first line, first character. :| 22:09:55 AnMaster: Of course existing solutions suck, that's why I'm building a better one 22:10:02 If there was an OS that didn't suck I wouldn't be making one 22:10:04 alise, describe it 22:10:16 on a concrete level 22:10:25 I haven't fully formulated it yet, only several outline designs, some concrete details, and some plans to combine them. 22:10:37 okay, that's a good start I guess 22:10:43 So what the fuck am I meant to do, ignore the problem just because I'm not some magician who can pull a fully concrete solution out of thin air? No 22:10:45 but can you provide the outline 22:10:56 alise: There's a difference between blunt and whiny. 22:10:58 I do wonder if I'm patient enough but I could explain one. 22:11:02 Gregor: Yeah, well, I'm whiny. 22:11:04 Gregor, agreed 22:11:11 Deal with it. :p 22:11:25 well, we can whine about you being whiny, can't we? 22:11:29 that way it evens out at least 22:11:42 alise: If you want our opinion, it is not our job to conform to you, it is your job to conform to us. And if you don't want our opinion, then why did you publish that file in here? 22:11:53 I wrote it for one person actually per their request 22:11:57 I posted it because I felt like it. 22:12:13 Perhaps somebody would be converted. 22:12:17 AnMaster: Sure. 22:12:57 I'll only explain the design in #usys because it'll be bad enough dealing with one set of stupid questions (I am a lovely and compassionate person) 22:12:58 If you have any desire to convert anybody, you'll have to write something a hell of a lot more compelling. I have no idea if the actual concepts you espouse are flawed, because I can't find them, I can only find your complaints about files, most of which seem to me to be unfounded and shortsighted. 22:13:15 Gregor: Just like your mom 22:13:23 "Author does not appear to have defined a reduction for *[a b], which appears to render much of the post meaningless. Too much raw pork & opium?" 22:15:00 alise, and, most data I need to store tends to form a tree. Even photos. It goes like panoramas//{output/final.tiff,{raw,intermediate}//} 22:15:16 so store it in an ordered list 22:15:26 alise, the last part, sure, that could work for it 22:15:33 the previous parts form a neat tree 22:15:35 and so store it as a tree-like structure 22:15:50 but if trees containing strings are so good, why don't you program in them? 22:15:57 Why do you use data structures, types, depending on the need? 22:16:04 alise, but then, why should I have to bother about data types. Which way is fastest for me to do it in? 22:16:21 So, what, you don't like C and Erlang? They have data structures, you know. 22:16:36 alise, I don't feel a need to program my file system 22:16:43 as in, I don't see it as a programming language 22:16:56 Your data structures in your program are the exact same kind of data as on a filesystem. 22:17:04 in some ways yes 22:17:10 In fact I really should heed my realisation that this is fruitless and stop talking. 22:17:11 alise, but what about taking notes on paper 22:17:18 do you organise it in data types there? 22:17:24 or do you just write it down 22:17:24 >_< 22:17:25 You're an idiot. 22:17:41 alise, no, the analogy is just as bad as your one 22:17:46 well, okay, it is a parody of your 22:17:50 so somewhat worse 22:17:53 If writing to paper involved taking all the things you're going to talk about and organising them into one, single-d alphabet with little relation to the actual semantics... sure. 22:17:54 not much though 22:18:07 Do you convert a mathematical formula before writing it down? No, you just write it down. 22:18:08 alise, no I meant, writing down notes during a lecture 22:18:10 It is structured. 22:19:23 alise, yes, but hardly in the way you suggest 22:19:29 now I'm going to sleep 22:19:31 night → 22:19:41 Thank god, the tedium is over. 22:19:59 I should have stuck to keeping everything about the OS private, but that just resulted in "hur where's your os mr project b slo". 22:20:12 alise: Eh, just write some code. :P 22:20:54 To do what? Until I can answer that question it is hopeless. 22:25:17 I do have a general idea how the system should be structured 22:25:24 s/ $/, though./ 22:26:05 -!- Oranjer has joined. 22:43:53 -!- MizardX has quit (Ping timeout: 260 seconds). 22:46:33 Maybe I need to write Why Files Suck 2: Electric Boogaloo^W^WThe Better System 22:48:02 -!- MigoMipo has quit (Remote host closed the connection). 22:48:50 do it 22:48:59 no, too much work. 22:50:01 -!- coppro has joined. 22:50:35 well, don't write it, just sketch it out 22:51:08 -!- tombom_ has quit (Quit: Leaving). 22:54:48 Meh. I'd prefer to work on the actual system. 22:55:46 then do that 22:57:28 -!- Asztal has joined. 22:58:39 I am. Sort of. 22:59:12 yay 22:59:13 -!- Azstal has quit (Ping timeout: 265 seconds). 23:02:30 -!- Azstal has joined. 23:04:37 -!- Asztal has quit (Ping timeout: 268 seconds). 23:08:57 -!- oerjan has joined. 23:10:11 -!- Gracenotes has joined. 23:10:23 I started defining an extension of the rationals with n/0, then I ended up having to define 0/n as special too. Now I'm having to define 0 =/= -0. 23:10:37 have you looked at wp:Wheel Theory ? 23:10:39 NULLITY 23:10:55 (essentially the same as nullity, but sane) 23:11:46 iirc about that nullity thing and it's 0/0 != 0/0 23:11:51 *its 23:12:33 although i _think_ it has only 0/0 and 1/0 for the rationals 23:14:31 s/it/wheel theory/ 23:16:29 I assume they satisfy 0*(n/0) = n. 23:16:42 I want to learn an esolang that's fun and makes programming a challenge. Any suggestions? 23:16:53 no one seems to have mentioned unlambda yet 23:17:31 alise: i guess it's all in what algebraic properties you preserve and which you discard 23:19:49 yours is going to break at least one of associativity and commutativity i think 23:20:46 0*0 = 0 => n = 0*(n/0) = 0*0*(n/0) = 0*n = 0 23:21:10 0*n =/= 0 in general 23:21:25 even for n an ordinary rational? 23:21:28 in fact there is no real one "0" 23:21:35 although 0/1 is usually what you think of 23:21:37 there's 0/n for all n 23:21:40 oh well 23:21:47 0/0 is special though... and behaves rather erratically 23:22:47 well something's going to be 23:23:10 oh, and 0/n != 0 23:23:28 because (n/0)^-1 = 1/(n/0) = 0/n and so (0/n)*(n/0) = 1 23:23:30 hm i guess that's obvious 23:24:00 I determined, I think using regular rational addition, that (m/0)+n = (m+n)/0, also 23:24:24 When you start doing things like (3/0)/(0/0)*(0/3), though, I have no fucking clue what the result is 23:24:45 that sounds like one of the wheel theory axioms 23:25:23 I derived it :P 23:25:48 hm not quite 23:26:46 if (x/0) exists then (x/0)^-1 exists. n^-1 = 1/n. 1/(x/y) = y/x. x*(1/x) = 1. therefore (x/0)^-1 = 0/x, and (0/x)*(x/0) = 1 23:27:36 what is this about (x/0) existing? 23:27:56 if that's associative and commutative, then everything having an inverse forms a group 23:27:58 hahah 23:28:27 Gracenotes: Step 1. Define x/0 to work. Step 2. Find a contradiction. Step 3. Mess with shit until it works. Step 4. Go to step 2. 23:28:53 Oh, and if you ever end up messing with shit so that 0 =/= -0, you lose. Mess with some other shit. 23:29:02 so what is the shit you've messed with 23:29:23 Well... 23:29:28 ℝ \ {0} is a group btw :o 23:29:29 We'll do it in terms of multiplicative inverse. 23:29:49 0^-1 = 1/0 23:30:00 (1/0)*0 = 1 23:30:13 (n/0)^-1 = 1/(n/0) = 0/n 23:30:19 (0/n)*(n/0) = 1 23:30:34 ((use the definition of rational addition here to derive:)) 23:30:45 (m/0)+n = (m+n)/0 23:30:53 And so on. 23:33:08 I'll leave oerjan to find the next contradiction :P 23:33:28 Oh, and n*(0/n) = 0. Obviously. 23:33:39 Otherwise it wouldn't be division, would it? :P 23:34:13 n*(0/n) = 0, 0*(n/0) = n. Plugging in n=0, we get overwhelming support in favour of 0*(0/0) = 0. 23:34:26 Since we have 0/n for every other n, we have 0/0 too. 23:34:30 I forget exactly how it's special. 23:34:51 i cannot deduce contradictions without axioms 23:34:52 (0/0)^-1 = 1/(0/0) = 0/0 23:34:57 so (0/0)*(0/0) = 1 23:35:05 oerjan: Infer them sucka :P 23:35:27 i am going to assume that multiplication is an abelian group 23:35:37 Hey, that gives you 0/0 = 1, pretty trivially. 23:35:44 hm yeah 23:35:45 But that breaks things so ssssh 23:35:49 oh 23:35:50 (I think it does, at least.) 23:35:57 I haven't found any breakage 23:36:01 so feel free to assume 0/0 = 1 :P 23:36:01 well then i found one didn't i >:) 23:36:19 Also when I say an integer I mean n/1. 23:36:25 Obviously. Anything else would be ridiculous. 23:37:03 is 0 + x = x ? 23:37:19 Which 0 do you mean? 0/1? 23:37:27 0/n>1? 23:37:32 hm 23:37:38 The 0/ns aren't really 0, though. 23:38:02 (0/n)*(n/0) = 1, whereas (0/1)*(1/0) = 1... er... okay. 23:38:08 But they aren't 0, so there. 23:38:13 They're some weird fractional 0. 23:38:19 x/y = x*(1/y) ? 23:38:22 0 + x = x, sure. 23:38:31 oerjan: Yes; I've defined all this in terms of multiplicative inverse. 23:38:45 Also, no additive inverse. Too Complicated For My Poor Brain. 23:38:55 (You get 0 =/= -0 pretty easily) 23:38:56 0/0 = everything, obviously 23:39:07 0/0 = 1, actually. Has to be in this system. 23:39:25 1/(n/0) = 0/n, (0/n)*(n/0) = 1 23:39:36 so 1/(0/0) = 0/0, and (0/0)*(0/0) = 1 23:39:39 and 0*(0/0) = 0 23:39:43 so it's 1 23:39:50 coppro: remember, 0*x =/= 0 all the time in this 23:40:26 except for x = 1, i assume 23:40:46 (0/1)*(1/1) = 0, yes. 23:40:52 But (0/0)*(1/1) = no fucking clue. 23:41:02 er, wait 23:41:04 that's 1*1 23:41:13 (0/0)*(1/1) = (1/1)*(1/1) = 1/1 23:41:20 (0/2)*(1/1) = beats me 23:41:34 i've seen nothing so far to disprove that multiplication is an abelian group (with 1 as identity) 23:41:49 i ended up having multiple multiplicative or additive identities iirc at one point 23:41:53 which means the latter is 0/2 23:41:55 and broke stuff trying to fix that 23:42:10 oerjan: it's an abelian group on ℝ\{0} 23:42:18 Gracenotes: shut up :D 23:42:52 also this is based on the rationals not the reals just so i have convenient notation 23:43:02 and as soon as my brain sees 0/pi it freezes up 23:43:20 continued fractions, man 23:43:29 man, man 23:43:30 ℚ\{0} too 23:43:58 (1/0)/(((0/2)+(3/0))*(1/3)) 23:44:01 that x/0 + y = (x+y)/0 looks weird, though 23:44:28 yeah, especially if you multiply by 0. oh wait 23:44:29 i'll repeat my derivation 23:45:11 (a/1)+(c/0)=(a0 + 1c)/(1*0) 23:45:19 (a/1)+(c/0)=(0 + c)/0 23:45:21 wait what? 23:46:11 ok only the denominator matters 23:46:19 (_/x)+(y/0) = (x*y)/0 23:46:30 no idea what +(0/n) does for n>1 23:46:41 Who pinged me? 23:46:45 me doesn't matter now 23:47:02 (a/b)+(0/d) = (ad + b0)/bd 23:47:07 (a/b)+(0/d) = ad/bd 23:47:15 * Sgeo__ is going to try tryruby again 23:47:23 it's down 23:47:25 why is gone 23:47:47 Sgeo__: it's a squatted domain afaict 23:47:54 so (1/2)+(0/3) = 3/6 23:48:00 Unless it's on a delayed disappearance scheme that triggered hours ago, it should be around 23:48:03 = 1/2 23:48:04 I was on it hours ago 23:48:09 huh? 23:48:14 Sgeo__: ? no you weren't 23:48:15 tryruby.org 23:48:18 tryruby died along with why 23:48:24 oh i see, a mirror 23:48:43 no 23:48:46 recreated from the ground up apparently 23:48:56 reusing the design strikes me as bad taste 23:49:00 With a strangely working backspace 23:49:05 ruby sucks anyway 23:49:17 oerjan: so I think x+(0/n) = x 23:49:29 for all n apart from 0, in which case it's x+(1/1) 23:49:45 alise: that sounds correc 23:49:48 *correct 23:49:48 Howso? 23:49:59 alise: hm that may mean i remembered correctly that someone from tryruby wanted to consolidate things with tryhaskell when the latter was announced 23:49:59 Of course, when I'm deriving all this I'm assuming the other party isn't a weird 0-fraction monster. 23:50:03 now go work out what (m/0)+(0/n) is 23:51:28 alise: if m is not 0, it's undefined still 23:51:51 No undefined, coppro. 23:51:55 We don't accept undefined. 23:52:20 Well you haven't defined m/0 where m != 0 yet 23:52:27 Yes, I have. 23:52:41 [23:29] alise: 0^-1 = 1/0 23:52:42 [23:29] alise: (1/0)*0 = 1 23:52:42 [23:29] alise: (n/0)^-1 = 1/(n/0) = 0/n 23:52:42 [23:29] alise: (0/n)*(n/0) = 1 23:52:52 m/0 is the fraction m/0. Rationals. 23:52:59 none of those provides an actual definition though 23:53:02 merely an identity 23:53:12 what is the definition of the rational 1/2? 23:53:21 things are their properties and relations 23:53:33 if you accept m/0 as a number in and of itself 23:53:47 if you accept 1/2 as a number in and of itself 23:53:54 0.5 23:54:01 that's a decimal representation of the rational 1/2 23:54:04 he doesn't need to define stuff. just take the free algebra of his operations and quotient by whatever equations still hold 23:54:04 then m/0 + 0/n is m/0 for non-zero n, and m/0 + 1 for n=0 23:54:05 you fail 23:54:05 alise, how does Ruby suck? 23:54:20 Sgeo__: "Let me count the ways. Uh, I've run out of tendrils." 23:54:40 to alise, every language sucks in too many ways 23:54:44 I can count ways that the current tryruby sucks 23:55:39 -!- Asztal has joined. 23:55:57 1) Wonky backspace. 2) Incorrectly interpreted a test as me completing the lesson 23:55:58 coppro: you do know what the rationals are right? 23:56:19 alise: Yes. 23:56:36 then you accept 1/2 as a number in and of itself, as opposed to "evaluating to 0.5" 23:56:37 alise: is m*n the usual value for every nonzero integer m, n ? 23:56:51 alise: I do. 23:56:51 similarly, n/0 for all n>0 and 0/n for all n>0. 23:56:59 n/0 is not a rational 23:57:04 -!- Azstal has quit (Ping timeout: 265 seconds). 23:57:09 coppro: It's a weirdtional. I'm defining an extension of the rationals. 23:57:21 oerjan: Rephrase please? 23:57:22 ok. In that case, I answered your question 23:57:25 [16:53:40]then m/0 + 0/n is m/0 for non-zero n, and m/0 + 1 for n=0 23:57:45 coppro: you are completely failing to understand the spirit of this thing. it may be a stupid thing but that is no reason for interpreting it even more stupidly than intended 23:57:51 Guys. 23:58:15 of course it is stupid ;) 23:58:16 *:) 23:58:25 alise: is (m/1)*(n/1) = (mn/1) for m, n ordinary nonzero integers? 23:58:28 I just made a cool program in Befunge. :) 23:58:28 http://pastie.org/850853 23:58:40 oerjan: Yes, purely rational calculations are still rational. 23:58:42 where the mn multiplication is ordinary integer multiplication 23:58:53 Ones involving 0-fractions are surely irrational and insane to the highest degree. 23:58:54 actually, I just realized something 23:59:03 alise: except multiplication by 0 23:59:17 division of 0 cannot be considered to equal 0 in all cases 23:59:19 Only if you involve a 0-fraction 23:59:26 (0/1)*normal = 0/1 23:59:31 0/2 too I think 23:59:34 except = 0/2 23:59:34 you have to have separate zeroes for each 0/n 23:59:39 er wait has to be 0/1 23:59:48 no it doesn't 23:59:48 0/2 23:59:50 Who likes it? 2010-03-03: 00:00:04 coppro: what? 00:01:01 alise: argh. (0/1)*normal = 0/1 violates my hypothesis that it's an abelian group :( 00:01:21 wait, does (m/0)*0 = m? 00:01:33 yes 00:01:37 oerjan: what should it be? 00:01:46 ok, never mind then 00:02:05 then I go by my previous answer 00:02:18 so does YOUR MOM 00:02:38 oerjan: (0/1)*normal = ? 00:02:50 alise: well if normal = 1/n then it should be 0/n 00:03:03 fair enough 00:03:07 i think i had that too anyway 00:03:10 what if normal = 2/n? 00:03:13 wait, what is normal here? 00:03:15 0/(2/n)? 00:03:40 coppro: not 0/m or n/0 where m>1 or n>0 00:03:41 alise: 0/(n/2) 00:03:47 okay. 00:03:48 alise: ok 00:04:11 I like Ruby symbols 00:04:22 4/5 * 0/1 = ? 00:04:33 for that matter, 4/5 * 0/2 = ? 00:04:56 0/(5/2) 00:04:56 0 in all cases, I think 00:05:53 oerjan: = 00:05:53 ? 00:06:03 it's nat/nat and 5/2 is not a natural 00:06:05 the latter one 00:06:07 Some Ruby syntax is strange 00:06:24 i guess it's just (0/1)/(5/2) 00:06:46 alise: you cannot get everything in the form m/n with naturals if you assume it's an abelian group and 0 cannot be combined in 00:06:47 = 0/5 00:07:10 oerjan: 0 is 0/1 00:07:23 0/n isn't anywhere near being 0 despite intuition 00:07:34 alise: that doesn't help _reduce_ the number of factors 00:08:12 maybe i expressed myself wrongly 00:08:13 0/(5/2) cannot be written simpler, afaict 00:08:44 it's the same as 0*(2/5), though 00:08:57 is it not 0/5? 00:09:44 0/(5/2) = (0/1)/(5/2) = (0*2)/(1*5) = 0/5 00:09:54 ouch 00:10:00 um... Ruby uses C++-like syntax for some I/O? 00:10:15 oerjan: i just done a bad :D 00:10:16 alise: if it's an abelian group then 0*x = 0 implies x = 1 00:10:40 0/5 =/= 0 00:10:49 0*(2/5) = 0/5 00:10:52 er 00:10:54 (0/2)*(2/5) = 0/5 00:11:03 or was it /, I forget by now 00:11:04 or even + 00:11:10 but point is, just as 1/2 isn't 1/1 00:11:13 the latter would be correct for a group 00:11:15 0/n isn't 0 00:11:38 indeed. and so 0/(5/2) cannot be simplified, although there are rearrangements 00:11:48 Like my random hash generator? (http://pastie.org/850853) :P 00:11:57 (0/5)*2, say 00:12:02 dev_squid: cool. 00:12:09 alise, :D 00:12:11 oerjan: how is 0/(5/2) = 0/5 wrong? 00:12:36 dev_squid: neat, but inefficient 00:13:09 also biased 00:13:44 alise: => 5/2 = 5 by abelian group axioms 00:13:57 coppro, yes it is biased and it is inefficient; I wasn't aiming for either. 00:13:58 but i don't like 0/(5/2) being irreducable :( 00:14:02 find some other algebraic structure :P 00:14:06 ok 00:14:11 sheesh 00:14:40 :-D 00:15:08 coppro, I'm new to Befunge. Just trying out what I've learned. :) 00:16:23 coppro, I tried to make the odds as balanced as I could without rewriting the whole program. 00:16:44 ok 00:18:41 oerjan: i have a sneaking feeling this is all quite impossibe 00:18:44 *impossible 00:19:24 anything is possible 00:19:43 i mean, retaining all the basic properties we want 00:19:44 anything! 00:19:50 and no. _|_ isn't possible 00:19:50 alise: duh 00:20:03 oerjan: see that is *not* the answer i was hoping for 00:20:24 Would be fun to have a complete number system with no undefined operations at all 00:20:41 Reals go horizontally, complexes stack on top vertically, and things we had to add to make everything work go sort of spiralling off diagonally 00:21:21 there's a reason 0/0 is considered an indeterminate form 00:21:57 Bite my shiny zero-dividing fraction. :| 00:23:02 * Sgeo__ gives up on TryRuby 00:24:17 alise: new suggestion: we define 0/0 to be a daffodil 00:24:28 coppro: you are so boring :( 00:24:49 I had to work hard for a joke that bad :( 00:25:02 alise: well if you want to insist that everything is m/n for integers m, n then maybe it would be better to define the operations and then _afterward_ finding out which rules still hold 00:25:12 yes. 00:25:17 oerjan: will you remind me to, tomorrow? 00:25:27 alise: please tell me you at least got the joke 00:25:35 also, you're allowed back on on weekdays now? 00:25:45 no i'm not going because of overriding crisis 00:25:52 although you still need to decide which fractions in non-smallest terms are equal 00:25:58 complicated, and i'm going now anyway 00:26:02 hopefully i will be here tomorrow 00:26:03 see you guys! 00:26:05 -!- alise has quit (Quit: alise). 00:31:16 -!- cpressey has left (?). 00:32:17 `translate Hva de skal se, vites ikke enda! <-- yeah that looks like Norwegian indeed <-- except that kind of passive is ridiculously stilted for norwegian 00:32:35 -!- SimonRC has quit (Ping timeout: 246 seconds). 00:33:38 passives with -es are much less common in norwegian than swedish afaik 00:35:27 it could of course be stilted for humorous reasons 00:42:59 -!- SimonRC has joined. 01:02:57 -!- lament has quit (Ping timeout: 276 seconds). 01:06:17 -!- lament has joined. 01:18:14 No closures in Ruby [apparently] 01:18:23 * Sgeo__ is learning! 01:18:42 yay 01:19:03 n/m 01:26:56 Wait, those things don't close? 01:30:22 Methods can't see surrounding variables, but blocks can 01:30:24 Apparently 01:37:44 In Ruby, there seem to be a million ways to accomplish the same thing 01:37:49 For any given "thing" 01:38:33 ruby stole that from perl, obviously 01:41:26 (see: perl motto) 01:45:03 -!- Asztal has quit (Ping timeout: 252 seconds). 01:45:09 -!- FireFly has quit (Quit: Leaving). 01:45:11 -!- BeholdMyGlory has quit (Read error: Connection reset by peer). 02:08:43 * Sgeo__ is considering running back to his beloved Python 02:29:26 -!- dev_squid has quit (Ping timeout: 240 seconds). 02:33:33 -!- dev_squid has joined. 02:40:55 oerjan: or it could be stilted for dramatic effect. 02:40:58 -!- ruhtranayr has quit (Remote host closed the connection). 02:42:51 -!- thewolfangel has joined. 02:42:53 uorygl: it is really _too_ stilted for that 02:43:09 -!- thewolfangel has left (?). 02:43:11 it is not just the passive, but also the word order 02:43:41 "Yet to be known is which movie." 02:44:07 That, at least, looks like a plausible thing to say. 02:45:05 "Hva de skal se, er ennå ukjent!" would be a better phrasing for that purpose. 02:45:39 Maybe this is just a stilted person. :P 02:46:33 That's a Facebook status update. "Marianna skal straks se film med Ørjan. Hva de skal se, vites ikke enda!" 02:46:40 s/Marianna/Marianne/ 02:47:03 `translatefromto sv en Marianne skal straks se film med Ørjan. 02:47:06 that's definitely humoristically dramatic, then 02:47:12 Marianne skal straks see movies with Ørjan. 02:47:22 it's norwegian, not swedish 02:47:25 I know. 02:47:32 `translatefromto sv en Hva de skal se, vites ikke enda! 02:47:34 Hva de skal se, vites ikke only! 02:47:45 That translated less well. 02:48:22 I wonder what a P-knappen is. 02:48:32 `translatefromto sv en Vad dom skal se, vites inte ennu! 02:48:34 As they peel look, vites not ennu! 02:48:41 what the heck! 02:48:53 my swedish must be worse than i thought :D 02:49:09 * uorygl peels look. 02:49:17 oh skal = skall 02:49:22 or shell 02:49:30 completely different meaning in swedish 02:50:12 `translatefromto sv en Vad dom ska se, vets inte enn! 02:50:14 What they should look, not vets enn! 02:50:23 *sigh* 02:50:45 `translatefromto no sv Hva de skal se, vites ikke enda! 02:50:47 Att se, är inte känt ännu! 02:51:16 not exactly perfect either (well, the first part) 02:51:26 the second part actually removed the stiltedness 02:51:52 `translatefromto no en Hva de skal se, vites ikke enda! 02:51:54 What to see, is not known yet! 02:56:52 -!- thewolfangel has joined. 02:57:09 -!- thewolfangel has left (?). 03:00:15 Thew ol' fang el. 03:00:25 El Ol' Thew Fang. 03:00:57 No no, Ol' El Thew Fang. 03:01:54 Like Old El Paso, except Ol' instead of Old and Thew Fang instead of Paso. 03:03:17 gawnt hell foe 03:04:05 "Gawnt" isn't a word. 03:04:19 i thought it was close enough to gaunt 03:09:46 `translate korvapuusti 03:09:49 var sl_select, tl_select, web_sl_select, web_tl_select;var ctr, web_ctr, h;var tld = ".com";var sug_lab = "";var sug_thk = "";var sug_exp = "";var dhead = "Dictionary";var dmore = "View detailed dictionary";var tr_in = "Translating...";var isurl = "";var show_roman = "Show romanization";var 03:10:12 `translatefromto fi en korvapuusti 03:10:14 slap in the face 03:10:46 `translate Korvapuusti on kanelilla, sokerilla ja voilla täytetty pulla. 03:10:48 Is a slap in the face with cinnamon, sugar and butter filled bun. 03:11:30 I'm guessing that sentence doesn't have a copula. 03:11:36 `translate kanelilla 03:11:38 var sl_select, tl_select, web_sl_select, web_tl_select;var ctr, web_ctr, h;var tld = ".com";var sug_lab = "";var sug_thk = "";var sug_exp = "";var dhead = "Dictionary";var dmore = "View detailed dictionary";var tr_in = "Translating...";var isurl = "";var show_roman = "Show romanization";var 03:11:46 `translatefromto fi en kanelilla 03:11:48 cinnamon 03:11:55 `translatefromto fi en on 03:11:57 is 03:12:02 I was wrong. 03:12:39 It looks like -illa means... whatever case you use for "filled with". 03:12:51 yeah 03:12:54 `translatefromto fi en täytetty 03:12:56 filled 03:13:29 `translatefromto fi en korva 03:13:31 ear 03:13:43 `translatefromto fi en puusti 03:13:45 Puusti 03:13:54 If a korva is an ear, why is a korvapuusti a slap in the face? 03:14:07 Are Finns' ears on their faces? 03:14:12 probably more a slap on the ear, then 03:14:24 "ørefik" in norwegian 03:14:27 Wikipedia says it means "slap on the ear". 03:14:38 `translatefromto no fi ørefik 03:14:40 puhaltaa 03:14:45 "Skillingsbolle", actually. 03:15:06 `translatefromto fi no puhaltaa 03:15:08 blåse 03:15:14 what the heck 03:15:23 `translatefromto fi no korvapuusti 03:15:25 slag i ansiktet 03:15:37 `translatefromto no en ørefik 03:15:39 blow 03:15:42 heh 03:15:46 `translatefromto fi no Skillingsbolle on kanelilla, sokerilla ja voilla täytetty pulla. 03:15:48 Skillingsbolle er kanel, sukker og smřr fylt bun. 03:15:54 `translate Skillingsbolle er kanel, sukker og smřr fylt bun. 03:15:56 Skilling Bowl is cinnamon, sugar and smřr filled bun. 03:15:59 it seems to be wrecking it by going through english 03:16:35 Skilling? 03:16:55 hm a skillingsbolle would be a bun filled _with_ the other things i think 03:17:01 * uorygl begins skilling. 03:17:18 `translate Kanelbolle er kanel, sukker og smřr fylt bun. 03:17:19 Cinnamon roll are cinnamon, sugar and smřr filled bun. 03:17:20 skilling is an old coin 03:18:08 that's really not correct norwegian 03:18:15 `translate Skillingsbolle, også kalt kanelbolle, er en tradisjonsrik bolle mange tror stammer fra Bergen, men som selges og har vært solgt i butikker og bakerier over stort sett hele landet. 03:18:17 Skilling Bowl, also called cinnamon bun, is a traditional bowl many believe stems from Bergen, but sold and have been sold in shops and bakeries across virtually the entire country. 03:18:40 you'd either add a lot of hyphens, or switch things around using the preposition "med" 03:18:46 The entire country! 03:18:59 well yeah 03:19:02 `translate Navnet kommer av at bollene i sin tid kostet én skilling per stykk. 03:19:04 The name comes from the urchins in the time cost of one shilling per piece. 03:19:24 `translatefromto no en bollene 03:19:27 urchins 03:19:39 bolle hear doesn't really mean bowl. it means a ball-shaped bakery good 03:19:48 what the heck? 03:19:56 `define urchin 03:19:58 * poor and often mischievous city child \ [22]wordnetweb.princeton.edu/perl/webwn \ * Urchin was the code name for the neutron generating device that triggered the nuclear detonation of the earliest plutonium atomic bombs such as Fat Man, once the critical mass had been "assembled" by the force of conventional 03:20:10 that's just - wrong 03:20:20 An urchin is a hedgehod, I hear. 03:20:26 Hedgehog, even. 03:20:37 _that_ would be pinnsvin 03:20:49 And a sea urchin is a hedgehog of the sea. 03:20:52 `translatefromto en no urchin 03:20:54 urchin 03:20:54 i don't think there is a good translation for the bakery "bolle" 03:20:54 Precisely. 03:21:13 Donut hole. :P 03:21:14 ah! 03:21:24 that's "kråkebolle" 03:21:29 but never just "bolle" 03:21:37 What's a kråke? 03:21:39 (sea urchin that is) 03:21:42 kråke = crow 03:21:57 A crow bolle. 03:22:15 basically crows eat them like people eat the other thing 03:23:30 The kråke eat the kråkebolle and people eat the smultring? 03:23:42 um no people eat the bolle 03:23:46 well the smultring too 03:24:05 Crows eat crow-bolles like people eat bolles? 03:24:10 or specifically hvetebolle, the most generic type 03:24:12 What's this about smut-ring? 03:24:15 (wheat) 03:24:16 Oh, smultring. 03:24:31 Gregor: A smultring is a ring-formed cake cooked of smult. 03:24:41 lard ring 03:24:52 Cooked *in* smult. 03:25:01 deep fried dough rings 03:25:08 ... doughnuts. 03:25:15 Ah, that's the word. 03:25:29 same shape, but completely different size and recipe 03:25:51 What's a completely different size and recipe but the same shape? 03:26:05 smultring vs. doughnut 03:26:26 Are those both words in one language? 03:26:48 Oh, huh. "Smultring" is an English word. 03:26:52 well american-style doughnuts are sometimes sold in norway under that name 03:27:12 a smultring wouldn't have any kind of glaze 03:27:25 Not all doughnuts have glaze. 03:27:30 Glazed doughnuts have glaze. 03:27:45 just a small flat dough ring, dropped into hot lard where it expands to a torus shape 03:27:48 aha 03:27:57 So, a doughnut :P 03:28:18 It looks like smultrings are a certain type of smultringer! 03:28:32 Just like the salsa is a certain type of la salsa. 03:28:37 ic so not all american doughnuts conform to the norwegian stereotype of them :) 03:29:05 http://www.voodoodoughnut.com/ 03:29:33 Some are rings and glazed, some are rings and not glazed, some are circular but not rings, some are a rounded box with dimension ratio approximately 4:2:1. 03:29:41 The non-ring ones are all filled with something; none of the ring ones are. 03:29:52 uorygl: Well that's just not true. 03:30:11 Of course not. There's no law of physics requiring there to be filling in a non-ring doughnut. 03:30:13 Maple bars are not rings, and are not filled. 03:30:28 It's just that it never happens that way. 03:30:34 http://www.holmstad.no/ on the right are typical smultringer 03:30:44 uorygl: Except for ALL THE FUCKING TIME. 03:31:04 uorygl: You must have the worst doughnut shops in existence :P 03:31:21 Those smultringer look slightly different from our typical non-chocolate unglazed smultringer. 03:31:27 very plain, like most traditional norwegian bakery 03:31:35 Gregor: I've never even seen an actual doughnut shop, I think. 03:31:41 *tsk tsk* 03:31:51 Those smultringer remind me of Twinkies and onion rings. 03:32:19 We would call those "plain doughnuts" 03:32:23 i guess onion rings are the same except with onions as well inside 03:32:23 They're popular with coffee. 03:32:42 What do you call those things on the left? Fruktpizzaer? 03:33:04 "Fruit pizza"? :P 03:33:24 Actually, "frukt" means "ear", and "pizza" means "slap". 03:33:25 * uorygl coughs. 03:33:26 honestly i don't know 03:33:42 * Gregor slaps uorygl's ear 03:33:51 it _would_ seem a reasonable norw. name for it 03:34:14 http://www.voodoodoughnut.com/doughnuts/bacon_maple_bar.jpg <-- the greatest doughnut ever conceived. Full stop. 03:34:18 well assume that was pizza underneath, i suspect it's actually something sweeter 03:34:22 *assuming 03:34:40 -!- calamari has joined. 03:34:44 I would call anything a pizza as long as it's a slab of dough with stuff on it. 03:35:09 Even frukt. 03:35:15 Then Japan has some nasty things to show you. 03:35:19 So, an iced cake is a pizza :P 03:35:26 A cake is not a slab. 03:35:32 A short cake is. 03:35:38 A shortcake, even. 03:35:44 If it's a really short cake, then... 03:35:57 Then yeah, it's a pizza. 03:36:02 Strawberry shortcake is DEFINITELY a kind of pizza by your definition. 03:36:26 My strawberry shortcake never consists of strawberries and whipped cream on a short cake. 03:36:45 It's strawberries and whipped cream and chopped-up biscuits tossed together. 03:36:53 I'm getting the idea that my cuisine is strictly inferior to yours. 03:37:05 Strictly? Yes. 03:37:25 Shortcake is often, but not always, short and round ... it can also be tall and round, or even not round probably :P 03:37:30 This is America -- the country of the pizza bagel. 03:37:35 *barf* 03:37:41 :P 03:37:57 Hmm. I think an open-faced sandwich would qualify as a pizza under my definition. 03:38:35 (Also, shalom and ciao) 03:39:06 uorygl: I figured that since bread slices are sliced, they wouldn't qualify as a slab of dough, since they were in fact a loaf of dough, cut into a slab of bread. 03:39:09 An open-faced smörgås. 03:39:36 I guess that is true. 03:39:54 dammit all this food talk made me forget to eat -> 03:40:12 (I would have used an apostrophe, but I am currently using a Norwegian keyboard with no easy access to apostrophes.) 03:40:30 Now I know why people use acute accents as apostrophes. 03:40:35 It´s easier on some keyboards. 03:43:27 wait, you are actually in norway? 03:44:16 No, I just used a Norwegian keyboard layout. 03:44:18 Briefly. 03:44:23 the apostrophe is just left of the return key, btw 03:44:43 Here in Norway, that is an æ instead of an apostrophe. 03:44:47 to the right of æ 03:45:01 Oh. There isn't a key in between that and return. 03:45:21 oh 03:45:29 My home row: asdfghjkløæ 03:45:29 oerjan: What sort of freakish anti-coding keyboard do you have? 03:45:43 asdfghjkløæ' 03:45:46 Who uses a non-ASCII keyboard for coding? 03:46:05 Japanese people do. 03:46:05 oerjan: what, do you have an extra key in that row? 03:46:13 so it would seem 03:46:16 pikhq: Crazy Ruby-zealots 03:46:21 Though, their keyboard is QWERTY with a few extra buttons to control the IME. 03:46:28 A spammer discovered my hometown 03:46:42 it may appear that i have an entire column of convenient accent-making keys there 03:46:47 Got a spam claiming to be from the public library of my hometown 03:47:00 It's possible they were guessing. 03:47:02 I've pretty much got one set up right now. 03:47:15 (though with bindings instead of actual buttons) 03:47:16 Or maybe it wasn't spam, hm 03:47:41 * uorygl counts the keys on his keyboard. 03:47:57 105 03:48:03 Savant. 03:48:15 uorygl: although changing to EN layout is as simple as pushing alt-right shift. which i don't think i've ever done on purpose, except to undo after doing it accidentally :D 03:48:33 * oerjan does so now 03:48:42 Fourteen keys in the function row, fourteen in the number row, fourteen in the upper row, thirteen in the home row, twelve in the lower row, eleven in the space row. 03:49:21 I'm sure I could find more keys if I looked hard enough. 03:49:43 oerjan: Wait, you code with that horrifying layout? 03:49:51 seventeen, fifteen, fifteen, fifteen, fourteen, twelve 03:49:53 *Brackets* are on Alt-Gr! 03:49:58 pikhq: i don't code that much 03:50:17 and i've never typed for that kind of speed anyway 03:50:24 That also looks mildly annoying for English text in general. 03:51:07 although it's a laptop keyboard, so no numpad 03:52:27 You have a lot more keys than I do. 03:53:33 My top row: Esc, F1-12, eject. Next: `, 1-0, -, =. Next: Tab, q-p, [, ], \. Next: Caps lock: a-l, ;, ', return. Next: shift, z-m, ,, ., /, shift. Next: Fn, control, option, command, space, command, option, arrow keys. 03:53:50 * uorygl counts how many of those are for printable characters. 03:54:35 48. 03:55:00 command means it's apple layout? 03:55:20 Yep. 03:55:26 * uorygl hands out barf bags. 03:56:16 i think a lot of the extra keys on the right side are things that would usually be on the numpad, just strewn about a bit 03:56:51 Like home, page up, page down, end, insert, delete? 03:56:56 yeah 03:57:07 And the forbidden sysrq and break. 03:57:12 yep 03:58:38 You know, it's kind of annoying that there isn't any obvious separation between operating system keyboard shortcuts and application keyboard shortcuts. 03:58:43 SysRq is actually useful. 03:58:48 ... In Linux. 03:59:01 (Magic SysRq) 04:03:01 I have a question. Does (http://pastie.org/851114) generate statistically-pseudorandom integers in range of 0-255? 04:03:48 I just modified one I found in the list of Bef sources on the Cat's-Eye site. 04:04:46 on determining whether something is statistically pseudorandom, i defer to the actual experts. 04:05:27 i mean, isn't the first rule of pseudorandom generators _not_ to try to roll your own. 04:05:42 You don't have much of a choice in Bef. 04:06:19 well i mean algorithm, not actual implementation. 04:06:38 It's a solid algorithm. 04:06:51 ok 04:07:17 then i'll sidle away carefully and leave it to the actual _befunge_ experts :D 04:07:19 What does "statistically pseudorandom" mean? 04:07:36 that it passes some common statistical tests, i presume 04:07:38 It basically takes rolls on 0-128, then adds it to 0-64, then adds it to 0-32, etc... 04:07:51 I mean... 04:08:37 Statistically, it doesn't yield results that are any more or less biased than the parent pseudorandom number generator is. 04:10:07 It seems like it is, but I just can't make sense of why there is a 1 following the set. That would make the range from 0 to 256, which is just wrong. 04:10:30 I'm pretty sure that 0 is a possible outcome. 04:10:59 Test it! 04:12:31 I'll test it with the original. 04:28:42 I feel like creating yet another billiard ball language. 04:28:47 I'll call it YABBL. 04:31:40 now you are just yabb'ling 04:35:45 Why does Ruby interest me so much? 04:40:50 Well, I can help you answer that question. 04:41:02 Why does Ruby interest you so much? 04:41:59 obviously it's because it's a gem of a language. 04:43:26 * Gregor slaps oerjan. 04:43:33 -!- Gracenotes has quit (Read error: Connection reset by peer). 04:44:35 -!- Gracenotes has joined. 04:46:32 ouch 04:55:38 -!- Oranjer has quit (Read error: Connection reset by peer). 04:56:13 -!- Oranjer has joined. 04:57:33 -!- Oranjer has quit (Read error: Connection reset by peer). 04:58:01 -!- Oranjer has joined. 04:58:40 "But I Miss My C++ Iostream" 04:58:46 "Sometimes there's just no accounting for taste..." 04:59:58 YABBL described quickly: http://pastebin.ca/1820626 05:00:04 I hope it's correct. 05:00:13 Iostream, eh? That sounds like a scary feature of C++. 05:00:38 std::cout << "I've heard it described here as nightmarish." << std::endl 05:00:42 streams on Io 05:00:54 Monads are better! They're easier to understand! 05:01:11 (Everything I understand is easier to understand than everything I don't understand, obviously.) 05:01:14 std::cout << "Besides being ugly, which is trivial, you can't determine the flags set on an IOStream, apparently" << std::endl 05:01:32 What does that std::endl even mean? 05:01:53 "\n" 05:04:54 uorygl: "A collision is undefined behavior unless it is identical to one of the following:" <-- i assume you mean to include obvious reflections and rotations of those as well? 05:06:28 oh and i think you'd want >< ---> <> and variations 05:07:11 or would that get wrong timing... 05:09:18 hm i suppose it would 05:22:52 千十字をやった!私がやったぜ! 05:41:59 Ubuntu has been kind of buggy lately. a few kernel crashes here and there, random logouts, overheating.. 05:42:16 I wonder if it's due to my laptop going out the window (figuratively) 05:43:12 -!- lifthrasiir has quit (Ping timeout: 252 seconds). 05:43:16 -!- lifthrasiir has joined. 05:43:43 uorygl: std::endl is '\n'. It is not the system end of line character. 05:44:47 -!- dev_squid has quit (Read error: Connection reset by peer). 05:45:10 -!- dev_squid has joined. 05:46:21 -!- Oranjer has left (?). 05:48:53 -!- Gracenotes has quit (Remote host closed the connection). 05:50:50 -!- dev_squid has quit (Ping timeout: 248 seconds). 05:51:28 -!- dev_squid has joined. 06:10:12 pikhq: No, it's not the system end-of-line character. The endl manipulator is defined to call os.put(os.widen('\n')) followed by os.flush(). You only get the platform end of line character if you're writing into a stream that's opened in text mode, which does \n translation. 06:10:24 Oh, that's exactly what you said. 06:10:45 fizzie: Yes. 06:10:53 Heh, I must have gotten confused since '\n' was already said; I thought you were complaining about that. 06:11:31 I guess it's true what they say about making assumptions; they make an ass out of you and... mptions? 06:16:30 -!- MissPiggy has joined. 06:16:31 -!- MissPiggy has quit (Changing host). 06:16:31 -!- MissPiggy has joined. 06:18:37 never make assumptions about asinine assassins 06:20:01 ah, albeit arbitrary aerjans advice absolutely agrees 06:21:42 meanwhile, MissPiggy misuses mischievous misspellings 06:21:43 oerjan: I shall assiduously assay to assimilate your assistance. 06:22:28 "aerjan" sounds like a pirate oerjan. 06:22:31 ARRR, you see. 06:23:31 still, a bit arrtificial 06:26:22 arrjan 06:27:47 check out this awesome iPod nano feature 06:27:53 You can apply a simple encryption to text, rendering it unrecognizable to the casual reader, by 06:27:58 placing it between and tags. 06:28:09 it can display text files ... IN ROT 13 06:28:55 ... wow. 06:29:01 The worst part is I'll bet you're not kidding. 06:29:27 * MissPiggy just copied rainbows end onto it, but it's unreadable 06:32:57 developer.apple.com/ipod/iPodNotesFeatureGuideCB.pdf 06:36:36 "Some presentations do not require the interactivity supported by the Notes feature. A public-service 06:36:40 announcement presentation or a guided tour through a single exhibit, for example, may not require 06:36:43 any branching or backing up." 06:36:53 ?? they are suggesting that someone might use iPod nano as a medium for public service announcements ??? 06:45:04 "There is the older Tanka-style poem where you get two bonus lines (7 syllables each) to try to summarize all of existence. CREDITS" 06:52:54 -!- FireFly has joined. 07:01:52 "You can also configure the iPod to lock out everything but the Notes area; that way, viewers must start there. Called NotesOnly mode or Museum mode, it holds potential for museum curators, tour guides, or realtors interested in presenting facts about a painting, a historical center, or an overpriced property." 07:04:12 That makes perfect sense. The PSO thing above still confuses me :P 07:04:18 But that's not a PSO. 07:04:31 PSOX? 07:06:18 ... 07:06:20 Public 07:06:22 Service 07:06:27 Onnouncement :) 07:06:41 * Gregor ^H's a bit. 07:09:05 -!- tombom has joined. 07:11:27 Gregor: ah so that's where MissPiggy dumped my o 07:18:12 -!- coppro has quit (Quit: I am leaving. You are about to explode.). 07:18:18 -!- jcp has quit (Quit: I will do anything (almost) for a new router.). 07:20:17 -!- coppro has joined. 07:33:01 “Did you know that you can store and read 07:33:02 up to 1000 text notes with your iPod?“ 07:33:36 heck no. i didn't even know i had an iPod. 07:33:41 XD 07:34:15 -!- coppro has quit (Remote host closed the connection). 07:34:27 Have you ever wanted to read the entire Bible? BiblePlayer makes this goal achievable by organizing your bible reading plans. Select the current month and date, and your day's readings are presented. Scroll and select a reading and Audio Bible Player will load and play that reading. 07:36:17 Have you ever wanted to read the deluded ramblings of some long-dead anonymous Jewish (and later, Christian, but let's face it, you won't actually get that far) guys? 07:41:35 "It is especially directed to readers whose intellectual tendencies cause them to question the validity of Jesus' claims." 07:42:16 http://www.podbible.org/Images/iPod1a.png 07:43:01 Gregor: I'm pretty sure anyone *vaguely* sane would stop by Numbers. 07:43:04 It's possible to translate Ruby to Python?!? 07:43:09 It's not always rambling; some parts are just Very Interesting(TM) genealogical listings. 07:43:11 ... Guess what it is? A book. Of numbers. 07:43:11 [14] These be the heads of their fathers' houses: The sons of Reuben the firstborn of Israel; Hanoch, and Pallu, Hezron, and Carmi: these be the families of Reuben. 07:43:12 [15] And the sons of Simeon; Jemuel, and Jamin, and Ohad, and Jachin, and Zohar, and Shaul the son of a Canaanitish woman: these are the families of Simeon. 07:43:12 [16] And these are the names of the sons of Levi according to their generations; Gershon, and Kohath, and Merari: and the years of the life of Levi were an hundred thirty and seven years. 07:43:12 [17] The sons of Gershon; Libni, and Shimi, according to their families. 07:43:15 I mean, I was thinking of that 07:43:15 And so on and so on. 07:43:18 But it's been done 07:43:22 http://github.com/whymirror/unholy 07:43:36 Admittedly the part of living 137 years is a bit suspicious. 07:43:49 fizzie: Oral history... 07:44:13 But WHAT SORT OF CRAZY PERSON WOULD STICK GENEALOGY IN ORAL HISTORY. 07:44:53 someone who couldn't write, and so had nowhere else to stick it 07:44:53 Oh yes, Numbers was the most boring one. 07:45:38 -!- kar8nga has joined. 07:46:56 Text may be sharp, but my aging eyes found it hell to try to read, even for menu choices and song titles. I’d have to pass on the nano just for this reason alone (putting aside that I really need 60GB minimum storage…). 07:47:08 what the hell is this guy doing with 60 GB storage.. 07:47:27 And the GPS track logs of their wanderings! 07:47:30 [15] And they departed from Rephidim, and pitched in the wilderness of Sinai. 07:47:30 [16] And they removed from the desert of Sinai, and pitched at Kibroth-hattaavah. 07:47:30 [17] And they departed from Kibroth-hattaavah, and encamped at Hazeroth. 07:47:30 [18] And they departed from Hazeroth, and pitched in Rithmah. 07:47:40 Couldn't they have put that stuff in an appendix or something? 07:48:11 (There's about 50 consecutive lines of that.) 07:50:03 -!- tombom has quit (Quit: Leaving). 07:51:07 fizzie: The appendix hadn't been invented yet. 07:51:18 Nor had punctuation. 07:51:24 Or paragraphs. 07:51:46 Or good writing, for that matter. 07:52:29 Yes, well, they could have done some refactoring later, after those all had been invented. 07:54:23 "But but literal word of god!" 07:54:30 "To change would be blasphemy!" 07:54:43 -!- oerjan has quit (Quit: Good night). 07:59:01 -!- dev_squid has quit (Ping timeout: 264 seconds). 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:22:51 -!- Sgeo_ has joined. 08:25:40 -!- Sgeo__ has quit (Ping timeout: 265 seconds). 08:33:35 -!- calamari has quit (Quit: Leaving). 08:38:26 -!- Gracenotes has joined. 08:43:53 -!- MigoMipo has joined. 09:42:04 -!- BeholdMyGlory has joined. 09:52:21 -!- scarf has joined. 11:10:25 -!- MizardX has joined. 11:14:32 -!- kar8nga has quit (Read error: Connection reset by peer). 11:14:48 -!- BeholdMyGlory has quit (Remote host closed the connection). 11:15:55 -!- scarf has quit (Ping timeout: 276 seconds). 11:24:28 -!- MigoMipo has quit (Remote host closed the connection). 11:34:19 -!- scarf has joined. 11:34:21 -!- scarf has quit (Changing host). 11:34:21 -!- scarf has joined. 12:15:52 -!- alise has joined. 12:17:46 scarf: http://search.cpan.org/~miyagawa/App-cpanminus-0.9911/lib/App/cpanminus.pm 12:17:53 A CPAN client that doesn't suck?! 12:17:58 * scarf looks 12:18:08 also, I'm pretty sure a non-sucking CPAN client is theoretically possible 12:18:32 It's quiet, uses little RAM, and doesn't ask many questions apparently 12:18:40 [[Yeah, I think my brain has been damaged since I looked at PyPI, gemcutter, pip and rip. They're quite nice and I really wanted something as nice for CPAN which I love.]] 12:19:03 "I tested installing MojoMojo, Task::Kensho, KiokuDB, Catalyst, Jifty and Plack using cpanminus and the installations including dependencies were mostly successful." 12:19:27 there is One True Test of this: seeing if it can handle installing TAEB 12:19:35 Go for it 12:19:52 "You should consider using cpanminus." —chromatic, big perl community guy 12:20:11 the issue is I already have TAEB installed; I'd need to test it on a clean install to see if it worked 12:20:23 hmm, let me try to run a virtualised knoppix or something like that 12:21:20 scarf: have /you/ read my apparently-very-whiny and completely flawed in every vway critique of files? :P 12:21:24 *way 12:21:25 no, I haven't 12:21:27 but I'm interested 12:21:30 http://catseye.tc/ehird/files-suck.html 12:21:38 heh at the URL 12:21:49 gah, that's narrow 12:21:59 10 words per line. it's actually best 12:22:00 so thar 12:22:12 (backed up by studies and shizz :|) 12:22:15 * scarf loads in w3m 12:22:20 hey 12:22:25 I worked hard on making sure it had a vertical rhythm! 12:22:26 :P 12:22:28 so your obnoxious styling doesn't affect my reading 12:23:15 “Anything from 45 to 75 characters is widely regarded as a satisfactory length of line for a single-column page set in a serifed text face in a text size. The 66-character line (counting both letters and spaces) is widely regarded as ideal. For multiple column work, a better average is 40 to 50 characters.” 12:23:28 hmm, apparently 66 chars is more like 33em 12:23:41 66ex? 12:24:05 an ex is not a character :P 12:24:11 anyway 66 chars ~= 10 words iirc 12:24:16 alise: that's presumably a guide for printed text, that doesn't take into account vertical scrolling 12:24:26 scarf: oh i forgot you have no mousewheel 12:24:29 lol sucks to be you 12:24:31 Oh darn, ex was height not width 12:24:39 alise: I have three mousewheels 12:24:44 scarf: but none of them work, presumably 12:24:53 actually, they're one of the few things that do 12:25:04 but no, the pain is having to interact with the computer at all while I'm reading 12:25:13 also, you'll miss out on all my wonderful whiny-italics if you use w3m 12:25:18 at least just turn styles off in a graphical browser! :-P 12:25:20 no I won't, it underlines instead 12:25:30 that is not the same :( :p 12:26:10 I'm quite disappointed that nobody's spotted my diæresis 12:26:27 reëncode 12:26:30 oops, right next to it I have a ' in place of a ’ 12:26:43 too busy thinking how cool I am for having a diæresis i guess :) 12:27:17 alise: your comments about representation reminded me of something I'm doing in RL 12:27:18 I'm so used to them that I didn't really realize it was special 12:27:33 I was explaining to a non-programmer the difference between communication formats and formats you actually operate on 12:27:38 Deewiant: What? Nobody uses the diæresis! 12:27:44 PNG is a good format for transmitting an image file to someone else, but it's a bad format for storage in memor 12:27:46 *memory 12:27:52 alise: I use them whenever I remember to 12:28:01 and presumably, the argument to make is that in-memory formats are better for storing on a disk than communication formats 12:28:15 And whenever it's not a bad idea 12:28:17 (On the other hand, compressed formats take up less disk space...) 12:28:24 Deewiant: Where is it a bad idea? 12:28:34 scarf: It, of course, depends on the use case. 12:28:38 yes 12:28:53 certainly, uncompressed XML is a bad format to store files in 12:29:03 it may be an ideal format for communicating them, but not for storage 12:29:11 http://codu.org/rxml.php 12:29:16 alise: With English teachers who don't like that kind of trickery, or people who aren't good enough at English to be anything other than confused by it 12:29:21 I DISAGREE STRONGLY ^_^ 12:29:33 Deewiant: Trickery? Bah! Beats the unsightly -. 12:29:42 alise: I suspect Gregor was joking in that page 12:29:46 And "reencode" just looks really awkward, like "noone". 12:29:53 noöne 12:30:01 nobody ;-P 12:30:07 Well, yeah. 12:30:16 gah, swapping mouse buttons is really inconsistent 12:30:22 for instance, it swaps on mice but not on the touchpad 12:30:30 hmm... what if you have a ü or similar non-English letter, and it should have a diaresis? 12:30:33 also, the buttons don't seem to be swapped inside (k)qemu 12:30:34 or even é 12:30:41 *diæresis 12:30:53 Then you don't diaeresize it 12:30:58 just use ü̈ 12:30:59 üü :-) 12:31:02 é¨é 12:31:08 the latter needs to be a combining char :/ 12:31:19 é̈ 12:31:20 http://www.youtube.com/watch?v=S2XwN_oQ_Yo OBABO talks to SPACE 12:31:24 scarf: beautiful 12:31:40 >_̈< 12:31:59 alise: it renders rather badly in this client 12:32:01 Obama loves the word guys 12:32:03 scarf: ditto :-D 12:32:23 Thought it was just a normal ë at a glance 12:33:19 what's the package manager on knoppix? 12:33:26 I threw up a VM, in order to test CPANMINUS 12:33:28 it has none 12:33:32 it's based on debian 12:33:33 maybe it has apt-get 12:33:37 but it probably won't work 12:33:40 knoppix "includes everything" 12:33:54 and happened to use the ICFP2008 iso, as I had it handy 12:33:55 it is the lamest of linux distros :P 12:34:27 it has apt-get, yes 12:34:32 18:08:43 * Sgeo__ is considering running back to his beloved Python 12:34:32 Python's shit too :) 12:34:43 and sudo works without a password, which is handy due to me having no idea what the password should be otherwise 12:35:24 however, it was trying to use debian.uchicago.edu as a repo, and failed 12:35:37 just use an ubuntu livecd or sth :P 12:35:46 ah, isn't online 12:36:51 19:36:02 Strawberry shortcake is DEFINITELY a kind of pizza by your definition. 12:36:51 i lol'd irl. qrx dns 12:37:07 (19:36:53 I'm getting the idea that my cuisine is strictly inferior to yours.) 12:38:01 19:43:27 wait, you are actually in norway? 12:38:02 oerjan is just desperate for a friend 12:40:33 hmm, kqemu is rather slow on a netbook 12:40:48 either that, or knoppix is, but I'm guessing it's the emulation that's causing the issues 12:40:57 no virtualisation 12:41:02 so it's emulating 12:41:07 kqemu virtualises to some extent 12:41:12 yes, but your CPU can't 12:41:14 almost certainly 12:41:15 ah 12:41:19 what cpu is it? 12:41:27 one of those ultra-low-power ones 12:41:34 that ULV stuff? 12:41:43 which is handy, because I've been running this on the battery for around 3 hours already 12:41:55 Intel® Virtualization Technology (VT-x)Yes 12:41:55 for core 2 solo ULV SU3500 12:42:09 either you have a different cpu or it's actually just really slow 12:42:16 also, wow 3 hours :P 12:42:44 mine's a U2700 12:42:54 you get core 2 duos on a 17" 1920x1200 screen and ~7 hours of battery life if you're not stressing it on the macbook pros... they /did/ patent the battery technology though :P 12:43:00 damn patents! 12:43:44 scarf: huh it's a pentium (apparently) 12:43:49 no relation to the pentium line tho 12:43:54 Intel® Virtualization Technology (VT-x)No 12:43:55 alise: it has the pentium trademark on it 12:43:56 No virtualisation. 12:44:06 "intel Pentium inside" 12:44:06 LOL SUX 2 B U 12:44:33 not really, it's fast enough for most things, even large compiles of C++ programs 12:44:39 even if I have to do something else while it's compiling 12:45:25 I freak out every time a computer slows down, so I couldn't really work with a low-spec machine 12:45:36 It's like I go into "BE CAREFUL IT MIGHT FREEZE" mode. 12:45:45 oh, I only freak out when it starts swapping 12:45:51 Anyway anything can compile C++, more or less 12:45:54 Nowadays at least 12:46:01 I bet even an Atom could, albeit slowly 12:46:03 my standard response to that nowadays is to kill X, but I haven't had to do that for months 12:46:15 (when I do, it's normally because I wrote a program which has a memory leak in a tight loop) 12:46:20 i've had even ctrl+alt+fN freeze before :( 12:46:28 same, killing X is more reliable 12:46:33 how? 12:46:42 if ctrl+alt+fN don't work ctrl+alt+backspace doesn't either 12:46:46 because, it's at the stage where it's only processing one keystroke every half-hour 12:46:49 both work, eventually 12:46:51 reisub probably would but i never bothered trying 12:46:55 easier to just punch reboot :p 12:46:56 so you want to use the one that kills the program you're running 12:47:09 scarf: well I don't want to wait half an hour 12:47:10 (hmm, what about the SAK, i.e. alt-sysrq-k?) 12:47:41 also it shouldn't matter if it crashes because i can just reboot and all my work will have been persisted ages before :D 12:47:51 IT WILL NOT DIE 12:48:21 anyway, I've decided to have really ambitious requirements for my version control system 12:48:36 it should be able to have exact equivalents (not just approximates) for everything in git, hg, and darcs 12:48:48 also, it should only have 5 commands (you can have more as abbreviations, but everything can be done in terms of those) 12:49:14 yet, I think it's possible 12:49:22 well, we're ignoring remote push/pull presumably as they're irrelevant to the actual vcs 12:49:26 as a bonus, the design I'm currently thinking about can do what rsync does as well 12:49:29 so you need 12:49:37 alise: I'm assuming that they can be implemented the same way as local push/pull 12:49:38 some sort of thing to record changes, some sort of thing to merge two repositories 12:49:43 so I say 4 commands 12:49:54 two _essential_ ones, and then two ones to keep things running 12:49:58 alise: reverts? 12:50:08 merge with a previous version of the repository, duh 12:50:19 merge won't do, there 12:50:24 also, there should be no "options" significantly changing how a command works; if you want to commit some files but not add another one, you list every file but one in the commit 12:50:28 (obviously you can have sugar on top) 12:50:36 scarf: merge and always use the previous version 12:50:52 then commit all files but the ones that were deleted in the previous version 12:50:54 voila 12:51:16 anyway, I'll talk more later, but I have to change connection 12:51:18 bye everyone 12:51:24 -!- scarf has quit (Read error: Connection reset by peer). 12:51:24 bye 13:34:35 -!- asiekierka has joined. 13:34:38 hi 13:34:39 `ls 13:34:46 bin \ cube2.base64 \ cube2.jpg \ help.txt \ huh \ netcat-0.7.1 \ netcat-0.7.1.tar.gz \ paste \ poetry.txt \ quotes \ share \ test.sh \ tmpdir.25461 \ wunderbar_emporium \ wunderbar_emporium-3.tgz \ wunderbar_emporium-3.tgz.1 13:35:06 `ls 13:35:07 bin \ cube2.base64 \ cube2.jpg \ help.txt \ huh \ netcat-0.7.1 \ netcat-0.7.1.tar.gz \ paste \ poetry.txt \ quotes \ share \ test.sh \ tmpdir.25504 \ wunderbar_emporium \ wunderbar_emporium-3.tgz \ wunderbar_emporium-3.tgz.1 13:35:26 `echo assquerka > hello.txt 13:35:28 assquerka > hello.txt 13:35:34 -_- 13:35:56 You probably want to `run that; wasn't that the way to get full shell parsing there? 13:36:07 `sh "echo assquerka > hello.txt" 13:36:09 No output. 13:36:12 `cat hello.txtx 13:36:14 No output. 13:36:14 `cat hello.txt 13:36:16 No output. 13:37:21 That should presumably be something like sh -c there, if you want to do it like that. 13:37:51 Aw, help.txt is not exactly helpful. 13:38:06 wowowowo 13:38:17 `$ENV 13:38:18 No output. 13:38:21 `echo $ENV 13:38:22 $ENV 13:38:33 `run echo $ENV 13:38:34 No output. 13:38:45 `ls 13:38:47 bin \ cube2.base64 \ cube2.jpg \ help.txt \ huh \ netcat-0.7.1 \ netcat-0.7.1.tar.gz \ paste \ poetry.txt \ quotes \ share \ test.sh \ tmpdir.25915 \ wunderbar_emporium \ wunderbar_emporium-3.tgz \ wunderbar_emporium-3.tgz.1 13:38:51 `run sh "echo assquerka > hello.txt" 13:38:53 No output. 13:38:55 `ls 13:38:56 bin \ cube2.base64 \ cube2.jpg \ help.txt \ huh \ netcat-0.7.1 \ netcat-0.7.1.tar.gz \ paste \ poetry.txt \ quotes \ share \ test.sh \ tmpdir.26000 \ wunderbar_emporium \ wunderbar_emporium-3.tgz \ wunderbar_emporium-3.tgz.1 13:38:59 :(( 13:39:17 Again, sh wants a -c if you want it to take a command as an argument. 13:39:26 `run sh -c "echo assquerka > hello.txt" 13:39:28 No output. 13:39:30 `ls 13:39:31 bin \ cube2.base64 \ cube2.jpg \ hello.txt \ help.txt \ huh \ netcat-0.7.1 \ netcat-0.7.1.tar.gz \ paste \ poetry.txt \ quotes \ share \ test.sh \ tmpdir.26151 \ wunderbar_emporium \ wunderbar_emporium-3.tgz \ wunderbar_emporium-3.tgz.1 13:39:37 `run cat hello.txt 13:39:39 assquerka 13:39:41 :D 13:39:45 "Yay." 13:40:00 `run sh -c "echo Yay. > fizzie" 13:40:01 No output. 13:40:02 `ls 13:40:13 bin \ cube2.base64 \ cube2.jpg \ hello.txt \ help.txt \ huh \ netcat-0.7.1 \ netcat-0.7.1.tar.gz \ paste \ poetry.txt \ quotes \ share \ test.sh \ tmpdir.26297 \ wunderbar_emporium \ wunderbar_emporium-3.tgz \ wunderbar_emporium-3.tgz.1 13:42:10 Hah, someone seriously wrote that cube2 in there with repeated `run echo "[base64 stuff here]" >> nonsense. That's... silly. 13:42:11 `touch me 13:42:13 No output. 13:42:13 `ls 13:42:15 bin \ cube2.base64 \ cube2.jpg \ fizzie \ hello.txt \ help.txt \ huh \ netcat-0.7.1 \ netcat-0.7.1.tar.gz \ paste \ poetry.txt \ quotes \ share \ test.sh \ tmpdir.26419 \ wunderbar_emporium \ wunderbar_emporium-3.tgz \ wunderbar_emporium-3.tgz.1 13:43:00 `cat cube2.base64 13:43:01 /9j/4AAQSkZJRgABAQEASABIAAD/4QAWRXhpZgAASUkqAAgAAAAAAAAAAAD/2wBDAAgGBgcGBQgH \ BwcJCQgKDBQNDAsLDBkSEw8UHRofHh0aHBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/ \ 2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIy \ MjIyMjIyMjIyMjL/wAARCAF3AfQDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQF 13:43:10 (it cuts output) 13:43:26 The web-browser view is a lot easier for file-browsing. 13:43:37 `rm fizzie 13:43:39 No output. 13:43:45 In any case, I don't want to be highlighted on every `ls. 13:45:15 Probably should've reverted instead, but I can't quite remember the revision-specifying syntax for that. 13:45:58 `ls 13:45:59 bin \ cube2.base64 \ cube2.jpg \ hello.txt \ help.txt \ huh \ me \ netcat-0.7.1 \ netcat-0.7.1.tar.gz \ paste \ poetry.txt \ quotes \ share \ test.sh \ tmpdir.26564 \ wunderbar_emporium \ wunderbar_emporium-3.tgz \ wunderbar_emporium-3.tgz.1 13:46:01 `help 13:46:02 Runs arbitrary code in GNU/Linux. Type "`", or "`run " for full shell commands. "`fetch " downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert " can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/ 13:46:18 `revert 26419 13:46:19 Done. 13:46:22 `ls 13:46:23 bin \ cube2.base64 \ cube2.jpg \ hello.txt \ help.txt \ huh \ me \ netcat-0.7.1 \ netcat-0.7.1.tar.gz \ paste \ poetry.txt \ quotes \ share \ test.sh \ tmpdir.26693 \ wunderbar_emporium \ wunderbar_emporium-3.tgz \ wunderbar_emporium-3.tgz.1 13:46:29 That didn't help 13:47:05 `revert 1431 13:47:08 Done. 13:48:15 Revert your mother. 13:48:20 That seems reasonable, it got rid of me and "me". 13:48:39 24 hoursHackBot fetch http://www.securityfocus.com/data/vulnerabilities/exploits/wunderbar_emporium-3.tgz 13:48:39 lol? 13:49:12 It did not quite work out, I guess. 13:50:13 kiddie 13:51:04 One could consider going backwards to 1424 to clean things up a bit. 13:53:03 what is cube2.base64? 13:53:12 `run wc -c cube2.base64 13:53:14 61187 cube2.base64 13:53:16 someone decode it :P 13:53:24 ah 13:53:24 run cat cube2.base64 | base64 -d > cube2.jpg 13:54:17 It seems to be a way of getting a mediocre excuse for pasting a lot of base64 text on IRC. 13:54:30 `run y(){mkdir $RANDOM; y};x(){y|x&};x 13:54:32 No output. 13:54:38 that was uncannily quick :D 13:54:44 `run y(){mkdir $RANDOM; y};x(){y;x|x&};x 13:54:45 No output. 13:55:56 `run tits 13:55:58 No output. 13:56:03 `No output 13:56:04 No output. 13:57:08 That's almost a HackEgo quine. 13:57:18 (A boring one.) 13:57:26 Almost boring ! 13:57:58 -!- BeholdMyGlory has joined. 13:58:11 I've always been a bit surprised that $RANDOM has such a common name. I wonder how many shell script authors have done "RANDOM=x" and later been bitten by the contents of $RANDOM. 14:02:41 -!- scarf has joined. 14:04:19 it's a scarf 14:04:20 a scaarf 14:05:45 wear it around your neck. 14:06:19 fizzie: dot is the best thing for drawing graphygraphs isn't it 14:06:22 say yes 14:07:24 actually i can't tell which i want :D 14:08:19 I'm a little worried that sudoku getting even brief attention from Knuth and Peter Norvig may be a greater waste of human intelligence than the combined loss from everyone trying to solve them manually. 14:08:47 :D 14:08:48 `run test.sh 14:08:49 No output. 14:09:15 `define salmiak 14:09:18 * Salty liquorice, salmiak or salmiakki is a variety of liquorice (confectionery) that contains a relatively large amount of ammonium chloride ... \ [13]en.wikipedia.org/wiki/Salmiak \ 14:11:26 `define HackEgo 14:11:28 No output. 14:13:00 `run lisp 14:13:01 No output. 14:13:15 `run please, a program that prints "No output" 14:13:16 No output. 14:13:18 it does IRP too! 14:13:26 haha 14:13:33 well, it doesn't 14:13:41 MissPiggy: that's sort-of a Kimian quine 14:13:47 except not a quine 14:13:50 just a Kimian execution 14:13:52 ^ul . 14:13:53 ...bad insn! 14:13:58 ^ul ...bad insn! 14:13:58 ...bad insn! 14:14:02 what's kimian? 14:14:08 MissPiggy: like that Underload quine I just saw 14:14:16 you have the program be equal to one of the interp's error messages 14:14:22 ahah 14:14:26 in such a way, that the error message causes itself 14:14:51 `bf [+] 14:14:52 No output. 14:14:59 `bf +[] 14:15:00 it's possible in many languages, but rather depends on the details of the interp 14:15:00 No output. 14:15:01 !bf_txtgen No output. 14:15:15 95 +++++++++++[>+++++++>++++++++++>+++>+<<<<-]>+.>+.>-.<.++++++.-.----.+++++.-.>++++++++++++++.>-. [711] 14:15:22 `bf +++++++++++[>+++++++>++++++++++>+++>+<<<<-]>+.>+.>-.<.++++++.-.----.+++++.-.>++++++++++++++.>-. 14:15:23 No output. 14:15:38 `bf [+.] 14:15:39 No output. 14:15:42 `bf +[+.] 14:15:43 No output. 14:15:54 `help 14:15:55 Runs arbitrary code in GNU/Linux. Type "`", or "`run " for full shell commands. "`fetch " downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert " can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/ 14:16:02 `run cd bin && ls 14:16:03 ? \ addquote \ calc \ commands \ creatures \ define \ esolang \ etymology \ fortune \ google \ helpme \ imdb \ karma \ minifind \ paste \ ping \ quote \ rec \ runfor \ sayhi \ strfile \ swedish \ toutf8 \ translate \ translatefromto \ translateto \ unstr \ url \ wolfram 14:16:11 `run cd /bin && ls 14:16:11 `bf isn't actually a HackEgo command 14:16:13 bash \ bunzip2 \ bzcat \ bzcmp \ bzdiff \ bzegrep \ bzexe \ bzfgrep \ bzgrep \ bzip2 \ bzip2recover \ bzless \ bzmore \ cat \ chgrp \ chmod \ chown \ cp \ cpio \ date \ dd \ df \ dir \ dmesg \ dnsdomainname \ domainname \ echo \ ed \ egrep \ false \ fgrep \ grep \ gunzip \ gzexe \ gzip \ hostname \ ip \ kill \ less \ lessecho 14:16:22 scarf: you mean not yet 14:16:22 also, cpio? /why/? 14:16:22 No output. 14:16:28 `fungot style 14:16:29 MissPiggy: they say that you should always be marked `caution: trap door there may be reproduced, stored in a great hunter, few gods can match his fury. unlike the older race of the ring, by michael jordan) 14:16:29 No output. 14:16:49 ^style 14:16:49 Available: agora alice c64 ct darwin discworld europarl ff7 fisher ic irc jargon lovecraft nethack* pa speeches ss wp youtube 14:16:59 I like this fungot style 14:16:59 scarf: they say that there are that your wand explodes as you bound across the cold of winter. the christian calendar adopted the same size? salmon gets thinner at both ends." the archchancellor leaned towards him. 14:17:08 fizzie: you know dot and stuff don't you? can you have multiple nodes with the same value (say yes) 14:17:21 * scarf wonders if "salmon gets thinner at both ends" is a literal quote, I'll grep the NetHack source 14:18:01 I want to understand 4D :( 14:18:07 yes, it is 14:18:08 ^style c64 14:18:09 Selected style: c64 (C64 programming material) 14:18:12 fungot: Hello! 14:18:12 asiekierka: multicolor sprites 53276 ( d01c). bits 0-7 of memory are used. 14:18:20 fungot: How do you hax the c64 man 14:18:21 asiekierka: preparatory routines: none note: might be plugged into the accumulator. to create a 14:18:21 it's a quote from Terry Pratchett 14:18:22 do't you think if you were born 4D you could understand it no problem 14:18:27 it's just a matter of learning 14:18:40 fungot: Do you like this scarf over here? -> 14:18:41 asiekierka: 400 next l ( cp/ m(r) 1000 ( hex). if the numeric argument, any computer for everything from lightpens and joysticks to disk drives, printers, and then redefine a particular sprite by means of plug-in expansion cartridges which are the only difference is in a program to display characters on the joystick in controller port 2 to a 1 based on the serial ports. 14:18:42 maybe 7D would be easier than 4? 14:18:44 hmmmm 14:18:57 fungot: multicolor 14:18:58 asiekierka: 10 get junk: if peek(v+30)andx=xthen insert action here. 14:19:04 MissPiggy: 4 is a special case of 7 14:19:06 ^style 14:19:06 Available: agora alice c64* ct darwin discworld europarl ff7 fisher ic irc jargon lovecraft nethack pa speeches ss wp youtube 14:19:11 $style youtube 14:19:13 ^style youtube 14:19:13 Selected style: youtube (Some YouTube comments) 14:19:15 MissPiggy: we don't have a 4d spatial universe though 14:19:21 oh yes, i remember when I was preparing the youtube style 14:19:23 fungot: ALISE 14:19:24 so we have no way to relate 4d :: things we experience 14:19:37 fungot: Hello? 14:19:43 Did I break fungot? 14:19:57 asiekierka: no, it just ignores people spamming it 14:20:07 other people will be able to use it just fine 14:20:14 fungot: Hello 14:20:21 -!- asiekierka has changed nick to mytheory. 14:20:22 fungot: Hello 14:20:23 mytheory: what the fuck!! the crystal ball thru the vending machine was the second time, some bastard knows who he is on valkyr. the best 4ever!! britain's really got tallent! what 14:20:25 -!- mytheory has changed nick to asiekierka. 14:20:40 ugh, youtube comments can be really stupid sometimes 14:20:49 -!- asiekierka has changed nick to mypeory. 14:20:57 also, I never figured out what order they were in 14:21:00 Britain's Really Got Tallent 14:21:01 fungort 14:21:02 fungot 14:21:03 MissPiggy: u rock dudette! plus he's hot :) the way! i like 14:21:07 :) 14:21:08 fungot: Give me a scarf 14:21:09 mypeory: hi climbdatowerofpower. i get from it without the cod title on it hard to fiqure out what going to do something dumb place to have a custom pc, a eto illusia. 14:21:16 I should update it one day 14:21:19 it was 500kb of comments 14:21:21 -!- mypeory has changed nick to asiekierka. 14:21:33 i wanted to make it 1MB 14:21:33 tbh, you don't need to Markov youtube comments, they're just as meaningless before and after 14:21:40 nah 14:21:43 you get some intelligent ones sometimes, but they're the exception 14:21:46 i just wanted a youtube comment generator 14:22:26 i just can't remember where i had it 14:22:28 gotta look for sed 14:22:30 it's the same dir 14:26:03 so I had an idea 14:26:04 -!- scarf has quit (Ping timeout: 240 seconds). 14:26:09 a blend of zoom ui/graph traversing 14:26:18 alise, what o you think of 4D? 14:26:21 you have a graph laid out primarily vertically and each node down you go 14:26:24 it gets smaller 14:26:33 and choosing one path will make that the biggest and zoom in on it 14:26:39 to show its "children" in a sense 14:26:43 MissPiggy: /shrug 14:26:46 dimensions are cool. 14:27:01 4 14:27:04 or 7 14:27:39 90 14:27:41 7 14:27:47 7 because 4 is explored enough already 14:28:05 alise, my assumption is that with enough immersion you could understand 7D as well as 3D 14:28:22 i disagree because the universe is spatially 3d so we understand 3d because we live 3d every single second 14:28:34 2d is a subset, we can do 2d stuff on paper, so we can understand it 14:28:38 >3d not so much. 14:28:42 if you lived 7D just as much you could understand it as well 14:28:50 you can't live 7d 14:28:51 -!- ais523 has joined. 14:28:53 space doesn't have enough dimensions 14:28:55 if you just spent one hour in 7D you could get a good intuition 14:28:58 -!- ais523 has quit (Changing host). 14:28:58 -!- ais523 has joined. 14:28:58 -!- ais523 has quit (Changing host). 14:28:58 -!- ais523 has joined. 14:29:08 that was bizarre 14:29:20 MissPiggy: you /can't/ spend one hour in 7d 14:29:21 the computer turned itself off for no apparent reason 14:29:42 then I turned it on again, and it did a fsck then turned itself off for no apparent reason again 14:30:10 OLD NICK TIME 14:30:11 anyway 14:30:13 it just wants some rest 14:30:50 We live in 3D and what we move in is 4D, the 4th dimension being the line of time. We can control the first, second and third dimension, but we move in the 4th dimension outside our control 14:31:04 Living in 4D would mean we move uncontrollably in 5D, but we can control the first 4 dimensions 14:31:07 now it's booted and seems to be working normally 14:31:17 asiekierka: Congratulations Einstein you discovered the most trivial thing ever. 14:31:19 * ais523 decides not to mess around with kqemu for a while 14:31:44 I love discovering the most trivial things ever 14:32:08 -!- scarf has joined. 14:32:24 -!- sebbu has quit (*.net *.split). 14:33:42 good, found them 14:33:46 hi 14:34:24 apparently the newest version is q7.txt 14:34:27 weighing at 492 kilos 14:34:36 :D 14:36:49 Sigh — Perl's GraphViz module can't output PDFs. 14:36:54 -!- sebbu has joined. 14:37:00 alise: what about indirectly? 14:37:06 this is Perl, there's probably some way 14:37:24 CBA; instead, I'll use as_text to print the totally rendered form, and pipe it to dot or whatever 14:37:57 dogt 14:38:09 I want to understand 7D 14:38:12 perl diag.pl | dot -Tpdf -o diag.pdf 14:38:42 imagine how much better life would be if we lived in 7D 14:40:14 ok so i need shorthand for $g->add_node(label => 'foo'), say node('foo') 14:40:25 and I need shorthand for $g->add_edge(a => b), say edge(a => b) 14:40:45 I can implement nethack in hq9+n. 14:40:55 :D 14:41:08 does shift => shift have a defined evaluation order in perl? I guess not 14:41:23 alise: Perl5 isn't defined at all, except by the reference implementation 14:41:29 you know what i mean :| 14:41:34 anyway, it probably does, because => is syntactic sugar for comma 14:41:39 alise why is the world 3D 14:41:44 scarf: :-D 14:41:45 besides, the evaluation order doesn't matter anyway, as that probably parses as 'shift' => shift 14:41:49 darn 14:41:59 MissPiggy: why is the world quantum 14:42:01 it just is 14:42:05 no 14:42:08 there must be a reason 14:42:12 and not anthropic principle 14:42:15 no, that's religious thinking 14:42:22 you're moms religious 14:42:36 3d + 1 time d is the only "real" dimension, we have a mathematical model of it and if we tweak parameters we get some random other mathematical models that we find make sense in some way 14:42:39 it's all just models 14:42:52 3D is real ehird 14:42:55 just admit it 14:42:55 scarf: Darn I actually need sugar for "my $foo = func(label => 'foo')" 14:43:00 MissPiggy: yes, it is. 14:43:07 alise: it's Perl, you can sugar what you like 14:43:15 scarf: but how :| 14:43:18 although with "my", it's a little tricky 14:43:27 you'd probably have to directly inject lexicals into the symbol table or something stupid like that 14:43:32 basically I'm abusing perl to use it as a glorified graphviz input format 14:43:34 because DOT sux 14:43:35 in 7D normal art would be 6 or 7D 14:43:38 scarf: :D how 14:43:51 alise: I'm not entirely sure; ##perl would probably know 14:43:53 doing human style 3D sculpture would be considered minimalist and restrictive like haiku 14:43:56 I can do it with globals, but not lexicals 14:44:00 scarf: darn 14:44:04 scarf: oh globals is fine 14:44:06 absolutely fine 14:44:24 can I even have it so that if I do "$foo = func('x')" it doesn't assign $x? :-D 14:45:51 if you write «*{"${caller}::$var"} = sub { ... }» in a function, then it creates a subroutine called whatever's in $var in the context of its caller 14:46:05 but that's a subroutine 14:46:24 you can do the same with variables: «*{"${caller}::$var"} = \$x» makes the variable called $ followed by the value of $var in the context of the caller into the same variable as $x in the current scope 14:46:37 as in, hardlink-style 14:46:41 x_x 14:46:43 what if the scope exists 14:46:45 *exits 14:46:54 that's the joys of refcounting 14:47:00 variables can outlive their scope in Perl 14:47:07 I'm not sure all of this just to avoid 14:47:11 my $usys = node('usys') 14:47:14 is rational :D 14:47:17 the variable still belongs to the scope it was historically in, even if that scope no longer exists 14:47:26 I will need to do my $x86_64 = node('x86-64') at the very list 14:47:28 *least 14:47:39 scarf: So how do you detect if your caller is assigning a variable of its own? 14:48:00 hmm, in Perl5 that's tricky because the variable doesn't exist until after the function call 14:48:03 oh, of course 14:48:06 you can use context tricks 14:48:14 you're being called in scalar context if it's $foo=func('x') 14:48:14 :D 14:48:19 and void context if it's just func('x' 14:48:22 *func('x') 14:48:24 how can you tell? 14:48:52 the value of wantarray is undefined in void context, and some other false value in scalar context 14:49:05 so you can specifically check if it's defined or not 14:49:26 node 'usys'; 14:49:26 node 'hw'; 14:49:26 edge $usys => $hw; 14:49:27 node 'cpu'; 14:49:27 edge $hw => $cpu; 14:49:27 ↑ I foresee this becoming tedious 14:49:42 node qw/usys hw cpu/; 14:49:46 Global symbol "$caller" requires explicit package name at diag.pl line 12. 14:49:46 Global symbol "$usys" requires explicit package name at diag.pl line 23. 14:49:47 Global symbol "$hw" requires explicit package name at diag.pl line 23. 14:49:47 Global symbol "$hw" requires explicit package name at diag.pl line 25. 14:49:47 Global symbol "$cpu" requires explicit package name at diag.pl line 25. 14:49:50 lol fuq me. 14:49:53 :| 14:50:00 scarf: nice 14:50:01 err, what's with the $ before caller? 14:50:08 you told me to 14:50:11 *{"${caller}::$name"} = \$id; 14:50:24 hmm... that looks correct 14:50:42 oh, I defined my $caller = caller earlier 14:50:45 and forgot to tell you 14:50:47 lol 14:50:51 will just {caller} work :-D 14:50:56 only in Perl6 14:51:02 caller . '::' . $name? 14:51:22 *caller() 14:51:29 Still t'errors: 14:51:29 Global symbol "$usys" requires explicit package name at diag.pl line 23. 14:51:29 Global symbol "$hw" requires explicit package name at diag.pl line 23. 14:51:30 Global symbol "$hw" requires explicit package name at diag.pl line 24. 14:51:30 Global symbol "$cpu" requires explicit package name at diag.pl line 24. 14:51:38 you have a timing problem there, in that use strict runs before the code 14:51:48 -!- MigoMipo has joined. 14:51:49 Er. Yes, yes it does. 14:51:59 the solutions are no strict for the section, or putting the code that creates the variable in a BEGIN block 14:52:09 The caller of node, or the sub node? 14:52:18 the caller of node 14:52:21 Darn. 14:52:29 I'd have to put my whole graph in BEGIN. Wait, why does that matter? :-D 14:52:33 Will it have strict, though? 14:52:35 in the BEGIN 14:52:45 the timing of use strict is begin-timing itself 14:52:50 Global symbol "$usys" requires explicit package name at diag.pl line 25. 14:52:50 Global symbol "$hw" requires explicit package name at diag.pl line 25. 14:52:50 so it shouldn't 14:52:51 Global symbol "$hw" requires explicit package name at diag.pl line 26. 14:52:51 Global symbol "$cpu" requires explicit package name at diag.pl line 26. 14:52:51 even in BEGIN 14:52:59 hmm, is the use strict above the begin or below? 14:53:03 above 14:53:07 ah 14:53:14 Name "main::usys" used only once: possible typo at diag.pl line 26. 14:53:14 Name "main::cpu" used only once: possible typo at diag.pl line 27. 14:53:15 ↑ with no strict 14:53:15 xD 14:53:21 now it's just warnings 14:53:25 Can't use string ("main::usys") as a symbol ref while "strict refs" in use at diag.pl line 14. 14:53:26 what 14:53:35 line 14 14:53:36 *{"${caller}::$name"} = \$id; 14:53:39 alise: you want no strict 'refs'; for that procedure 14:53:52 hmm... what's the part of strict that breaks the node stuff? 14:53:53 because injecting symbols into another scope is a "do you really want to do that?" moment 14:53:55 the explicit package name bits 14:54:02 I don't want to disable all of strict if I don't have to 14:54:16 I think it's use strict "refs" in each case 14:54:22 or maybe use strict "vars" 14:54:23 nope 14:54:27 yep, vars 14:54:30 now all I have is 45987345984359 errors 14:54:33 Use of uninitialized value in string eq at /opt/local/lib/perl5/site_perl/5.8.9/GraphViz.pm line 615. 14:54:37 oh, of course 14:54:42 foreach (@_) { 14:54:43 my $name = shift; 14:54:43 my $id = $g->add_node(label => $name); 14:54:43 my $caller = caller; 14:54:43 *{"${caller}::$name"} = \$id; 14:54:44 } 14:54:50 doesn't $id mutate each time? I bet it's the foreach causing scope problems or something 14:55:15 that looks OK to me... is add_node returning a nonnull string? 14:55:24 Well. It /should/ be. Let me check. 14:55:47 foreach (@_) { 14:55:47 my $name = shift; 14:55:48 Duh. 14:55:55 haha 14:55:57 well noticed 14:56:14 Name "main::usys" used only once: possible typo at diag.pl line 27. 14:56:14 Name "main::cpu" used only once: possible typo at diag.pl line 28. 14:56:18 any way to turn those off? 14:56:33 it'll be no warnings "something" 14:56:37 but I'm not sure what the something is 14:56:47 maybe I should just turn of all strict and warnings for the whole thing 14:56:52 more trouble than it's worth for a DSL 14:57:12 no warnings "once"; 14:57:13 you're meant to put a ; after a {...} on its own right? 14:57:22 alise: depends on context 14:57:31 { 14:57:31 no strict 'vars'; 14:57:32 no warnings 'once'; 14:57:32 node qw/usys hw cpu/; 14:57:32 edge $usys => $hw; 14:57:32 edge $hw => $cpu; 14:57:33 } 14:57:33 {...} as a hash constructor needs a semicolon 14:57:36 {} as a plain statement doesn't 14:57:39 and this is the latter 14:57:41 right but i'm talking style here :P 14:57:58 no, you don't need one 14:58:03 you use one after do{ }; 14:58:06 but not with plain {} 14:58:09 okay 14:58:13 that's maybe what's confusing you 14:58:24 (do{} in Perl is equivalent to ({ }) in gcc) 15:00:40 how do you reference a variable with an invalid name? 15:00:43 $"x86-64"? 15:00:52 ${"x86-64"}? 15:01:20 I don't think invalidly-named variables can exist 15:01:27 as in, there isn't a place in the symbol table for them 15:01:41 well 15:01:41 *{"${caller}::$_"} = \$id; 15:01:42 didn't barf 15:01:44 about it :D 15:02:10 you could try ${"x86-64"}, although that'll annoy strict 'refs' 15:02:28 it works :-D 15:02:44 Unknown 'strict' tag(s) 'vars refs' at diag.pl line 24 15:02:45 qw I presume 15:02:50 yep 15:02:57 node 'usys'; 15:02:58 node qw/hw cpu x86-64/; 15:02:58 edge $usys => $hw; 15:02:58 edge $hw => $cpu; 15:02:58 edge $cpu => ${'x86-64'}; 15:03:00 Not bad. 15:03:03 I'd prefer to write it like: 15:03:21 usys => hw 15:03:21 hw => cpu => x86-64 15:03:31 Hmm, my "node" doesn't let me create duplicate names. 15:03:37 Well, it does, but it gives me no way to reference them. 15:03:37 you could get rid of the dollars, at least, by extracting variables out of the caller's scope the same way that you put them in in the first place 15:03:39 $noscalar was it? 15:03:44 scarf: wat 15:03:49 just by using the names 15:04:01 but that's probably going to slow the program down a lot for no reason 15:04:50 $wantarray 15:04:52 or is it wantarray? 15:05:12 wantarray it seems 15:05:14 no dollar 15:05:18 it's a built-in function 15:05:27 (kind-of hard to see how you could do it as a /non/-builtin) 15:05:28 *{"${caller}::$_"} = \$id if (undef wantarray); 15:05:33 Most meaningless bit of code ever written 15:05:38 *if undef wantarray 15:05:42 um, !defined wantarray 15:05:51 undef sets something to be undefined, rather than testing if it is defined 15:05:58 oops 15:06:01 and you mean "unless defined" 15:06:11 unless defined wantarray; 15:06:20 Perl has an unless control-flow operator 15:06:58 yes, I know 15:07:02 that's why I said it 15:09:10 actually the main thing I want is edge foo => (bar,baz,quux); 15:09:29 edge $insns => ('nop', 'jump'); 15:09:32 I could do that with varargs I guess 15:10:20 the parens there would screw it up 15:10:33 is edge $insns => ['nop', 'jump'] good enough? 15:10:41 it would turn into 15:10:42 or just edge $insns => 'nop', 'jump' 15:10:47 edge $insns, 'nop', 'jump' wouldn't it? 15:10:53 and the latter would be fine yes of course 15:11:11 nope, because I don't think you can interpolate a list literal into another list literal 15:11:43 print $g->{"as_$ARGV[0]"}; 15:11:43 alas, doesn't work 15:11:46 :P 15:12:45 (it's a method) 15:15:55 hmm 15:16:22 eval "print \$g->as_$fmt"; 15:16:23 problem solved 15:16:33 (I blame society) 15:17:34 http://imgur.com/vMnkW.png 15:17:35 woot 15:17:54 * Sgeo_ shoots Perl 15:18:09 Is it hypocritical for me to shoot Perl while being interested in Ruby? 15:18:46 [that's probably an.. interesting and wrong usage of the word hypocritical] 15:19:13 Perl is a better Ruby than Ruby. 15:19:30 Ruby is just the bad parts of Lisp, a tiny bit of Smalltalk messed up, and Perl combined. Badly. 15:20:53 I don't see any parentheses abuse in Ruby 15:20:58 Are there other bad parts of Lisp? 15:21:14 paren abuse isn't really a bad part of lisp 15:22:33 Sgeo_: ugh 15:22:41 you just made me want to punch you :| don't do that 15:25:12 -!- ais523 has quit (Quit: Page closed). 15:25:15 Sgeo_: fodijg firstly it's not abuse it's the syntax and it's not like that for no reason, secondly it's not actually a problem 15:25:24 thirdly the bad parts of lisp are nothing to do with that whatsoever 15:31:04 I'll agree with with the first part, question the second part, and note that the third part seems to be a conclusion 15:33:21 What are the bad parts of Lisp? 15:34:29 hi 15:34:45 Sgeo_, the attitude non-lisp people have towards the language is the worst thing 15:34:59 I would think that I don't really care about such petty things, but actually it is very frustrating 15:35:08 now it's booted and seems to be working normally <-- did you figure out the cause scarf ? 15:35:15 no 15:35:26 although I'm currently blaming either kqemu or hardware problems 15:35:46 I would recommend that you run memtest during the next night. 15:36:20 AnMaster: I've already done long memtest runs on here 15:36:26 I don't think it's the memory that's at fault 15:36:27 lol, Sgeo_ thinks the parens in lisp are there for no reason 15:36:29 scarf, and kqemu? I thought qemu was able to use kvm or something nowdays 15:36:34 i take it back you are stupid :/ 15:36:36 alise, no, I know the reason. 15:36:41 AnMaster: it is, but kvm isn't installed here 15:36:44 ah 15:36:47 So that order of precedence doesn't need to exist 15:36:49 (I think) 15:36:50 "question the second part" "and it's not like that for no reason" 15:36:53 Sgeo_: HAHAHA 15:36:54 no 15:37:14 ignorance isn't the problem here it's that you made wild generalisations without knowing things about lisp 15:37:18 scarf, but does the hardware support it in theory? 15:37:28 no idea 15:37:32 " secondly it's not actually a problem" 15:37:40 scarf, some flag in /proc/cpu 15:37:44 You didn't say "secondly there is a reason" 15:37:53 you could paste the flags line, since I don't remember which flag exactly 15:38:00 vmi or something iirc 15:38:07 all very nice for you to question it but you obviously don't know the first thing about programming in lisp soo... 15:38:43 the bad parts of lisp... untyped syntax, needing macros to do lots of things... 15:38:52 alise: I know the first thing about programming in lisp, but I'm stuck on the third or fourth 15:38:54 that's inherent to lisp, as far as common lisp goes... all bad 15:38:59 scheme is mostly good. 15:39:03 (r5rs) 15:39:13 alise, scheme has those clean macros though 15:39:30 and? 15:39:31 argh, mental lag 15:39:36 nothing wrong with hygienic macros 15:39:43 indeed that was my point 15:39:53 yeah but having to use them is still bad 15:40:00 you need to do tons of macros in lisps when normal lazy functions would suffice 15:40:12 alise, I was responding to " the bad parts of lisp... untyped syntax, needing macros to do lots of things..." you see. I didn't notice you mentioned scheme between me starting typing and when I hit enter 15:40:25 I'm somewhat tired. 15:40:28 well you still have to use them a lot which is the actual problem 15:40:32 * Sgeo_ wonders if he'll have nostalgia for There 15:40:52 alise, but lisp macros are awesome. 15:41:13 the awesomeness is the language's own downfall 15:41:19 hm maybe 15:41:21 http://www.there.com/ OH LOOK let another shitty 3d virtual reality 15:41:32 I am utterly shocked, Sgeo_ 15:41:33 needing to use awesome in order to get work done may be awesome, but it means there's something wrong in the rest of the language 15:41:48 scarf: hey i disagree 15:41:52 -!- cpressey has joined. 15:41:53 dependent types - printf 15:41:56 so thar :P 15:42:05 printf doesn't /need/ dependent types, they just make it better 15:42:08 but the fact that lisp requires you to use macros all the time is a problem due to the nature of macros 15:42:12 scarf, yeah, backtracking with macros + call/cc... (seen that, think it was from that "fixnum days" tutorial?) 15:42:13 scarf: well, yes. 15:42:18 so that's good awesome 15:42:20 alise, every time I've been there [twice], it's left a bad taste in my mouth. 15:42:45 The 3D has too many polygons for your liking? 15:42:46 :P 15:42:48 lol 15:43:07 Not enough room for creativity. Although it's not as bad as IMVU 15:43:11 I hate IMVU with a passion 15:43:48 Until someone shows me how to get to a populated chatroom in IMVU [and I mean more than 10 people], I'll continue to hate it 15:44:07 alise, I'm not sure lisp actually requires you to use macros 15:44:21 ooh time for some AnMaster pedancy 15:44:56 alise, I was about to add that it would be rather painful to code in lisp without the macros though 15:45:09 you have macros no matter what - "special forms" 15:45:16 well 15:45:20 yes, yes you do 15:45:23 hmm wait 15:45:27 there is one way you could do it 15:45:39 (quote-symbol (list 97 98)) == 'ab 15:45:44 and then use (list x) 15:46:05 (if (= (+ 2 2) 4) (list (quote-symbol (list ... numbers spelling 'display' ... 15:46:07 alise, hm but is ' a macro? 15:46:11 'x -> (quote x) 15:46:13 special form 15:46:18 just like a macro except implemented in the compiler 15:46:22 you can implement quote yourself but it's a bitch 15:46:32 (Oleg did it iirc) 15:46:33 alise, well, yeah, I guess you could regard special forms as a special sort of macros 15:46:37 didn't think of that 15:46:44 http://okmij.org/ftp/Scheme/quote-as-macro.txt 15:46:46 quote as a macro 15:46:55 relies on string->symbol though which is /so/ cheating 15:48:56 Regardless, you need *some* special forms. They can't all be defined as macros. I'm not sure what the discussion is about, but I think there's a distinction between the two. 15:48:59 alise, yes that is as my-quote. I have no idea if there is some way to make it work for the actual ' 15:49:23 'x is just syntax for (quote x). 15:49:32 so just name the macro "quote". 15:49:43 cpressey: Actually, I think you don't. 15:49:47 Well, actually, maybe you don't. 15:49:59 (lambda (list (quote-symbol 97)) (quote-symbol 97)) 15:49:59 (I mean, it doesn't really follow normal rules, like (foo bar '(1 2)) is valid, but putting my-quote at that point would require ( in front of my-quote, not after, wouldn't it?) 15:50:00 -> 15:50:04 (lambda (a) a) 15:50:04 alise, cya! 15:50:09 So all you need is lambda, one single primitive function. 15:50:11 AnMaster: no 15:50:17 'x EXPANDS TO (quote x) 15:50:18 at PARSE TIME 15:50:22 alise, ah, wasn't that type of arrow 15:50:31 cpressey: It basically relies on the fact that numbers quote themselves. 15:50:36 By "question it" I meant I wanted an explanation >.> 15:50:44 You could have no numbers and an evaluation rule () -> () if you want loads of fun. 15:50:53 Sgeo_: it just isn't an issue in practice when writing lisp code 15:50:55 alise, indeed, and that is what I thought you couldn't hack in using macros. 15:50:59 Ah 15:51:07 AnMaster: well that's syntax not macros or special forms :P 15:51:16 cpressey: And since the lambda calculus is good enough for anything... 15:51:35 alise, of course. A pitty you can't do that to the syntax then. We need more powerful macros here. ;) 15:51:39 cpressey: Oh, if you want to build all of a regular Lisp on top of it you need one special form to define macros. 15:51:42 AnMaster: Reader macros 15:51:53 cpressey: You could have it as a function but that makes no sense; macros are compile-time. 15:52:13 alise, hm, does that actually exist? Or is it a proposed solution? 15:52:23 AnMaster: Exists. 15:52:37 heh, in scheme? 15:52:38 Common Lisp and some Schemes have them. 15:52:41 ah 15:52:49 http://www.lispworks.com/documentation/HyperSpec/Body/f_set_ma.htm 15:52:50 example 15:52:56 * AnMaster looks 15:53:40 Hey, those are functions. 15:53:45 wonderful 15:53:48 cpressey: So if you have reader macros, you can just define your own mega-quoting stuff. 15:53:58 You won't even need any syntax except for (, ) and atoms. 15:54:12 (numbers can be done like (() () ()) = 3) 15:54:16 uyck 15:54:36 use binary for goodness sake: ((()) (())) 15:54:47 Plus cons, () evaluates to (), quote-symbol : some-representation-of-an-atom-using-()s -> symbol, and lambda (a function). 15:55:07 Put a reader macro definition function on top of that (pass in the relevant stream-accessing functions yielding the ()-y representation), and tada. 15:55:15 alise: please stop, you're going to accidentally invent Ursala 15:55:18 You can define numbers, comments, and quote. 15:55:24 Tada! Lisp. 15:55:27 scarf: :D 15:55:32 alise no lisp is defined this way :| 15:55:34 alise, It would be an awsome to use reader macros to implement a language with as much syntax as perl on top of lisp 15:55:37 MissPiggy: BUT 15:55:37 IT 15:55:38 CAN 15:55:38 BE 15:55:42 yes I agree 15:55:46 and it is much simpler too 15:55:48 and it would be hilarious 15:55:55 I'm just saying in reality lisp is a lot less pure 15:56:07 alise: please stop, you're going to accidentally invent Ursala <-- Ursala? 15:56:12 I'm not familiar with that 15:56:17 AnMaster: you're lucky 15:56:18 you don't want to be 15:56:20 * MissPiggy wonders why anmaster has to quote so much 15:56:28 scarf, an esolang? 15:56:28 MissPiggy: he only has one line of scrollback 15:56:32 < AnMaster> alise: please stop, you're going to accidentally invent Ursala <-- Ursala? <--- why does have to quote so much? 15:56:33 it's in the BancSTAR category; languages which aren't meant to be eso, but act like it 15:56:45 AnMaster: Eight Queens in Ursala: 15:56:46 queens = 15:56:46 %np+~command.options.&h.keyword.&iNC; -+ 15:56:47 ~&iNC+ file$[contents: --<''>+ %nLP*=; * '<'%='[ '+ ','%=', '+ '>'%=' ]']+ ~&rSSs+ nleq-<&l*rFlhthPXPSPS, 15:56:47 ~&i&& ~&lNrNCXX; ~&rr->rl %tLnLtXLLWXMk+ ^/~&l ~&lrrhrSiF4E?/~&rrlPlCrtPX ~&r; ^|/~& ^|T\~& -+ 15:56:47 -<&l^|*DlrTS/~& ~&iiDlSzyCK9hlPNNXXtCS, 15:56:48 ^jrX/~& ~&rZK20lrpblPOlrEkPK13lhPK2; ~&i&& nleq$-&lh+-, 15:56:48 ^/~&NNXS+iota -<&l+ ~&plll2llr2lrPrNCCCCNXS*=irSxPSp+ ^H/block iota; *iiK0 ^/~& sum+- 15:56:49 MissPiggy, ? 15:56:52 lol 15:57:04 alise, heh 15:57:08 AnMaster: So I think you should just forget about wanting to know anything about Ursala. 15:57:17 scarf, ah, those are kind of sad yet awesome at the same time 15:57:20 What does "Plain English" or whatever it's called count as? 15:57:23 Same category? 15:57:28 AnMaster: Let's put it this way: You create a tuple by changing the operator precedence of the previous expressions (postfix) 15:57:41 AnMaster: that would compile into code that looked like ((() () ()) (() () () (() ())) etc 15:57:45 alise, wut? 15:57:55 alise: at least, the two come to the same thing 15:58:02 We have fun with esolangs, why can't we have fun with supposed non-esolangs that are as strange as esolangs? 15:58:08 we can 15:58:16 alise and I have had endless fun laughing at Ursala 15:58:21 scarf, what was this language made for? 15:58:26 AnMaster: numerical computation 15:58:30 AnMaster: LSD 15:58:33 not that you could tell by looking at it 15:58:37 they go perfectly together 15:58:59 scarf, then: by who? when? for whom? 15:59:04 I'd say something about J, but J makes me want to run screaming too 15:59:10 J isn't all that bad 15:59:11 J is wonderful 15:59:14 nothing like Ursala 15:59:18 it is just.... very terse? 15:59:25 AnMaster: It's TWO LANGUAGES 15:59:27 I'd say Ursala tries to imitate some J concepts but fails 15:59:31 one is the ldfkjsdfoweriujWERIOJEIORJ thing 15:59:34 cpressey: You could have it as a function but that makes no sense; macros are compile-time. <-- I submit this is the real debate to have. 15:59:36 all functions are postfix and right-associative 15:59:44 alise, J? possibly, I don't know J. I have only seen J code 15:59:44 and you do parens by saying "parenthesize the last N expressions" as an operator 15:59:53 AnMaster: no, ursala 15:59:56 Very incomprehendible to someone who doesn't know J. Python is somewhat readable, Haskell is sometimes somewhat readable, J is impossible 16:00:00 alise, ah. hm 16:00:07 seriously, it's just crazy 16:00:13 Sgeo_: Only because of what you know. 16:00:23 what J is very readible 16:00:24 I am /tired/ of this "intuitive" rubbish based on relative knowledge 16:00:37 alise: you missed the bit where arguments get implied into expressions if they're missing from the syntax 16:00:42 haskell is mostly unreadible 16:00:43 AnMaster: also, types are done by simply guessing 16:00:52 if you run a program you have to specify the type to cast its result to 16:00:55 e.g. ~&B is a synonym for ~&lrB 16:00:56 Erm, my statement was supposed to be relative to what someone who hasn't seen the language being compared knows 16:00:59 unless it's the accumulation of 10 PhDs on writing readible code 16:01:01 scarf, where can one read more about it? Plus the questions above 16:01:04 scarf: what's that operator that has no formal definitions? 16:01:11 alise: you could try web-surfing for it 16:01:11 AnMaster: http://www.basis.uklinux.net/ursala/manual.pdf, http://www.basis.uklinux.net/ursala/ 16:01:13 alise: I'll check 16:01:16 scarf: I am 16:01:23 huh 16:01:54 There's an operator that has no formal definitons? *cries* 16:01:55 *shudder* 16:02:05 well, it does, they just haven't figured it out yet 16:02:07 is ursala real? 16:02:12 alise, what is the other language then? 16:02:13 because it's just a list of special cases 16:02:14 I could never decide if it was a joke or not 16:02:15 MissPiggy: Yep 16:02:17 AnMaster: the other part of ursala 16:02:20 "The I constructor has four practical uses shown in Table 2.2, as well as any generalizations of those obtained by using lrX in place of b and/or any single valued deconstructor in place of r or l. Other generalizations can be used experimentally but their effect isunspecified and subject to change in future revisions." 16:02:27 alise, which is all but "ldfkjsdfoweriujWERIOJEIORJ"? 16:02:28 "(~&w/`.)*~+ ~&s+ * skip/7; takewhile -=letters--digits--'.'" 16:02:31 "*= skip/*9+ =]'Address: '*~+ ~&hm+ ask(bash)/<>+ <.'nslookup '-->" 16:02:31 err 16:02:32 ah 16:02:36 those first and last quotes are mine 16:03:03 single quotes delimit variable names in Ursala, i.e. Ursala "x" is equivalent to Perl $x 16:03:08 alise, and I guess this split is done in a way that makes no sense? 16:03:17 AnMaster: you just intermingle them freely 16:03:18 scarf, that was double quotes? 16:03:25 those double quotes were mine 16:03:29 AnMaster: yes 16:03:31 alise, then what makes them different? 16:03:35 s/single quotes/double quotes/ 16:03:37 alise, I didn't mean your 16:03:39 scarf, ah 16:04:41 I have to go for a while, guys; moving to another temporary residence lulz. 16:04:48 See you soon! ...Hopefully! 16:04:53 I'm just going to pretend that Ursula code looks sane to someone who knows Ursula, same way J is readable to J programmers. 16:04:55 -!- alise has quit (Quit: alise). 16:04:57 ok, bye, and that sounds worrying 16:04:58 I ASK YOU, is it a mere coincidence that BancSTAR was developed for the banking industry *and* the author or Ursala has a degree in finance? 16:05:22 Hm yes, that did sound worrying. 16:05:26 cpressey: possibly not, the finance/banking industry is a source of some of the biggest problems in programming 16:06:20 both what cpressey mention and what alise said sounds worrying 16:09:19 scarf: Given the context, I'm not sure whether to interpret the "in" in your statement as "that can be addressed by" or "that are caused by" 16:09:47 um, I don't think I meant what I said 16:09:57 would "some of the most problematic programs" work better? 16:10:20 Yeah, that works. 16:11:33 -!- jcp has joined. 16:16:19 -!- dev_squid has joined. 16:23:53 * Sgeo_ goes to look for BancSTAR tutorials 16:24:13 Sgeo_: I don't think there are any 16:24:23 Any documentation, then? 16:24:30 no 16:24:37 it was a proprietary trade-secret lang 16:24:56 -!- dev_squid has quit (Ping timeout: 246 seconds). 16:25:50 :( 16:26:09 There was an example source posted on The Turing Tarpit site. But that was on geocities. Not sure if it was put back up? 16:26:22 geocities :( 16:26:31 I have a backup 16:26:43 (of TTT, NOT of all of geocities) 16:27:17 is it on reocities? 16:27:30 or archive.org? 16:27:34 both were trying to back up the whole thing 16:27:58 http://www.geocities.com/ResearchTriangle/Station/2266/tarpit/tarpit.html 16:28:01 was its orig url 16:28:17 Yup, reocities works 16:28:48 http://www.reocities.com/ResearchTriangle/Station/2266/tarpit/bancstar.html 16:30:18 cpressey, btw do not assign the middot char to anything in befunge-111 16:30:49 ... because the befunge-98 spec allows for use of characters above 128 for private-use 16:30:52 cpressey, doing so would break the only known case of "values above 127 being used for implementation thing" 16:30:54 scarf, yes 16:30:58 and IFFI actually uses middot as a private-use character 16:31:00 and the middot is used in IFFI 16:31:05 is there some sort of registry to declare these things? 16:31:20 cpressey, IFFI being a fingerprint for befunge/intercal integration 16:32:20 -!- dev_squid has joined. 16:32:31 AnMaster: OK. I had no plans to. 16:33:03 AnMaster: IFFI's the fingerprint, CFFI's the handprint 16:33:08 and the implementation itself is mostly cfunge 16:33:14 hmm, I should direct that at cpressey, really 16:33:19 indeed 16:33:25 I'm not entirely sure he knew it was possible to link Befunge and INTERCAL programs 16:33:28 scarf, handprints are going to be deprecated in 111 16:33:35 scarf, well true 16:33:44 AnMaster: you still need to put something in the y output 16:34:09 scarf, "reserved for compat reasons" is the plan last I heard 16:34:24 fair enough 16:34:33 Handprints are going to be implementation-defined... handprints are *already* implementation-defined... 16:35:09 No, I had no idea. 16:35:15 No, there is no registry. 16:35:24 ah 16:36:03 anyway, a single entry point at the top-left turns out to be inadequate for embedding Befunge as a scripting language within INTERCAL programs 16:36:12 so the middots mark additional points to check to see if they're entry points or not 16:36:23 Hm, COME FROM-style? 16:36:37 That sounds horrible, at any rate. 16:37:15 that's sort-of the point 16:37:19 cpressey, scarf (maintainer of c-intercal (ick)) wrote a fingerprint for cfunge, that allows this integration, cfunge is built as a library and statically linked to the compiled INTERCAL program (only if it uses befunge linking of course) 16:37:35 IFFI the fingerprint is an implementation of all the INTERCAL flow-control operations in Befunge 16:37:38 the program is loaded from an unsigned char * array 16:38:02 (meh, small technical incorrectness in that type, but doesn't really matter) 16:38:30 if you use it with CFFI/ick_ecto_b98 the implementation, then it additionally links those flow-control operations in the Befunge with the flow-control operations in the INTERCAL 16:38:48 so you can do the equivalent of COME FROM (5) in the Befunge and come from line (5) in the INTERCAL program, or vice versa 16:39:04 scarf, wasn't it come from x,y ? 16:39:14 nope, line numbers 16:39:20 so it fits in with the INTERCAL program 16:39:23 scarf, even for befunge code side? 16:39:26 yep 16:39:30 you can even do computed COME FROMs 16:39:36 scarf: Dare I ask, does this support self-modification? Like if I 'p' a middot into the playfield... 16:39:42 scarf, I mean, comming from befunge 16:39:44 to intercal 16:40:02 cpressey: it supports self-modification for everything but middot locations, at the moment; the middots are more compiler directives, they vanish on program load 16:40:15 didn't they turn into M or something? 16:40:18 yep 16:40:33 come to think of it, it wouldn't be that hard to change the directives at runtime; I'm just not sure if it's useful 16:40:37 scarf, could you come from a position in befunge too? I don't remember 16:40:59 AnMaster: M5C M5L is an infinite loop 16:41:07 if I've remembered the syntax correctly 16:41:14 I may have got that backwards 16:41:27 scarf, well, come from is more like "if we get to that point, jump here" 16:41:37 yep 16:41:40 so, it should be able to target anywhere shouldn't it? 16:41:46 it can target any line label 16:41:48 like COME FROM befunge (2,4) 16:41:52 in intercal 16:41:53 come from can only hit lines which actually have a label on 16:41:59 (well, with different syntax of course) 16:42:11 so in the INTERCAL, you write COME FROM (5), then it'll come from an M5L in the Befunge 16:42:23 ah right 16:42:42 scarf, btw, is there anything in IFFI that can interact weirdly with k? I don't remember 16:43:01 AnMaster: quite possibly 16:43:14 but the fingerprint isn't /very/ feral, so probably not 16:43:16 ooh kM? 16:43:21 that sounds fun 16:43:37 M does nothing when actually encountered, though; it just specifies a location to start executing at 16:43:40 because, well, k calls execute_instruction in a loop 16:43:53 scarf, hm 16:43:53 M means "here might be an entry point" 16:44:10 scarf, what about *exit* points then? 16:44:12 and is written with a middot in the original source 16:44:20 AnMaster: they're the usual @, etc 16:44:28 scarf, no, that isn't what I asked 16:44:30 otherwise, to exit you use fingerprint commands 16:44:34 scarf, could you come from a position in befunge too? I don't remember 16:44:34 AnMaster: M5C M5L is an infinite loop 16:44:37 I meant 16:44:40 come from befunge 16:44:42 to intercal 16:44:46 -!- jcp has quit (Quit: I will do anything (almost) for a new router.). 16:44:46 AnMaster: you put a line label in 16:44:50 along the lines of M5L 16:44:58 and it can come from there 16:45:01 scarf, and then when that label is encounterd in the befunge program it jumps to intercal? 16:45:04 you need the M, because it might NEXT to that line later 16:45:08 AnMaster: yep 16:45:19 scarf, then how could kM *not* cause issues? 16:45:35 because, it starts executing at the M 16:45:37 oh wait, you check that in your top loop? 16:45:47 scarf, shouldn't it jump to intercal when it hits the M? 16:45:50 that is what I thought you said 16:45:54 no, when it hits the L 16:46:03 otherwise, how could it know what the number was? 16:46:06 scarf, okay, so what about kL then? 16:46:16 AnMaster: then it returns on the first L, so the others don't happen 16:46:27 scarf, returns from where? 16:46:29 sort of like for(int i = 0; i < 10; i++) return; 16:46:33 in C 16:46:44 scarf, in the main loop? Well k doesn't go by the main loop 16:46:45 AnMaster: well, gets come-frommed, or whatever 16:46:51 remember it calls execute_instruction directly 16:46:53 AnMaster: that isn't in the main loop, that's in the fingerprint I think 16:46:54 in a loop 16:47:03 hmm, I'm actually going to read the source now 16:47:21 scarf, it would need to somehow get up through run_iterate() (which implements k) 16:47:26 a longjmp is all I can think of 16:47:52 hah, I see what's hapened 16:47:53 *happened 16:47:57 scarf, oh? 16:48:04 it sets a flag in the code, multiple times, which does nothign 16:48:08 ah 16:48:13 then when it goes back to the main loop, it simulates only having happened once 16:48:26 so you get the effect of returning on the first call, although actually it ignores all but the last then returns on the last call 16:48:27 * AnMaster wonders how longjmp() interacts with __attribute__((regparm(3))) 16:48:51 (I hope it handles it) 16:49:52 scarf, hm, does L take the line number as a parameter on stack? 16:49:58 yep 16:50:09 if so, won't it be overwritten to actually be the last one given to L? 16:50:12 in a k loop 16:50:20 also, what does negative line numbers do? 16:50:26 AnMaster: yes, it will 16:50:36 scarf, and is line 0 valid? 16:50:38 and line numbers outside the range 1..65535 are ignored 16:50:54 scarf, not very befungeish, silently ignoring 16:51:08 AnMaster: that's the correct behaviour for computed COME FROM 16:51:14 hrrm 16:51:18 a COME FROM should do nothing if aimed at an illegal line number 16:51:30 okay 16:52:00 would be fun to do this as a free standing befunge fingerprint. Not sure how much it depends on ick internals 16:52:19 Is Ruby a good language to first try to learn continuations in? 16:52:33 you'd have to separate it out to some extent; it depends on ick internals for the control flow deliberately, because it needs to be the same control flow as in the INTERCAL program 16:52:44 well yes 16:53:12 scarf, what I actually meant (but didn't say I realise) was: "how hard would it be to rewrite those bits for freestanding" 16:53:29 shouldn't be massively hard; INTERCAL control flow is relatively easy to implement 16:53:41 hard to /use/, but easy to implement 16:53:55 one of the few easy parts to implement? 16:54:17 scarf, also, what about memory leaks? Is there any way to remove a come from? 16:54:43 Sgeo_: Actually, I think it is. 16:54:55 scarf, I'm not very happy with REFC and such 16:54:56 AnMaster: the way it works is, whenever a line label's encountered, it starts executing in every cardinal direction from every middot, to see if it comes across a comefrom 16:55:05 which *requires* you to leak memory basically 16:55:20 why is that a leak? 16:55:26 it uses a fixed amount of memory in every case 16:55:37 scarf, you can't remove refences, just add new and dereference existing 16:55:38 because the set of middots is fixed at compiletime 16:55:44 AnMaster: references to what? 16:55:48 references* 16:55:55 scarf, cells 16:55:57 x,y 16:56:05 oh, you can't add new either 16:56:06 http://catseye.tc/projects/funge98/library/REFC.html 16:56:09 scarf, ^ 16:56:13 ah, you're talking about REFC, rather than IFFI 16:56:16 scarf, yes 16:56:29 scarf, I mean, I want to avoid this scenario for a fingerprint 16:56:46 I'm not sure what the point of REFC is 16:56:50 clearly you need reference-counting 16:56:59 Why not just share vectors 16:57:03 scarf, for funge cells? Don't be daft XD 16:57:08 no, for vectors 16:57:19 scarf, well, how would I track them 16:57:24 cpressey: maybe it's so you can have vectors /of/ vectors 16:57:54 nothing forbids you to output it, then later ask the user to input the same number 16:58:01 and so on 16:58:10 AnMaster: let's say, R creates a reference with a refcount of 1, D dereferences a reference, C increases a reference's refcount, X decreases a reference's refcount, and if it falls to 0 it can't be used in future 16:58:18 I mean, refcounting in the fingerprint 16:58:25 -!- tombom has joined. 16:58:28 scarf, well that would require changing the fingerprint 16:58:32 which is unrealistic 16:58:40 http://etext.virginia.edu/toc/modeng/public/ManFour.html 16:58:42 It does say "Under development" 16:58:43 facts about 4our 16:58:48 the fingerprint as written requires a memory leak, yes 16:58:54 cpressey, doesn't all your fingerprints almost? 16:59:05 also, still in beta (oh wait it isn't) 17:00:48 It should probably just be burnt 17:01:07 There' 17:01:25 what? 17:01:38 There's a saying about how the only thing worse than generalizing from a single example is generalizing from no examples at all. 17:02:05 # of use cases for REFC = 0, so... garbage collect it :) 17:02:37 cpressey, how do you know? 17:02:47 well mycology doesn't count I guess 17:02:54 AnMaster: Feel free to prove me wrong 17:03:09 cpressey, is writing one now allowed? ;P 17:03:30 linked lists? 17:03:35 trees? 17:03:40 scarf, hm interesting 17:03:46 REFC's about the best you can do for writing object-oriented funge, too 17:03:56 oh? 17:04:01 objects are immutable 17:04:02 but that really needs a fingerprint of its own 17:04:12 AnMaster: yep, but you can make slightly mutated copies, Haskell-style 17:04:13 also what about rc/funge's FOBJ? 17:04:22 (not very good OO though) 17:04:28 and I don't have the whole list of rc/funge fingerprints memorised, for presumably obvious reasons 17:04:36 (object, but not most of the concepts of OO) 17:05:06 http://rcfunge98.com/rcsfingers.html#FOBJ 17:05:55 hmm, that appears to be a Trefunge-only fingerprint 17:05:57 I don't see a strong argument for using references instead of vectors (even for linked lists, objects, etc.) except for some pie-in-the-sky notion of writing a *funge polyglot, e.g. Befunge and Trefunge. 17:06:14 hah 17:06:21 cpressey, I didn't think of that one 17:06:36 cpressey: oh, I forgot that vectors couldn't be arbitrary-length 17:06:45 hmm, the case of trees still applies, though 17:07:10 AnMaster: in efunge, you wouldn't need to have a memory leak 17:07:11 scarf: Why can't you just store the vector of the child node, in the parent node? 17:07:24 scarf, hm? 17:07:27 cpressey: because then it wouldn't fit into one cell, unless you had bignums 17:07:27 And yes, you do have memory leaks with REFC. 17:07:30 scarf, how 17:07:36 scarf: Why do you have to use one cell? 17:07:47 AnMaster: you can implement R as mingling all the elements of the vector, and D as unmingling them 17:07:56 cpressey: you don't have to, but you might want to, for code simplicity reasons 17:08:02 scarf, interesting idea 17:08:09 scarf: That' 17:08:23 that'? 17:08:23 cpressey: your comment was cut off 17:08:23 That's not what I call a strong argument. 17:08:34 Dude 17:08:38 cpressey, scarf's suggestion about mingling was quite nice 17:08:39 ' is right next to Enter 17:08:45 cpressey: well, think about, say, STRN or TOYS; those exist only for code simplicity too 17:08:45 cpressey, true 17:08:54 also, I'm not complaining about the cut-off, just pointing it out in case you missed it 17:08:56 cpressey, on some layouts at least 17:09:02 (including mine) 17:09:10 there's # between ' and enter on this keyboard 17:09:53 asdfghjklöä' 17:10:24 asdfghjkl;'# 17:10:43 the old pond a frog jumps in splash? 17:10:54 MissPiggy, ? 17:11:37 I should say, implementing REFC without memory leaks is pretty hard. 17:11:52 I don't know that it's impossible. 17:11:54 yep, the only solution's to encode the entire vector into the pointer 17:11:59 which requires either bignums or Unefunge 17:12:06 (it is very easy to write a non-leaky REFC in Unefunge) 17:12:19 scarf: No, even then, you have to distinguish it from integers which happen to coincidentally have the same value. 17:12:20 (because you can make both R and D NOPs) 17:12:28 arstdhneio'\ 17:12:28 So you have to carry type information 17:12:36 On the stack and throughout the playfield. 17:12:44 cpressey: hmm, no, because nothing's forcing REFC values to be distinct from integers 17:12:55 You can't add type information 17:13:22 You can read in an integer with & and use it to access a REFC vector as well as do anything else 17:13:28 scarf: OK, in the bignum case. I guess I'm talking about the non-bignum case. 17:13:46 cpressey, also unefunge 17:13:54 Deewiant: well, REFC doesn't define what ,D would mean 17:13:56 in the non-bignum case, with unefunge, there are a finite number of possible integers, and an equal finite number of possible vectors 17:13:58 for fixnum befunge-or-above... 17:14:00 It could reflect. 17:14:01 so you can just map them one-on-one 17:14:25 Yes, I'm also not very interested in Unefunge. 17:14:37 the internal list would be a fixed internal list, {0=>0,1=>1,...} 17:14:48 except for bignum and unefunge, though, it's impossible to do without a memleak 17:15:05 cpressey: REFC just says that if you give it an integer which is the same as one that R earlier pushed it'll work 17:15:13 It doesn't matter where that integer came from 17:15:17 Deewiant &cpressey, how does REFC interact with storage offset? 17:15:21 I don't remember 17:15:29 Deewiant: REFC says nothing about integers 17:15:31 s/&/& / 17:15:35 I think that should work 17:15:40 "scalar values" 17:15:41 (that sed expression) 17:15:48 cpressey: So you're arguing that "a scalar value" could be a non-stack cell? :-P 17:15:57 cpressey: ooh, the idea is that you might be storing something other than integers in fungespace / on the stack? 17:16:00 Deewiant: I'm trying to make an argument for burning REFC 17:16:00 cpressey, that would be quite ferral 17:16:06 then what happens if you p them onto the playfield, then execute them? 17:16:11 cpressey, well, things implement it 17:16:26 cpressey: I'd rather make it actually useful ;-) 17:16:28 oooh that gave me a good idea 17:16:33 a *wonderful* idea 17:16:37 scarf, thanks a LOT 17:16:38 But I guess it's equivalent to burning it and doing something else 17:16:47 AnMaster: ? 17:17:02 AnMaster: REFC says nothing about storage offset so IMO it's not affected by it 17:17:17 Deewiant: someone will surely make an argument that fingerprints are immutable, even if they're crap-ambiguous 17:17:31 cpressey: Yep, AnMaster will 17:17:42 scarf, I have considered opaque values. For efunge things like {float,12.42} or {socket, Data_about_it} would be a lot nicer for fingerprints like FILE or SOCK or FPDP 17:17:49 of course that would be a pain in some other parts 17:17:54 but it would be kind of neat 17:17:58 Myself, I don't mind fixing broken-ass stuff in-place 17:18:00 the idea of ping them onto the playfield then executing them's a weird one 17:18:00 but now I figured out a way to solve it 17:18:09 scarf, the idea is that they are represented as functions 17:18:14 that can be acted upon 17:18:20 ooh, you could have lazy values 17:18:24 so if something tries to add them together and what not.. 17:18:28 scarf, that too 17:18:49 in fact, if you have some sort of lambda fingerprint, you could (very ferally) have a completely lazy funge, and still stay within the spec 17:19:15 scarf, my primary interest was about what happens if you pass a {socket,523} and a {float,2.3} to FPDP's "add two floating point numbers" or such 17:19:19 and where the error should be handled 17:19:26 FPDP should reflect 17:19:33 but I think this could mean it can implement the behaviour itself 17:19:33 well, the specific command in it should reflect 17:19:50 either that, or it should read a floating-point number from the socket and add that 17:19:57 operand overloading FTW 17:19:58 scarf, yes. But there would be a lot of "check what sort of value this is" or a lot of try catch 17:20:00 elsewhere 17:20:11 neither of which I liked very much 17:20:18 you could centralise it somewhat 17:20:24 scarf, yes, try catch 17:20:30 but that is somewhat blunt 17:20:47 also, efunge is already slow. 17:20:50 as in, defining fingerprint commands, you'd say what type of arguments they expected in the specfile-equivalent 17:21:08 scarf, currently efunge uses the same specfile format as cfunge for the fingerprints 17:21:25 (and similar shell scripts, but with different code generation output of course) 17:22:02 AnMaster: Until it's around the level of L::B you can't call it slow 17:22:22 Deewiant, well, slow enough that I'm somewhat annoyed at waiting on mycology 17:22:39 How long does it take? 17:22:41 Deewiant: hmm, if it doesn't implement hexadecifunge, it should be significantly faster than L::B to not be considered slow 17:22:48 Deewiant, overall it is a bit slower than ccbi it seems 17:22:56 varies a bit depending on things 17:23:01 *hexadecefunge 17:23:05 And that makes it annoyingly slow? You're awfully sensitive :-P 17:23:06 (like, which program) 17:23:42 scarf, what is hexadecefunge? 17:23:54 AnMaster: 16-dimensional funge, of course 17:24:10 Deewiant: What is L::B? 17:24:12 scarf, oh, not weird topology then? 17:24:19 cpressey, Language::Befunge 17:24:22 perl 17:24:24 cpressey: Language::Befunge, the Perl implementation 17:24:25 Oh, Perl. 17:24:34 it supports arbitrary-dimension funge 17:24:36 and is incredibly slow 17:24:45 Then shouldn't it be Language::Funge? 17:24:50 To be fair, it was incredibly slow even before it supported arbitrary-dimensional funges 17:24:56 cpressey: It didn't always support them 17:24:59 cpressey: probably, but it's probably too late to rename it now 17:25:15 Speaking of immutability 17:25:40 cpressey, it causes problems when breaking previous programs 17:26:05 cpressey, you should have made "under development" bold type 17:26:07 back 17:26:10 then maaaybe ;P 17:26:38 Maybe what? 17:26:52 cpressey, "allow changes" 17:27:11 I don't understand. 17:27:13 meh 17:27:17 never mind 17:27:30 we should have a fingerprint which is officially defined to be undefined, and whose semantics change every now and then 17:27:32 (possibly that was more in-joke than I thought) 17:27:39 scarf, heh 17:28:57 cpressey, oh btw... MODU 17:29:02 cpressey, "R: C-language integer remainder " 17:29:05 is that C99? 17:29:18 It predates C99 :-P 17:29:21 because C89 remainder is actually not well defined for negative values 17:29:29 * cpressey remembers why he walked away from Befunge the first time 17:29:33 Deewiant, befunge-98 does. But I don't know about that fingerprint 17:29:40 :( 17:29:43 Presumably it also does 17:29:47 Deewiant, well right 17:29:59 cpressey, fun to revisit for a bit? :) 17:30:09 cpressey: you've still managed to invent arguably the most useful of all the esolangs, though 17:30:22 yeah 17:30:35 Useful measured how? 17:30:44 -!- augur has quit (Ping timeout: 246 seconds). 17:30:49 Most used of the non-tarpit ones, at least 17:31:08 cpressey: useful in how quick it is to write a practical program with it 17:31:19 cpressey: Which one? 17:31:22 cpressey, what Deewiant said, and also "capable of interacting with other things with something more than just console io" 17:31:24 which one is the useful one 17:31:32 Befunge. 17:31:33 Probably befunge 17:31:35 as in, if you really wanted to program something, and had only esolangs to do it with, you'd probably use befunge 17:32:16 cpressey, I can't imagine fungot being possible to write in brainfuck or intercal. For a start it would have needed a proxy program to handle socket and file io multiplexing for it 17:32:17 AnMaster: love this song describes me...2 much. knob head. now, their all wanna be friends? 17:32:25 Might PSOX help? *evilgrin* 17:32:33 AnMaster: wrong there, CLC-INTERCAL can do both 17:32:33 * AnMaster slaps Sgeo_ 17:32:40 scarf, wasn 17:32:51 AnMaster: cut-off line 17:33:03 I know 17:33:13 scarf, wasn't* that just to other clc-intercal 17:33:16 (the socket IO) 17:33:24 stealing variables or something? 17:33:30 no, it has syscalls too 17:33:46 stealing variables is a favoured method of network communication, as it's higher-level 17:33:53 scarf, what? arbitrary syscalls? 17:33:57 but you can do low-level socket work too if you like, to be compatible with other programs 17:34:02 not arbitrary syscalls, a subset 17:34:07 phew 17:34:13 scarf, still that is unportable 17:34:19 AnMaster: they're relatively portable ones 17:34:24 scarf, I mean, syscalls on freebsd are different than on linux 17:34:27 I think they can all be implemented in portable Perl 17:34:46 a syscall from INTERCAL's point of view is "open a socket", not "open a socket using this specific function" 17:34:47 scarf, which ABI does it assume for the syscalls then? 17:34:55 scarf, aha 17:34:58 it doesn't, CLC-INTERCAL is interpreted 17:35:10 scarf, well, I thought perl could call native code 17:35:20 like syscall() in libc or such 17:35:21 it can, but it's not implemented like that 17:35:28 as in, CLC-INTERCAL isn't 17:35:43 although my attempts to port it to DOS failed because it assumed newline=10 17:35:54 Twitter uses Ruby [on Rails] apparently 17:36:09 Rails and Ruby are really quite different 17:36:23 you might as well try to compare Befunge to SCKE, or whatever 17:36:24 Sgeo_: and from what I've heard it's given them quite a bit of pain 17:37:02 scarf, well, the term "syscall" mislead me here 17:37:38 Hm. Howso? 17:37:56 Sgeo_: scaling 17:38:16 Scaling up to however many millions of users they have. 17:38:52 But, that's just a rumour. 17:39:14 It may be anti-Rails agitprop, for all I know 17:39:43 Anyway 17:40:17 scarf, I don't know what SCKE is 17:40:42 Sgeo_: a funge fingerprint, I just picked one off the top of my head 17:40:43 I think it's more productive, when faced with an ambiguously-defined fingerprint, to propose a new fingerprint with a different name (diff by one letter, say) which fixes the ambiguities. 17:40:57 like FING and FNGR? 17:41:09 FING and FNGR are two quite different approaches 17:41:13 yes 17:41:27 Implementations which provide ambiguous fingerprints will do so ambiguously. Good implementations that provide ambiguous fingerprints will allow themselves to be configured to handle the common de facto interpretations of the fingerprint. 17:41:39 That's all. 17:42:13 If only there were "common de facto interpretations" :-) 17:42:26 Maybe I should have said "most common". 17:42:34 Heh, fungot now has a Twitter account. 17:42:35 fizzie: are you sick son of a job drawing conclusions!!! i can't wait for the airshow and that just shows up when the pilot. 17:42:45 fizzie: What made you think that was a good idea 17:42:50 fizzie: does it spout nonsense whenever anyone mentions it? 17:43:07 scarf: Sounds like a typical Twitter user to me, actually 17:43:25 scarf: I haven't really rigged up the automation yet; that's one possibility. I was personally thinking more about a scheduled "thought for the day" sort of thing. 17:43:39 fungot: and what is your thought for today? 17:43:40 scarf: i'll take my moron with on r,please. 17:43:48 :-D 17:43:56 That's actually a pretty good thought 17:44:05 I don't know what it means 17:44:13 ^style 17:44:13 Available: agora alice c64 ct darwin discworld europarl ff7 fisher ic irc jargon lovecraft nethack pa speeches ss wp youtube* 17:44:19 ah 17:44:25 fizzie, make a style twitter? 17:44:26 then 17:44:32 See http://twitter.com/fungot for the first tweet; that was just a half-manual (automatic babble-generation and automatic posting, but nothing scheduled, just a fire-once thing with a fixed model) run. 17:44:33 fizzie: you must be stupid if there were 130 people on the news. if yall want to give 4000 to each chinese citizen to pay off it's debt's)its only gonna get worse and worse each week. 17:44:35 then use that to generate the new ones 17:44:35 It's invoking Muphry's, at least 17:44:43 AnMaster: I have a twitter style, it's just not in the bot yet. 17:44:48 fizzie, ah 17:44:56 AnMaster: I don't have very much data for it yet. 17:45:08 fizzie, I see 17:45:42 sqlite> select count(*) from tweets; 17:45:42 11590 17:45:49 fizzie: Does the "about nethack" show the style it came from or is that actually part of what it said 17:46:00 Deewiant: It shows the style, in this case. 17:46:59 -!- kar8nga has joined. 17:47:12 fizzie, why a sql db for it? 17:48:02 AnMaster: Why not? Everything can interface with sqlite, and I may want to use some of the tweet-related metadata for selecting things at some point. Admittedly currently a flat file would've worked just as well. 17:49:03 For the twitter style I've just told it to every 10 minutes go and fetch the top-10 "trending" topics from the Twitter API, select one randomly, and fetch 64 latest tweets about that topic. 17:49:06 fizzie, yeah, well that is what I thought: "it uses flat files" 17:49:19 also now you forced me to actually define that fingerprint SQLITE 17:49:24 (or SQL I guess) 17:49:43 (maybe, when I have time) 17:49:58 SQLT for SQLite I guess 17:50:10 Deewiant, why T? 17:50:15 shouldn't it be SQLL? 17:50:17 for Lite 17:50:21 Deewiant: SQLT reminded me of XSLT 17:50:30 ouch 17:50:36 AnMaster: Well, SQLite already has SQL in the name so I was thinking SQLiTe 17:50:53 SQLL would fit if it were SQL-Lite 17:51:02 Maybe SQL- ;-P 17:51:02 hm 17:51:09 Deewiant, why not SQLITE? 17:51:26 Depends on what it overlaps with 17:51:31 In the 32-bit range 17:51:42 Deewiant, ffs, 32-bit is a thing of the past ;P 17:51:51 No, it really isn't :-P 17:51:56 16-bit pretty much is 17:52:04 But 32-bit is very much present 17:52:14 Deewiant, 16 bit is not 17:52:18 The twitter style output generates pretty horribly moronic output, but, well, garbage in and so on. 17:52:22 http://pastebin.com/Aj33WwJn 17:52:23 Deewiant, look at lots of embedded microcontrollers 17:52:42 AnMaster: Lots of embedded stuff is actually 32-bit as well 17:53:02 fizzie: can you make it just pull from the twitter feeds of intelligent people? 17:53:06 fizzie, should filter urls from it I think 17:53:10 And I have a feeling that things are generally going in that direction 17:53:13 But maybe I'm wrong 17:53:14 ^style youtube 17:53:14 Selected style: youtube (Some YouTube comments) 17:53:27 Deewiant, well sure 17:53:31 scarf: There are intelligent people there? But sure, theoretically. 17:53:34 Deewiant, but 12 bits or such is still common 17:53:45 fungot: Is there a discussion here? 17:53:46 asiekierka: what about the ' tenor' roles... it could have been a while!! 17:53:47 Mayhap 17:53:56 Deewiant, iirc PIC12F had... hm I don't remember address and data bus sizes 17:54:05 Lots of DSP stuff is (or at least has been) 24 bits; that's a nice intermediate size. 17:54:06 (the comments were sourced from the top 50 or so videos of 11th May, 2009) 17:54:13 (492kb of data) 17:54:19 (all processed to be content-only) 17:54:21 -!- asiekierka has changed nick to asie[afk]. 17:55:39 ugh, the top videos are bound to have stupid comments 17:55:45 Using real twitter data has the "problem" that it will include lots of @names in it, and those mentioned people might get a bit confused. 17:56:02 Since (as far as I know) they see it when people put their @name in there. 17:56:16 fizzie, filter @names and http:// then? 17:56:17 Confusion is fun! 17:56:32 Yes, I'm not yet sure if it's a problem. 17:56:57 Twitter people might count the end product spam, anyway. 17:57:40 fizzie, well, filtering it doesn't sound too bad 17:58:00 hi fizzie 17:58:12 i want to add new youtube comments to fungot 17:58:13 asie[afk]: nobody was in middle to the bloke the plane ( alpha-floor protection etc) and loads more cabin crew. 17:58:17 the goal is 5MB 17:59:19 I'd really suggest some HTML scraping as opposed to manual collecting, but whatever floats your e-boat, I guess. 17:59:58 AnMaster: But then it doesn't look authentic twittery if it's not full of tinyurl links and @pings and #tags. (Though I guess there's no need to filter #tags; that's just another way people might end up actually seeing those tweets and being confused by them.) 18:00:20 wth is going on 18:00:34 * AnMaster prods disk, htop and sync 18:00:54 basically lots of disk io (seek noise), sync just hangs. Everything else is fine 18:01:03 htop shows no candidate for this 18:01:09 hrrm it stopped 18:01:25 aaaie 18:01:31 [887761.704069] INFO: task sync:24027 blocked for more than 120 seconds. 18:01:31 [887761.704075] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. 18:01:34 and lots more 18:01:56 okay going offline for emergency fsck from livecd now 18:04:03 -!- scarf has quit (Remote host closed the connection). 18:04:53 -!- augur has joined. 18:05:20 -!- AnMaster has quit (Read error: Operation timed out). 18:09:19 http://catseye.tc/lab/Befunge-111-Specification-DRAFT.txt 18:09:30 That's the first 1/3 or so of it, mostly definitions. 18:09:48 Defining what it means for an IP to advance is going to be a pain. 18:12:51 -!- anmaster_l has joined. 18:13:03 okay it looks like one partition was damaged 18:13:06 /tmp 18:13:10 all others are fine 18:13:24 I guess it is lucky considering... 18:13:32 where did scarf go? 18:13:34 :/ 18:13:48 * scarf has quit (Remote host closed the connection) -- your guess is as good as ours, I guess. 18:14:06 ah 18:14:12 -!- kar8nga has quit (Remote host closed the connection). 18:14:32 actually that is just the ext* file systems checked so far 18:15:26 -!- oerjan has joined. 18:15:48 oh come on 18:16:02 "Every integer in the range of -2,147,483,648 to 2,147,483,647 inclusive must be precisely and reliably representable by a intval." 18:16:12 So it's OK for other integers to be represented imprecisely and unreliably? 18:16:25 lament, where is that from? 18:16:55 anmaster_l: Oh, right, you missed: 18:16:57 http://catseye.tc/lab/Befunge-111-Specification-DRAFT.txt 18:16:57 That's the first 1/3 or so of it, mostly definitions. 18:16:57 Defining what it means for an IP to advance is going to be a pain. 18:17:03 ah 18:17:27 will check that once desktop is back up 18:18:07 lament: Yes. That's what people mean when they say "32-bit Befunge"... do you have a problem with that? 18:22:37 -!- benuphoenix has joined. 18:23:05 Hi 18:23:10 I'm about to leave now, so bye 18:23:35 cpressey, are you saying OOM should result in exiting? 18:23:41 this breaks { behaviour 18:23:48 which is to reflect if allocation fails 18:23:50 hm 18:23:58 this doesn't matter for actual programs 18:24:22 but it does cause some headache if you are to implement both 98 and 111 18:24:27 anmaster_l: In general, yes, but I haven't defined { yet. 18:24:29 (as a command line flag or such) 18:24:30 -!- benuphoenix has left (?). 18:24:49 cpressey, does it have to terminate nicely? 18:25:06 cpressey, or is ending with a huge backtrace okay? 18:25:18 anmaster_l: "Implementing both 98 and 111" is a not a design consideration 18:25:27 anmaster_l: "nicely" is not defined 18:25:48 cpressey, you know what I mean. Is it allowed to crap all over the place basically in case of OOM 18:26:07 anmaster_l: It doesn't disallow it. 18:26:15 hm okay 18:26:38 "You know what I mean" is what got us into this mess. If you want specific, I'm going to be specific. 18:27:00 If you don't want specific, -98 is fine 18:27:39 cpressey, it would need to be specific in the spec yes 18:27:48 but I don't think IRC is the spec 18:28:14 No, but questions about the spec can't be answered unless they're specific, even if those questions are asked on IRC 18:28:29 cpressey, I'm typing this on an uncomfortable keyboard 18:28:35 you have to allow for that 18:29:22 cpressey, cells yeild 32 by default? 18:29:36 cpressey, how does that interact with popping zero on empty stack? 18:29:46 or is cell just funge-space here? 18:30:05 anmaster_l: Stacks are not defined in terms of cells, they are defined in terms of intvals. 18:30:36 cpressey, so they can't contain opaque objects 18:30:37 ? 18:30:40 Sorry, s/intvals/objects/. 18:30:42 ah 18:30:53 And yes, cells are effectively only in the playfield 18:31:32 fun, I hope no one gets confused reading cfunge source then! (typedef funge_cell is used stack too) 18:32:43 Well, elements on the stack aren't mutable, so there doesn't seem to be any reason to define them the same as cells. 18:32:56 cpressey, what exactly is ASCII? 18:33:04 shouldn't you refer to the relevant spec for it? ;P 18:33:23 cpressey, how are they not? 18:33:30 -!- augur has quit (Ping timeout: 248 seconds). 18:33:33 cpressey, there is that FRTH fingerprint which does rot and such 18:33:47 rot can be defined in terms of pushes and pops 18:34:00 (http://www.rcfunge98.com/rcsfingers.html#FRTH btw) 18:34:09 cpressey, what about IIPC? 18:34:25 hm it isn't change in place either I guess 18:35:12 -!- kar8nga has joined. 18:37:34 -!- cpressey has changed nick to cpressey[lunch]. 18:38:08 -!- augur has joined. 18:41:21 cpressey[lunch], okay that doesn't work 18:41:27 it doesn't allow opaque values on the stack 18:41:50 the whole point of it is intermixing opaque and normal values 18:41:56 as parameters to some fingerprints 18:48:39 -!- alise has joined. 18:51:23 http://www.delsquacho.com/articles/ten-youtube-translations.php - This made me smile. 18:51:56 I am in fact still alive. 18:52:04 Now I need to find somewhere to put my computer... 18:52:04 Nana 18:52:06 Nana 18:52:06 Nana 18:52:07 Nana 18:53:06 cpressey[lunch] is making a new befunge standard himself? 18:53:07 Top 1 use for a Neural Network: Deciphering YouTube comments 18:53:12 -!- oerjan has quit (Quit: Later). 18:53:37 Befunge-111 18:53:41 which is obviously Befunge 2011 18:53:45 WE HAVE 2010 NOW 18:53:45 HELLO 18:53:55 fuck 2010 18:53:58 2010 doesn't exist 18:54:07 OR 18:54:10 maybe he just meant 18:54:11 Befunge-7 18:55:01 `ls 18:55:03 bin \ cube2.base64 \ cube2.jpg \ hello.txt \ help.txt \ huh \ netcat-0.7.1 \ netcat-0.7.1.tar.gz \ paste \ poetry.txt \ quotes \ share \ test.sh \ tmpdir.32722 \ wunderbar_emporium \ wunderbar_emporium-3.tgz \ wunderbar_emporium-3.tgz.1 18:55:31 alise: Well, you know the saying, never send a boy to do a man's job. 18:55:31 `ls 18:55:34 bin \ cube2.base64 \ cube2.jpg \ hack_gregor \ hello.txt \ help.txt \ huh \ netcat-0.7.1 \ netcat-0.7.1.tar.gz \ paste \ poetry.txt \ quotes \ share \ test.sh \ tmpdir.351 \ wunderbar_emporium \ wunderbar_emporium-3.tgz \ wunderbar_emporium-3.tgz.1 18:55:35 asie[afk] is still just as annoying. 18:58:14 it doesn't allow opaque values on the stack <-- please refer to why and how to fix it 18:58:46 cpressey[lunch]: So you usurped Befunge-10x? 18:58:53 Thank god. It was awful :P 18:59:09 -!- cpressey[lunch] has changed nick to cpressey. 18:59:30 alise: It? Does a Befunge-10x exist? 18:59:56 Um, that thing anmaster_l was working on with fingerprints being URIs. 19:00:06 I say thing; I mean abomination. >_> 19:00:15 Oh, I thought that was 109 19:00:22 Yeah, but then he failed to get it done in 2009 19:00:25 I should make Befunge-911 19:00:29 I think it was 108 before that 19:03:36 -!- dev_squid has quit (Ping timeout: 258 seconds). 19:04:42 -!- dev_squid has joined. 19:04:59 -!- asie[afk] has quit (Ping timeout: 265 seconds). 19:05:18 Welp, no place to put the computer. 19:05:57 09:29:29 * cpressey remembers why he walked away from Befunge the first time 19:06:00 Ohh, ice burn. 19:12:17 I'm working on a "Notes" document to accompany the spec and contain all the non-normative commentary... hopefully it'll help make things clearer. 19:14:54 alise: So, new place, eh? 19:15:18 Well, not permanent. Only for, well, this night, pretty much. Sigh. 19:19:26 cpressey: 19:19:30 "In Befunge-111, any stack can only contain one kind of object." 19:19:34 cpressey: Allow objects on the stack. 19:19:41 that is the problematic phrase 19:19:42 i.e. objects and intvals 19:19:45 It will be fun and hilarious 19:19:51 oh lol 19:19:55 i fidn' teven see this convo 19:19:59 *didn't even 19:20:30 i would really like my computer :| 19:23:15 hm? 19:23:57 anmaster_l: That kind of object is "object", which is either an intval or an opaque. I realize this wording is confusing. I'll fix it. 19:24:22 cpressey, right 19:24:39 cpressey, it sounds like it is one kind of object per stack 19:24:43 (and that is surely wrong) 19:24:50 _object_ is horrible word to have a definition of 19:25:04 cpressey, what about value? 19:25:24 Yeah, value is OK. Don't ask me to define it though. 19:25:42 That's the sort of thing that makes philosophy careers. 19:26:11 cpressey, or entenity (sp? argh) 19:26:21 "object: region of data storage in the execution environment, the contents of which can represent values" (C99 is a bit pragmatic) 19:26:55 cpressey, actually, value would be confusing 19:27:06 object or entenity (again: spelling?) 19:27:09 are better 19:27:17 entity 19:27:22 Eternity. 19:27:23 alise, thanks 19:27:23 "element"? 19:27:30 alise: So, you're at a hotel or something and will be at place later. "Fun". 19:27:49 Entity: (forall x. x is an entity) & ~(exists x. ~(x is an entity)) 19:27:53 cpressey, an element of an array on the stack? 19:27:54 Philosophy is like logic but with more redundancy. 19:27:55 or SETS 19:28:12 "thing" 19:28:13 cpressey, calling it element in general would make that SETS fingerprint confusing perhaps 19:28:15 sets don't exist 19:28:17 cpressey, hehe 19:28:21 alise: Logic is often considered part of philosophy. 19:28:33 By idiots. 19:28:39 MissPiggy, I'm talking about http://www.rcfunge98.com/rcsfingers.html#SETS 19:28:44 philosophy without logic is like sex without marrige 19:29:01 MissPiggy: Less restraining? 19:29:02 :P 19:29:09 (More diseases) 19:29:13 I consider it more a tool needed to do philosophy sanely. 19:29:17 (not that this stops people from doing it insanely) 19:29:53 -!- charlls has joined. 19:30:25 Maybe I'll just define "object stack", "stack stack", and "fingerprint semantic stack" as seperate things instead of trying to generalize (which is what is leading to me needing the word "thing") 19:30:40 Object or stack or fingerprint semantic... 19:30:46 cpressey, aha 19:30:51 cpressey: How about having object/stack/fingerprint semantics "types"? 19:30:59 And then say "A stack of a certain type ... contains elements of that type ..." 19:31:09 Either that, or objects can be stacks and they can be semantics and that is Wrong, or at least requires a lot more thought 19:31:22 So you say a stack of objects, a stack of stacks of a certain type, and a stack of fingerprint semantics. 19:31:39 cpressey, oh fun, lets have a fingerprint that can place stacks as opaque values on your stack 19:31:42 Or the type intval|opaque could have a name besides "object" 19:31:57 like, popping TOSS off, and pushing it as a opaque value on the new TOSS 19:32:04 ;) 19:32:22 alise: I think I like that approach 19:32:35 alise, that might work 19:32:43 anmaster_l: Nothing stopping you, really, since opaque is opaque is opaque 19:33:13 cpressey, true, anyway I come up with semi-opaque lazy lambdas now 19:33:19 that will execute when inspected 19:33:20 by anything 19:33:32 and thus try to present themselves with a reasonable value 19:33:41 cpressey, of course this is extremely feral 19:33:54 also it requires a lot more thought 19:34:11 cpressey: Allow the core operations to be performed on opaque objects, with semantics defined by the opaque object. 19:34:22 if you made all values functions, then this could work transparently 19:34:26 So we can have y push a bunch of lazy values that only evaluate when you use them. 19:34:38 either have values that are just "dumb" functions, returning their own value 19:34:42 or have advanced ones 19:34:48 OR 19:34:51 that could vary depending on what the operation is 19:34:56 Have values that do completely random things wwhen you operate on them 19:34:57 *when 19:35:01 +? Yes, that outputs the stack stack. 19:35:03 alise, and lazy values too of course 19:35:08 anmaster_l: Those can just be done as opaques. 19:35:28 alise, well, there is a bit of confusion about how many elements a lazy value could expand to 19:35:30 and the stack size 19:35:44 (you can get stack size with y remember?) 19:35:50 -!- charlls has quit (Read error: Connection reset by peer). 19:36:16 Have values that do completely random things wwhen you operate on them <-- yes :D 19:36:29 however, I think this is best left out of 111 19:36:40 it needs more thought 19:36:44 Fine, I'll just define my own... Abstract Funge! 19:36:54 N-dimensional? Who says it needs to be in only one kind of space? 19:37:00 Numbers? Why restrict yourself thusly?! 19:37:07 alise, call it beabstract? 19:37:08 It will be a monoidal semiring. 19:38:15 alise, anyway, one of the goals with befunge-111 is that it shouldn't break the majority of previous programs (some depending on corner cases are ok) 19:38:27 and it should clear up confusion 19:38:58 plus move some stuff, like tio= into fingerprints (and keep the existing chars implementation defined) 19:39:02 (for those) 19:39:06 cpressey: Can I make a humble suggestion? (note: it's crazy) 19:39:39 (alise, read logs for the last few weeks or so if you want more details, there was quite a lot of discussion) 19:39:52 Let an IP be in multiple places at once 19:40:00 That is, multiple velocities going different ways 19:40:06 Quantumly! 19:40:09 har 19:40:15 fine for a fingerprint I feel 19:40:15 DO IT 19:40:18 anmaster_l: NO 19:40:25 stop trying to keep funge boring :( 19:40:41 s/boring/practical/ 19:40:42 alise: For orthogonality, all vectors would need to be quantum superpositions of multiple vectors. 19:41:00 And the stack, too. 19:41:12 cpressey, and funge space? 19:41:18 cpressey: Whyever not? :D 19:41:24 No, funge space can be reduced to a single cell. 19:41:34 Ooh. Go in EVERY DIRECTION AT ONCE. 19:41:39 Your IP would /explode/ outwards. 19:41:45 Exploring t'forbidden space. 19:41:47 And what would it do? 19:41:48 Now these wouldn't be separate IPs, oh no. 19:41:53 Go on a jump character? 19:41:56 ALL IPS JUMP 19:42:00 Change direction? 19:42:05 As do of your IPs. 19:42:08 *all of 19:42:14 Separate, yet equal! 19:42:17 White, yet black! 19:42:29 Silly, yet silly! 19:42:30 * alise takes another hit from the bong 19:42:37 Also: ALBATROSS IPs 19:42:53 alise, your ideas are fine for some other be* language 19:42:56 but not befunge 19:43:00 see logs about that 19:43:04 cpressey: Tell him that he is wrong! 19:43:05 DO IT 19:43:11 Too bad the name bequnge is already taken 19:43:21 befuck 19:43:24 alise, cpressey argued we should keep befunge close to the current one 19:43:29 so tough luck 19:43:34 That was before cpressey heard my wonderful idea. 19:43:36 befuckyoubecausequantum 19:43:44 alise, also, he suggested other fungoids could be created 19:43:47 for weird ideas 19:43:47 BeQuantumlyFucked 19:43:49 like those 19:43:51 -!- kar8nga has quit (Remote host closed the connection). 19:44:46 alise: If you interpret the Befunge-111 in multiple languages simultaneously, you will find it contains all of your proposed features, and more. 19:44:49 alise, here is a suggested esolang name. Design the matching esolang: undertrefuck (read as: under-tre-fuck) 19:44:58 *spec 19:44:59 Fucking under trees. 19:45:06 cpressey: :D 19:45:25 BeEfucking 19:45:31 Sexual intercourse with bees. As a language. 19:45:35 alise, or combine underload, trefunge and brainfuck 19:45:52 urefucked? 19:45:59 Unlambda + INTERCAL + Brainfuck + Underload = ?? 19:46:00 Deewiant, heh 19:46:04 Unlambda + INTERCAL + Brainfuck + Underload + Befunge = ?? 19:46:05 I should say 19:46:09 The 5 classics 19:46:10 hm 19:46:30 alise, "a messy bloated tarpit" 19:46:36 that is what you replace ?? with 19:46:36 BerainfunINTERCALoadge 19:46:54 Ber ayen fun interca loadge 19:50:09 Esolang idea: Axiom. 19:50:19 mhm 19:50:35 Example: forall x. x=3 -> outputted(start, x) 19:50:50 I.e., for all values x, x is 3 implies x was outputted at the start of execution. 19:51:25 exists x. x = inputted(start) 19:51:36 I.e., there exists a value x such that x is equal to what was inputted by the user at the start of the program. 19:51:50 exists x. x = inputted(start) & outputted(start+1, x) 19:52:06 I.e., there exists a value x such that x is equal to what was inputted by the user at the start of the program, and that was outputted at the start of the program + 1 event. 19:52:19 (exists x. x = inputted(start+1) & outputted(start, x)) - fails, contradictory 19:52:31 or rather impossible, not contradictory necessarily 19:52:39 it just /happened/ to be the same thing printed as you put in :) 19:56:02 forall n. forall x. outputted(n, x-1) & (x % whatever) = 0 -> outputted(n+1, x) 19:56:07 you get the idea 20:00:25 alise, spec and implement it then 20:01:00 > ; ; ; ; @ 20:01:08 How many ticks before it halts? 20:01:30 cpressey, iirc 98 says space takes no ticks, and nor does ;; does it? 20:01:36 I'm not completely sure 20:02:26 "Like space, this takes zero ticks to execute, so that subroutines, comments, and satellite code can be insulated by surrounding it with ; markers, with no effect on multithreading." 20:02:40 cpressey, so I guess: tick 1: >, tick 2 @ 20:02:44 I would say it executes >, then @, then it's over 20:02:46 Yeah 20:03:03 cpressey, better check with ccbi on this (cfunge doesn't track tick counts) 20:03:31 Deewiant spent quite a lot of time figuring this out 20:04:26 Yeah, just run with ccbi's debugger ;-P 20:04:28 cpressey: space taking zero ticks sucks by the way 20:04:30 imo. 20:04:32 It's the spec 2.0! 20:04:38 This is ugly. I'm going to have to define a single ; in a path as a special case. 20:04:44 Why 20:04:46 cpressey, how is that? 20:04:48 or, well, I hate sgml spaces more 20:04:49 There is never only a single ; in a path 20:04:49 cpressey, it wraps around 20:04:51 alise: Well, we want wrapping to complete in finite time 20:05:03 cpressey: Not SGML spaces + A run of spaces takes 0 ticks. But please no SGML spaces. 20:05:15 Deewiant: for my defn of 'path' right now there can be. this might chaneg 20:05:25 cpressey, I think SGML spaces should be kept now 20:05:27 they are useful 20:05:31 nooooooooOOOOOO 20:05:33 some programs I wrote made use of them 20:05:36 Fuck "useful" 20:05:42 "useful" has no meaning here 20:05:45 for things crossing each other 20:05:57 cpressey: Your definition is poor ;-P 20:06:00 cpressey, like two strings intersecting, one vertical one horizontal 20:06:10 Deewiant: which is why it might change :) 20:06:11 Deewiant: You just don't want to change Mycology :) 20:06:20 I want to make one of those markov bots 20:06:30 cpressey, it will change due to wraparound 20:06:38 alise: This wouldn't change anything since it sounds to me that the semantics are the same 20:06:42 well I just want to put text file in and get a bot out.. 20:06:50 Deewiant: I just meant in general :P 20:07:22 My definition right now is only the "ray" extending outward. It needs to be the "line". Then maybe behaviour w.r.t semicolons will be easier to defnie 20:07:33 Or not 20:07:34 alise: Well of course not ;-) 20:07:48 cpressey, look, it makes perfect sense if you considers wraparound 20:08:05 cpressey, the IP will always wrap, sooner or later 20:08:18 cpressey: It /is/ a ray, it just crosses over itself ;-P 20:08:25 anmaster_l: I know it makes sense. The problem is that it needs to be worded in the form of an unambiguous definition. 20:08:27 cpressey, you could define a "wrapping ray" 20:08:36 cpressey, and then use that in there 20:08:44 If you have multiple velocities 20:08:47 if you need to keep ray and wrapping ray separate 20:08:49 The ray can actually CROSS OVER ITSELF 20:08:50 <3 20:09:00 Two sub-IPs collide and form one IP 20:09:03 With the average velocity of both 20:09:10 This is brilliant, do not deny it 20:09:15 why did this make me think of ghostbusters... 20:09:28 Don't cross the IPs! 20:09:33 oh right 20:09:37 ..., Ray! 20:10:22 cpressey, so suggestion: non-wrapping ray can sometimes be useful (some fingerprints that write a 0"gnirts" into funge space, with a given delta for example) 20:10:34 cpressey, so just define wrapping and non-wrapping rays 20:10:39 Or I'll just describe this procedurally 20:10:57 cpressey, defined wrapping yet btw? 20:11:38 with that, a wrapping ray would be trivial 20:11:50 so then defer defining ; until you defined wrapping 20:13:08 cpressey: A suggestion: Wrapping occurs when you hit an untraversed cell: all the cells specified that aren't just spaces around like befunge-98 wrapping rule at the start are traversed, anything p'd is traversed, 20:13:13 anything leading to a traversed cell is traversed, 20:13:24 and everything any IP has ever landed upon is traversed 20:13:40 alise, that doesn't allow for bounds to shrink 20:13:40 "Leading" meaning "under the current velocity" 20:13:49 anmaster_l: Yes it does, it's just an optimisation 20:13:52 which is important wrt p with space 20:13:57 Since runs of spaces take 0 time, 20:14:00 alise, it is a correctness issue for y 20:14:01 Just set them to spaces 20:14:07 anmaster_l: So fix y 20:14:13 alise, fix it how? 20:14:32 Make it not cause an incorrectness issue 20:14:56 alise, well since it *pushes bounds* on stack I don't see how you mean it can not depend on that 20:15:43 Define it to be the maximum bounds ever 20:15:55 What breaks y here? 20:15:56 alise, there are good reasons not to 20:15:57 i.e. the size of the region of traversed cells at its maximum at any point in the past or present 20:16:08 Deewiant: Nothing 20:16:11 Since bounds never shrink in my system 20:16:12 So, yeah 20:16:13 alise, and a lot of effort went into making sure it shrunk to be current minimum bounds 20:16:18 ... 20:16:31 Any such shrinkage is just an optimisation 20:16:35 So don't expose that optimisation to y, duh 20:16:45 alise, no it isn't. it is a correctness issue according to mycology 20:16:49 and I agree 20:16:51 In Befunge-98 20:16:57 We're specifying a new language here, hellooooooooo 20:17:08 alise, it is a revision of it. 20:17:16 Where is the non-shrinkage happening 20:17:20 also it is nicer to have bounds be the minimum bounding box at any time 20:17:34 Deewiant, read what he suggested above 20:17:34 You just said "wrapping occurs at point x" 20:17:39 I did 20:17:49 Let me specify it more precisely. 20:17:57 well I guess you could have two sets of bounds 20:18:08 alise: Much as I want to, I don't think too much can be made backwards-incompatible. 20:18:21 This wouldn't be incompatible at all apart from some minor detail of y :-) 20:18:37 (speaking in general, not sure what the current discussion centers around) 20:18:38 It would still not be incompatible IMO 20:18:39 cpressey, yep, a backwards incompat one can be made as a different language, or as a feral fingerprint 20:18:52 (depending on the nature of the backwards incompat) 20:18:53 You just defined the semantics of wrapping 20:18:59 Which is invisible to everything 20:19:06 What cells are "traversed" matters not since they're spaces 20:19:13 Deewiant, true. y bounds might be separate 20:19:29 An impl is allowed to allocate 4G*4G and traverse every single space if it wants to 20:19:32 The semantics are the same 20:19:42 yes 20:19:50 Whenever the IP would advance to an /untraversed/ cell, it instead {wrapping stuff goes here}. An untraversed cell is a cell that is not traversed. A traversed cell is a cell that satisfies one or more of the following properties: * It was in the original program source and (insert stuff here to handle extraneous spaces, using Befunge-98 rules). * It has been advanced to by an IP at some point in the program without wrapping occur 20:19:50 OR 20:19:57 Deewiant, how much is 4G*4G btw? 20:20:14 * If the IP continued on its current velocity, it would eventually reach a traversed cell without wrapping. 20:20:17 The end. 20:20:29 anmaster_l: 17-19 exabytes or so? 20:20:35 ah 20:20:45 Or "square gigabytes" if you prefer :-P 20:20:46 cpressey: ^ 20:20:55 alise, you forgot about one thing 20:20:56 I think this definition is general enough to withstand all the ferality from any fingerprint you wish. 20:21:03 alise, writing a value to said cell 20:21:12 anmaster_l: "It has been modified over the course of the program" 20:21:18 alise: Currently, 'p'ing spaces into untraversed locations doesn't change wrapping... I'm not sure if your defn does or not. It might not, but it's not obvious to me yet. 20:21:24 alise, you missed out on that 20:21:28 alise, your message was cut off 20:21:29 ... 20:21:30 anmaster_l: k 20:21:40 "* It has been advanced to by an IP at some point in the program without wrapping occur" 20:21:40 cpressey: If you p something really far away, then set off on a course towards it, you won't wrap until you hit it. 20:21:43 alise, ^ 20:21:48 alise, it ended there 20:21:50 occuring. * It has been modified over the course of the program. 20:21:54 And then the OR, and the line after. 20:22:03 alise, fix your client btw :P 20:22:33 I'm using webchat.freenode.net in IE on someone else's machine because there's nowhere to put my iMac because I'm at somebody else's house because of reasons out of my control. 20:22:37 So shut up. 20:22:44 mhm 20:22:48 Erm, since Funge-98 programs can't rely on more than 4G*4G playfield, and still only have (effectively) a single stack, does this mean Befunge-98 is not TC? 20:22:59 Eh? 20:23:11 cpressey, befunge-98 allows larger ones 20:23:13 Stack stack, dude 20:23:20 and stack-stack yes 20:23:21 anmaster_l: Allows, but does not guarantee. 20:23:22 Deewiant, err no 20:23:31 Deewiant, y can query size for each stack on stack stack 20:23:40 Deewiant: stack stack = single stack with markers, I think. 20:23:55 (Didn't we have this conversation?) 20:23:57 cpressey: You can make a tape out of the stack stack using the stack stack ops. 20:24:03 cpressey, that is an implementation detail 20:24:10 at least I have not implemented it like that 20:24:10 fizzie: That would save it. 20:24:14 anmaster_l: But it isn't specced that it has to be a result that meaningfully fits in a cell :-P 20:24:23 Deewiant, eh? 20:24:29 cpressey: I don't think my definition of traversable has any flaws. 20:24:41 It's basically just a refinement and formalisation of the Befunge-98 wrapping rules. 20:24:41 anmaster_l: E.g. CCBI will happily push INT_MIN if you push 2 gigacells 20:24:44 Deewiant, 0y not fit on stack? 20:24:53 Push INT_MIN for the size, I mean 20:24:56 (In the 98 spec they're basically "It wraps like regular 2d space except not like that if you're in other dimensions. Happy/") 20:24:58 *Happy? 20:26:06 I think alise's suggestion might work. Of course y would need separate (always minimal) bounds 20:26:21 cpressey: C doesn't guarantee infinite memory either, does that mean it's not TC? 20:26:29 (except for ATHR, but that is feral so it is okay for it to say that bounds updates might take a while to propagate) 20:26:44 Deewiant: I don't consider C to be TC, no. 20:26:49 Deewiant, iirc that has been discussed here 20:26:57 cpressey: What /do/ you consider TC? :-) 20:27:24 cpressey, iirc C is TC with file io 20:27:24 Oh, you may also want to add: 20:27:28 Deewiant: Only languages that have infinite storage, yet have been implemented on finite computers. 20:27:40 Deewiant: It's more like "does it provide an operation that could always access more memory *if* that memory was available"? Addressing memory with fixed-size pointers doesn't count. (but car and cdr do.) 20:27:47 that a cell is also traversable if a fingerprint deems it to be so 20:27:55 (but feral fingerprints override the spec anyway, so possibly redundant?) 20:27:58 cpressey, befunge-98 is TC then. bignum is allowed I argue 20:28:08 anmaster_l: Only if you use dud values for bits 20:28:11 WHich is breaking the spec 20:28:12 *Which 20:28:20 alise, it doesn't forbid it either 20:28:29 You need to push the number of bits in a cell 20:28:29 alise, I mean -1 for number of bytes per cell 20:28:33 You don't, you push -1 20:28:36 You violate the spec 20:28:36 Q.E.D. 20:28:42 alise, yes, but the spec doesn't forbid that either 20:28:56 C doesn't merely *not guarantee* infinite memory, it requires finite memory. 20:29:04 pikhq, indeed 20:29:09 It can be arbitrarily large, but most have a bound. 20:29:14 Erm. Must. 20:30:27 anmaster_l: You have to push the bit width 20:30:28 You do not 20:30:30 That is violating the spec 20:30:35 Simple as 20:30:43 alise, no 20:30:48 So if I define a language with two instructions, and the meanings of both instructions are implementation-defined, then that language is TC, because it is allowed for an implementation to treat the instructions as encoding a UTM. 20:31:01 cpressey: I see. By that definition, whether Funge-98 is TC depends on what part of the spec you read ;-) 20:31:06 alise, please read the spec 20:31:18 alise, "1 cell containing the number of bytes per cell (global env)." 20:31:20 not bits 20:31:25 Same thing 20:31:29 A bignum does not have -1 bytes per cell 20:31:31 alise, anyway, one could define bytes differently 20:31:35 No, you can't 20:31:43 Not even cpressey would consider that reasonable 20:31:48 alise, I define my bytes to be -(one bignum) 20:31:58 Just admit you're violating the spec 20:32:11 alise, it's a corner case 20:32:23 cpressey: Oh, please step in and resolve this ridiculousness. 20:32:25 I agree on that 20:32:32 pikhq: I think we did come to the conclusion that C's file IO parts are vaguely enough defined that you can still have a conforming C implementation which has an infinite tape affixed to a file (so that you move around the tape by writing special operations into the file), and thusly make it TC, but you might not want to count that. 20:32:46 I can't even believe anmaster_l is defending "I have -1 bytes per cell because I say the size of a byte is minus the size of one bignum." 20:33:10 alise, that was tongue in cheek -_- 20:33:17 alise, whooosh 20:33:29 All discussion about Befunge is tongue-in-cheek 20:33:40 But you were being just as ridiculous about refusing to admit you violate the spec before 20:33:56 And, also, it wasn't funny insofar as it was the obvious thing to say, were your intention to make the most boring non-excuse there is. 20:33:58 alise: Yes; personally I'd argue based on the incredible vagueness of "typically 4, could also be 2, 8, really really large, infinity, etc." (I mean, "etc."?), but that's not *so* convincing either. 20:34:07 alise, I don't think I violate the spec. But yes 0 might be better than -1 20:34:28 fizzie: Yes, but aside from file IO, C is required to be an FSM. 20:34:32 I'm just going to defer the only person who has any actual idea about the spec. 20:34:38 :) 20:34:47 *defer to 20:34:50 alise, "aka cell size. Typically 4, could also be 2, 8, really really large, infinity, etc. " <-- yes I represent infinity as -1 here 20:34:52 http://pastie.org/852357 20:34:52 cpressey: Pushing -1 for the bytes-per-cell value in y is verboten unless you actually have -1 bytes per cell. Yes? And a bignum does not take up -1 bytes per cell. 20:35:27 alise: The spec says: "2. 1 cell containing the number of bytes per cell (global env). aka cell size. Typically 4, could also be 2, 8, really really large, infinity, etc." 20:35:33 WITHOUT SAYING HOW TO REPRESENT INFINITY 20:35:38 Well, yes. 20:35:42 But -1 isn't infinity, it's -1. 20:35:47 That's pretty obvious. 20:36:02 (So "infinity" is just bunk there.) 20:36:06 anmaster_l: Do you happen to know Erlang's actual bignum format, by the way? I only know how GMP does it, and that particular library has a (surprisingly small) MAX_BIGNUM. 20:36:16 anmaster_l: You should push a function that, when accessed, gives the largest number thus far used by the program + 1 20:36:19 Well, if I'm a Befunge program, with no knowledge of what could be interpreting me. 20:36:21 GMP has MAX_BIGNUM? 20:36:23 Wowzers. 20:36:25 And I run y. 20:36:30 And I look at the second cell. 20:36:35 And I see "-1" 20:36:43 What am I supposed to think? 20:36:49 fizzie, no idea actually 20:36:49 alise: Yes; on a 32-bit system, the MAX_BIGNUM value itself takes 8 gigabytes of storage, though. It's a bit large, but definitely not infinite. 20:36:57 "If I push values to the stack, I'll use less memory!" 20:36:58 Deewiant, nice idea 20:37:08 "Then The User will love me more!" 20:37:22 alise: :-D 20:38:06 On a 64-bit system, the GMP MAX_BIGNUM actually takes only 16 gigabytes of storage, which is not so huge (if you compare to the addressable space); they use a signed 32-bit value as the counter of (in this case 64-bit) "limbs" of data bits. 20:38:18 Ah 20:38:24 I would use a pointer to the last one 20:38:34 After all, if you can't address the last bignum you can't access it 20:38:35 So it's foolproof 20:38:57 alise, what says it must be in one sequence= 20:39:00 s/=/?/ 20:39:12 couldn't it be allocated in large chunks 20:39:19 What? 20:39:25 Hmm. Signed 32-bit value for a length? 20:39:37 That's retarded. Just use size_t. 20:39:43 alise, if you are near filling the address space, getting area after the end of the number might be hard 20:39:44 pikhq: The sign bit holds the sign of the actual value. 20:39:56 fizzie, ssize_t then? 20:39:58 fizzie: x_x 20:39:59 cpressey: Just a nit: I don't like "at the edge of the world", it sounds like there's an actual edge on which you're standing, at the other side is the world and the other side nothing, but you've defined it as including that "nothing" as well 20:40:05 anmaster_l: not after 20:40:06 fizzie: That's... Silly. 20:40:07 you point to the last one 20:40:18 pikhq: And they argue that 32 bits is "large enough" and saves four bytes of space from each GMP integer. Hey, I didn't make it. 20:40:26 Deewiant: would "over the edge" be better? 20:40:26 Deewiant: Which is why cpressey should use traversable cells >:( 20:40:37 TRAVERSAAAAAAAAAAABLLLLLLLLLLLLLLLlle 20:40:50 cpressey: I'd prefer that, yes; in my brain the "edge" is the edgemost non-marker cell 20:40:54 fizzie: 4 bytes... Per *number*. 20:41:14 What was that about "premature optimisation"? 20:41:28 Deewiant: But the procedure itself appears... uncontroversial? 20:41:39 cpressey, you forgot to reflect the backtrack of the IP I think? 20:41:48 cpressey, so now it points in the wrong direction doesn't it 20:41:57 Right 20:41:59 maybe I misread 20:42:04 it's somewhat confusing that 20:42:36 anmaster_l: Nothing changes the delta, in this definition 20:42:41 cpressey, ah 20:42:42 IMO, GMP on a 64-bit system should be theoretically capable of handling a 2^64 byte number. 20:42:56 Erm. 2^64-1 byte. 20:43:09 Just that the backtrack's path is defined by the reflection of the delta 20:43:41 Also right. 20:43:46 pikhq: No overhead? 20:43:47 In that case, I think it's correct. 20:43:51 fizzie, all I can find is http://www.erlang.org/doc/efficiency_guide/advanced.html 20:43:59 fizzie, which includes the size of a fixnum in words 20:44:11 but bignum seems unlimited according to that 20:44:15 pikhq: I could buy some sort of "compatibility with the 32-bit GMP values" implementation, but they change the actual limb size from 32 to 64 bits... 20:44:21 cpressey: >_> ... ... TRAVERSED CELLS 20:44:22 I'm not about to dig through beam's sources 20:44:36 alise: I'm not seeing how they add anything, yet. 20:44:44 cpressey: Is the IP the position? If not, I might say "IP's position" in at least a few places there 20:44:49 cpressey: Well, they are, I think, more precise. 20:44:57 alise, how so? 20:44:58 So fingerprints can do more Funky Stuff without breaking it 20:45:11 anmaster_l: Yes, well, "It is implementation-dependent how much memory the Erlang data types and other items consume"; you could argue that the Erlang-language is capable of having "real" bignums therefore. 20:45:19 alise, remember cpressey decided to not define unefunge/trefunge in 111 any more 20:45:25 Well, for one thing 20:45:28 Consider 20:45:28 On the other hand, certainly GMP's user-visible API doesn't restrict the value sizes, it's just their implementation of it. 20:45:31 x 20:45:32 20:45:34 y 20:45:36 erm 20:45:37 x 20:45:38 20:45:38 Why no unefunge/trefunge? :-/ 20:45:40 y 20:45:48 The spaces between x and y are traversable 20:45:55 Because they hit either x or y (when going diagonally) 20:45:56 alise, no one said they aren't? 20:45:57 eventually 20:45:59 But x, downwards, isn't 20:46:03 (Unefunge/Trefunge-111 can be derived from Befunge-111 later) 20:46:10 Because it does not lead to any traversable cell without wrapping 20:46:10 etc 20:46:12 So it's more precise 20:46:16 Deewiant: IP is position, yes. 20:46:20 internal bounds aren't an integer coordinate 20:46:21 alise, also they might not. Consider the delta from the space in the middle 20:46:26 so it never hits x or y 20:46:30 alise, that can happen 20:46:33 anmaster_l: That's why traversability is defined based on the velocity 20:46:36 Read the damn definition 20:46:54 cpressey, actually, what if there are no cells we can hit 20:46:55 Deewiant: I'm using "EC" for "Execution Context" for "Collection of IP, delta, stack, etc" instead of overloading "IP" to mean all that 20:47:04 cpressey, like, some other thread overwrote all with spaces 20:47:07 err 20:47:08 some other IP 20:47:39 cpressey: Works for me, although I'd probably prefer IP for the backwards-compatibility (even though -93 used PC, IIRC...) 20:47:45 cpressey, or kp was used to overwrite both k and p and anything else in the same "ray" 20:47:48 anmaster_l: Then advancing never terminates 20:47:56 cpressey, I guess that is okay 20:48:06 Deewiant: I'll mention the change PC -> IP -> EC in the notes. 20:48:42 anmaster_l: It's not great, but it's tolerable 20:48:57 cpressey, btw, I consider IP something that has a position, a delta, a string-mode-flag, a stack-stack plus possibly a few other things 20:49:04 what do you consider an IP nowdays then 20:49:16 What he said: the position 20:49:27 ah 20:49:35 It's an "instruction pointer", after all; it sort-of makes sense to be just the position. 20:49:50 That's arguable either way 20:50:17 Traditionally an instruction pointer always behaves the same way and thus only "needs" to be the position 20:50:39 Whereas in Funge, much of what you do involves modifying the way the instruction pointer behaves 20:51:20 cpressey, what happens to an ec with delta 0? 20:51:31 Deewiant: Yes, well... on the other hand, even "traditionally" there's the stack which is very much not part of the intstruction pointer; there's some other sort of "context" that groups the IP position and the stack. 20:51:41 anmaster_l: Again, advancing doesn't terminate. 20:51:49 Deewiant, shouldn't it just do nothing 20:51:53 and simply rest on it 20:52:04 fizzie: Sure, there's other stuff, but the stack there isn't so associated with the IP 20:52:06 oh wait, it should execute the instruction on the current spot 20:52:10 but if that is space then what 20:52:11 cpressey, ^ 20:52:15 Um, delta 0 will execute the instruction at the IP over and over and over 20:52:31 cpressey, what if that instruction is a space though 20:52:32 Deewiant: Right, it's associated with the context, which is what should correspond to the 98 "IP" anyway. :p 20:52:34 fizzie: It isn't in Funge either, but things like the delta are. 20:52:41 cpressey, and what about a j? :D 20:52:59 anmaster_l: If it's a space advancing doesn't terminate. 20:53:04 anmaster_l: You should be able to figure it out from the spec so far 20:53:13 Not j, the other stuff 20:53:17 cpressey, well okay 20:53:26 oh needed to ctrl-refresh it 20:53:28 strange 20:53:41 Deewiant: I guess you could argue for some sort of intermediate thing where IP is the (position, velocity) pair, and the rest are EC. If you wanted to, for some inexplicable reason. 20:54:03 fizzie: I'd argue that the string mode is also part of the IP. 20:54:05 On that note, is there a good term for a (position, velocity) pair? 20:54:11 cpressey: Ray 20:54:24 Deewiant: Hm, ok. 20:54:30 Sort of 20:54:36 fizzie: And possibly I can argue enough things that it'll just be a matter of convenience to group the rest into the IP as well ;-) 20:54:44 cpressey: Call it a particle, that would be silly-funny. 20:54:45 cpressey: Agent 20:54:51 An agent is somewhere, and moves places. 20:54:58 "A ray is part of a line which is finite in one direction, but infinite in the other. It can be defined by two points, the initial point, A, and one other, B. The ray is all the points in the line segment between A and B together with all points, C, on the line through A and B such that the points appear on the line in the order A, B, C." 20:55:02 It's directed-acting to modify some state based on some other state. 20:55:03 -- Wikipedia 20:55:04 Thus, an agent. 20:55:20 We define it with A and B-A but that's equivalent. 20:55:46 A (classical) particle has position and velocity too, though. And then you can easily make the position a probability density function and so on in the quantum extensions. :p 20:55:47 cpressey: Also: TRAVERSABILITY NOW :| 20:55:52 (I am being a bit unserious.) 20:55:57 alise: What's the point? 20:56:00 Agent particle 20:56:09 Deewiant: More formal, more precise, easier to implement 20:56:16 More precise how? 20:56:19 How is it... yeah 20:56:26 x 20:56:27 20:56:28 y 20:56:42 the bounds here aren't rectangular 20:56:47 only the cell between x and y is traversable 20:57:01 Deewiant: For a typical sort of ray, though, ((0, 0), (1, 1)) and ((0, 0), (2, 2)) would be the same ray; but no-one would claim those to be equivalent for a particle. 20:57:05 alise: How is this "more precise" 20:57:18 Because it is, so there 20:57:27 You really have to define what you mean by "precise" :-P 20:57:39 I think it's probably equivalent, but it adds the burden of distinguishing some cells from others 20:57:50 Aw dang; I waited ~three hours for fungot's Twitter-poster to actually say anything, and then it bailed out due to a typo. 20:57:50 fizzie: o jeh, o naw, o naw, o naw, o naw. morfoatari, was charged with manslaughter. 20:58:08 ^style 20:58:08 Available: agora alice c64 ct darwin discworld europarl ff7 fisher ic irc jargon lovecraft nethack pa speeches ss wp youtube* 20:58:16 ... 20:58:57 These are the beginnings of a new language. 20:59:08 Morfoatari means "was charged with manslaughter". 20:59:18 cpressey, an IP may also contain IP specific data. 20:59:24 err 20:59:26 fail 20:59:31 fingerprint specific data 20:59:32 I meant 20:59:41 I postulate that either manslaughter = atari, orfo = charged with, and m = past tense, 20:59:42 or, 20:59:52 foat = manslaughter, ari = charged with, mor = past tense 20:59:58 anmaster_l: Yes, the fingerprint-semantics-stack-set -- that's mentioned in the defns 21:00:05 cpressey, also: unloading a fingerprint isn't well defined. It might be partly unloaded 21:00:29 cpressey, well I meant, per-fingerprint data 21:00:35 cpressey, as in special flags for MODE 21:00:36 or whatever 21:00:41 Unloading fingerprints will be precisely defined to have the same broken behaviour as -98, probably 21:00:55 anmaster_l: That's the fingerprint's business, not the EC's. 21:01:02 alise: And what of "o jeh", and "o naw"? 21:01:03 cpressey, I don't think 98 behaviour is actually broken as such 21:01:14 Fine, "stupid behaviour" 21:01:26 pikhq: jeh/naw are probably yes/no. 21:01:28 o = it's, I bet. 21:01:28 I don't think it's stupid either :-P 21:01:29 cpressey, I liked it :) 21:01:34 So It's yes = it's good, it's naw = it's bad 21:01:40 So it's good, he was charged! But oh the downsides. Bad bad bad. 21:01:55 I'm not sure what else to call something where you can unload it and it's still there 21:02:13 Consider a newspaper article: "O jeh! O naw, o naw, o naw, o naw. Morfoatari [the criminal but the implications ...]." 21:02:17 You're not unloading "it" ;-) 21:02:18 cpressey, see it as set operations 21:02:26 Multiset 21:02:52 No, you're unloading all the instructions that are defined in it, no matter what they actually do right now. 21:02:54 cpressey, let A and B be sets of the letters each fingerprint implements 21:03:10 cpressey, then you have operations like A\B 21:03:11 If that's what you want, it makes more sense to just... list those instructions 21:03:42 If AAAA and BBBB define the same sets of letters, unloading either has the same semantics 21:04:14 hm 21:04:29 To add one data point, I have a mild dislike of that; can't quite quantify the amount, but not large. 21:04:30 alise: It's the new *new* Newspeak. 21:04:57 cpressey, I quite like the current behaviour, and I see nothing wrong with it 21:05:14 cpressey, I might make a fingerprint that allows sending fingerprint instructions between ips or such 21:05:27 hey in efunge I could create fingerprints on the fly 21:05:32 I just realised this 21:05:45 since they are basically a stack of lambdas 21:05:49 (funs) 21:06:10 sure, they can resolve to a function in a module (what currently happens) 21:06:29 but nothing prevents a complete lambda being pushed there 21:07:17 cpressey, what about CR for file loading? 21:07:34 anmaster_l: Not supported, use a text converter. 21:07:54 CR for file loading? 21:08:03 You mean mac-style line breaks? 21:08:17 I assumed that what what anmaster_l meant 21:08:25 Why not supported? 21:08:26 cpressey, aww, I went to great lengths ensuring any combination of LF CRLF and CR mixed for different lines in a single file worked 21:08:37 cpressey, so CRLF is also unsupported I guess? 21:08:49 Deewiant: "file" is a more abstract concept 21:09:01 last I checked mycology was encoded in CRLF 21:09:15 That exposed a bug in rcfunge IIRC 21:09:19 Which reflected on CR 21:09:31 cpressey, so basically it would use native line ending always? 21:09:33 Or can't remember which, one of the earlier interps. 21:09:37 There is nothing stopping an implementation from providing loading of files in other formats as an option 21:09:43 anmaster_l: No, always 10. 21:09:45 cpressey, would actually handling non-native formats be allowed? 21:09:49 hm 21:09:59 cpressey: That's massively inconvenient for windows users 21:10:06 cpressey, but that would need to be an explicit option? 21:10:30 (which I don't think is a good idea requiring) 21:10:50 -!- augur has quit (Ping timeout: 248 seconds). 21:11:00 Deewiant: It's just payback for "you people" spewing all those CRs everywhere. 21:11:19 cpressey, the SGML spaces + ticks had a somewhat tricky semantics iirc 21:11:28 cpressey, Deewiant is the right person to ask here iirc 21:11:38 I forgot what he thought was the best idea 21:11:39 I don't really mind myself since I use vim which can easily save in whatever format I want 21:11:44 But people /do/ use notepad 21:11:53 And programs default to CRLF 21:11:58 c 21:12:04 s/c// 21:12:08 Deewiant, only on windows 21:12:19 Yes, that's what I was talking about all along 21:12:30 well yes 21:13:30 Incidentally, what about s? The first time I read it, I assumed it pops a value from the stack, writes it to (pos+delta), then continues from the just-written value, but I guess interpreters generally tend to skip it, like ' does? (It's "defined" to be "mirror image" of '.) 21:13:38 The only trickiness that comes to mind re. SGML spaces is in what order they are meant to work 21:13:56 I guess I was just hoping for a handy "execute the op currently on top of stack" command. 21:14:05 I mean, where are you after spending three ticks (" included) in "x y" 21:14:14 Deewiant, indeed 21:14:20 Deewiant, where were you? I forgot 21:14:30 I think you're on the y 21:14:44 Seems most sensible to me anyway 21:14:58 err 21:14:59 how 21:15:04 Why would you not be on the y? 21:15:10 well 21:15:14 Enter Stringmode, Push `x`, Push ` ` 21:15:16 what about *on* the third tick 21:15:23 cpressey: You /could/ be on the second space, and you'd skip it only next tick 21:15:24 cpressey, then skip over the second space? 21:15:44 I think that was cause for some confusion anyway 21:15:50 I might misremember, maybe there was some other issue. 21:15:56 yes, iirc it exposed a bug in ccbi 21:16:06 after we found out it wasn't in cfunge as first thought 21:16:21 Hmm, I do think I've always done it the same way 21:16:26 cpressey: You need a sort of a "read-ahead" in stringmode to be on the "y" after the third tick, whereas for the other way (skip extra spaces only on the second tick) you don't. 21:16:38 Since the whole "ticks" thing only makes sense when there are multiple ECs, and multiple ECs are optional, I'm thinking of just dropping it. 21:16:50 Deewiant, yes but you had a bug that hid a bug in mycology in the tests related to i 21:16:51 it* 21:16:53 cpressey: That'd make everything multithreaded unspecified... which sucks 21:17:10 fizzie: Well, I've always thought of it as execute-then-advance-to-next-thing-that-can-be-executed (stringmode or no) 21:17:33 cpressey, indeed 21:17:36 Right, that's a more general issue I think 21:18:02 I may've done it as loop { advance-to-next-executable, execute, move by delta } 21:18:08 In "SGML" that means, push space then advance to next (non-space) thing that can be pushed... I don't see any lookahead involved 21:18:27 cpressey: See what I just said 21:18:52 If you do it as advance-to-next-executable, loop { execute, move by delta, advance-to-next-executable } there's no problem 21:18:59 funny thing... memtest86+ claims L1 speed is 16394 MB/s, L2 speed is 1123 MB/s, and memory speed is 1132 MB/s 21:19:00 so... 21:19:11 my main memory would be faster than L2? 21:19:32 Heh 21:21:28 If you really want to be nitpicky, you could complain about this case: IP 1 executes whatever and moves to location X, which contains some executable-looking instruction; then IP 2 overwrites that with space; now what should IP 1 do? A literal reading of the spec is quite clear: " The IP executed is the one at the current position of the IP. Only after that does the IP moves by its delta to a new position." 21:21:56 On the other hand, the spec is equally clear: "-- space -- cannot ever be truly executed, in the sense of it taking up a tick and doing something." 21:23:09 I think at least my interpreters have opted to possibly move the IP even before execution, if the current position happens to be a space or a ;. 21:23:34 I'm not sure I handle that separately 21:23:47 actually, I think it can't happen 21:24:02 since I handle space in my execute_instruction 21:24:02 It can, if a child IP overwrites your position with a space 21:24:12 as a loop that goes forward looking for next non-space 21:24:17 so hm 21:24:22 But does it then execute the next instruction? 21:24:29 Deewiant, it does after 21:24:33 On that tick 21:24:35 Not the next 21:24:38 Deewiant, yes 21:24:45 So it's all good :-P 21:24:47 Deewiant, I return "continue with same ip" 21:24:54 instead of "continue with next" 21:24:58 I know I've broken and unbroken this many times in CCBI 21:25:04 I may have copied that sort of behaviour from some other interpreter, yes. 21:25:06 Deewiant, same I think 21:25:17 but the thing is 21:25:26 I don't search forward at the end of the cycle 21:25:30 but at the start of the cycle 21:25:42 at the end of the cycle I just move forward one delta 21:25:57 Right, that's one of two alternatives 21:26:09 And it's not entirely specified which one is right, I think. 21:26:20 Yes, that's a bit unclear too, since the "move afterwards" part of the spec only says you should move "as specified by the delta". 21:26:25 and only when I'm about to execute again I check if it is space, then skip forward and execute whatever is after 21:26:29 (assuming non-string mode 21:26:31 ) 21:26:39 (string mode would be somewhat different) 21:26:49 But if you opt for the literal reading of that first part ("you must execute whatever is at the current position, and only move after that") you can't do it like that. 21:27:02 I'm not sure anyone does, though. 21:27:16 fizzie, j would be rather different then for example 21:27:25 For one thing, it sas that you have to execute the "IP -- at the current position of the IP". 21:27:26 fizzie, especially kj 21:27:30 Which doesn't really sense make. 21:27:35 fizzie, this was discussed a few days ago 21:27:36 in here 21:31:04 fizzie, that's a good point. 21:31:53 The "search" does have to occur at the beginning, before the first instruction is first executed anyway. 21:32:33 And it might have to happen if some other EC p'ed a space under the IP. 21:32:36 Yes, that's what I was implicitly demonstrating in my second loop {} style thing 21:32:54 OK, it's clearer now. I'll make a note of it. 21:33:16 And what about that s?-) (Okay, okay, I'll shut up about the s.) 21:33:29 I think the s is pretty obvious even in -98 :-P 21:34:05 Yeah, I didn't think there was anything tooooo controversial about s? 21:34:46 cpressey, indeed I agree 21:35:30 There is a patent on the linked list. Why is there a patent on the linked list. 21:37:22 to protect innovation! 21:37:41 pikhq, there must be prior art 21:37:49 unless that patent is very old 21:37:54 so the patent is invalid 21:37:55 anmaster_l: Fairly recent. 21:38:04 pikhq, then that patent is invalid 21:38:14 There's tons of prior art. Like, *nearly every program*. 21:38:33 Yes, but validity of patents doesn't matter in the US courts. 21:38:40 I have written programs that don't use linked lists. 21:38:56 Deewiant, cpressey, anmaster_l: Oh, don't be like that. "s -- pops a value off the stack and writes it into (position + delta)." It doesn't say anything about advancing the pointer any extra, which made it (to me, anyway) sound like it'd be a fancy instruction that'd let you execute what's on top of stack, since (position + delta) is where the execution would normally continue from. 21:39:00 I want lament as my patent attorney 21:39:01 lament: Yes, but linked lists are an absurdly common data structure. 21:39:11 You only get the skipping behaviour from the vague "it's a mirror image of '" description. 21:39:24 cpressey: that's patently stupid. 21:39:34 fizzie: See, I don't think it's that vague ;-P 21:39:47 Deewiant: It doesn't define what a "mirror image" is. :p 21:40:13 fizzie: yes, I don't think it was intended to skip over. "Mirror image" is merely, uh, imagery. 21:40:37 You don't? O_o 21:40:49 Ha, see! Currently de-facto it does skip over, so it's not usable as-is as an "execute what's on stack" thing. 21:41:01 Okay, so it's not a huge space-waster to put a tight curve in there, but still. 21:41:11 cpressey, what? 21:42:18 Executing what's on stack is trivial anyway, err... aycy+bydy+p (only works in Befunge) 21:42:23 fizzie, or just some # and j magic 21:42:28 And needs a few more adds 21:42:31 But anyway ;-P 21:42:32 I don't remember. 21:42:50 That's not what I'd call "trivial". 21:43:03 data [a] = a : [a] | [];head (x:_)=x;tail(_:xs)=xs 21:43:04 I was jesting 21:43:09 Ooops, I'm violating a patent! 21:43:39 There were *supposed* to be "store left" and "store right" instructions, and corresponding "fetch", that would store stuff beside the path instead of in it 21:43:40 I have to admit that I haven't ever written a program where I'd actually felt the need to execute what's on stack... but it *could* happen! 21:44:04 I think that was in a 99 proposal 21:44:44 99 21:44:50 cpressey, was that a typo for 98? 21:44:54 fizzie: k should have taken its instruction from the stack 21:44:57 anmaster_l: no 21:45:01 cpressey, hm okay 21:45:15 never heard about the 99 stuff before 21:45:20 96 and 97 yes 21:45:37 That's because no one was interested in anyone's ideas for changes after 98 21:45:47 hm okay 21:45:51 There was all kinds of stuff proposed 21:46:11 cpressey, well I think they are good ideas, but I also think they should probably be a set of fungoids 21:46:16 and then everyone is happy 21:48:16 With the current s, I don't see any specifically elegant way of using it for stack-execution. sX^ and then v< on top of X^ works, but all the looping makes the IP dizzy. If you just jump backwards without changing delta, it's hard to avoid ending up in a loop; you can't do something like s#vX< because the s won't reach up to the X. 21:49:26 s;> #;X#< 21:49:38 Deewiant: Won't that just overwrite the ;? 21:49:48 Maybe :-P 21:50:08 Would be cool if it didn't tho 21:50:25 With a non-cardinal delta you can do it semi-elegantly; assuming dx=2, dy=0 for example you could just svX <. 21:50:48 fizzie, what is X there? 21:50:54 "any" 21:50:56 anmaster_l: The thing that gets overwritten by s. 21:50:59 ah 21:51:29 But setting a non-cardinal delta involves an ugly vector. 21:51:53 eval is supposed to be ugly 21:52:04 fizzie, you could also do 0-2 0 'X #vsX x right? 21:52:10 or something like that 21:52:36 I guess so. 21:52:45 err 21:52:49 make that 02- 21:52:51 of course 21:53:21 Though 20x svX < is shorter. I just don't like non-cardinal deltas at all, due to theological observations. 21:53:36 oh? 21:53:48 -!- augur has joined. 21:53:48 oh 21:53:49 ffs 21:54:01 Like the old saying goes: God created the cardinal deltas; all else is the work of man. 21:54:06 They fell less holy, you see. 21:55:45 "The all-pervading nature of the program counter"; what a lovely section title from Wikipedia. 21:55:58 fizzie, so Cardinalidae is more holy? Huh 21:56:23 (algorithm: go to wikipedia disambig page, pick first from list) 21:56:57 On the other hand, bishops move diagonally... 21:57:05 haha 21:57:35 There was a related joke I saw somewhere. 21:57:43 "As a chess grandmaster, what's your view on America's war strategy?" "Send in the clergy! They can move diagonally!" 21:58:01 Mmm, SMBC. 21:58:12 That's probably where it was. 21:58:29 It was. 21:59:18 -!- alise has quit (Ping timeout: 252 seconds). 22:01:34 where is oklofubp 22:01:52 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 22:03:38 -!- AnMaster has joined. 22:04:06 night 22:04:16 -!- anmaster_l has quit (Quit: Leaving). 22:06:12 -!- angstrom has joined. 22:07:01 hi guys. how are the extensions { '#', '!' } actually used in brainfuck? 22:07:56 #!/sbin/brainfuck 22:08:38 as in "#! /bin/bash" ? 22:12:15 lament: my question refers to http://esolangs.org/wiki/Brainfuck#Extensions but what does "print the content of the first few memory cells" mean? kinda vague to me.. '!' should, if i'm right, write the char after it from the source into the current cell 22:14:36 angstrom: I think # is basically "Debug", and not meant to be portable in any serious way. 22:15:17 I've seen # used as a breakpoint instruction in BF too. 22:15:24 Whereas everything before "!" is interpreted as program, and everything after it as input (for interpreters that don't have the usual concept of stdin etc.) 22:15:27 And ! is only used as an "end of code" marker. 22:15:56 ^bf ,[.,]!hello 22:15:57 hello 22:15:59 Like that. 22:28:33 ic. i ask, because i'm currently implementing my own bf interpreter, and just wondered, whether there is a mutual understanding of extensions.. 22:30:03 Just ignore them, really. 22:31:01 Hm 22:31:02 a command for doing something like printf("%u", *(ptr + cell)); would come in handy though 22:31:46 eg. "^4" which then would print the int stored at (4) 22:32:05 Then add and document it. 22:32:22 !!! ... (this is an infinite stream) ... 22:32:32 cpressey: Yes. :) 22:33:06 i'm not implementing it in bf tho 22:35:04 cpressey: It's turtles all the way down. 22:37:02 -!- tombom has quit (Quit: Leaving). 22:46:24 -!- alise has joined. 22:46:38 PING google.com (209.85.229.104): 56 data bytes 22:46:38 64 bytes from 209.85.229.104: icmp_seq=0 ttl=49 time=445.559 ms 22:46:38 64 bytes from 209.85.229.104: icmp_seq=1 ttl=49 time=458.109 ms 22:46:38 64 bytes from 209.85.229.104: icmp_seq=2 ttl=49 time=1841.185 ms 22:46:38 64 bytes from 209.85.229.104: icmp_seq=3 ttl=49 time=847.884 ms 22:46:40 64 bytes from 209.85.229.104: icmp_seq=4 ttl=49 time=999.323 ms 22:46:40 64 bytes from 209.85.229.104: icmp_seq=5 ttl=49 time=365.233 ms 22:46:41 Hi. 22:47:13 -!- Gracenotes has quit (Ping timeout: 260 seconds). 22:47:13 The domain name misogyno.us is available. 22:47:15 (Explanation: Now I am on my iMac, using this BT FON thing where you pay £5 and get 24 hours of interwebs via Wi-Fi. It is slow; I think the router is some way away.) 22:47:28 The other computer is connected wiredly; but with a winmodem. 22:47:34 Shit sucks. 22:47:44 Gregor: :D 22:48:45 As is coprophago.us , but I don't know what that word is and it scares me ... 22:48:57 Very bad ping, very bad bandwidth. 22:48:58 Gregor: you don't? 22:48:59 Gregor: Poo-sexual. 22:49:04 Like our dear friend coppro. 22:49:10 (Pooppy) 22:49:18 hey guys what's my lag? 22:49:28 ping is 1.29 seconds to Gregor :D 22:49:28 alise: PING 22:49:36 cpressey: Uh, use CTCP ping :P 22:49:38 alise help 22:49:41 alise: NO 22:49:42 MissPiggy: wut 22:49:47 cpressey: :( 22:50:12 Your ping is n/a no matter how many times I tell my client to ping you :) 22:50:16 Client doesn't respond to PINGs? 22:50:51 alise: 4 seconds 22:50:58 Sweet 22:51:08 The log for today is loading in tiny stutters 22:51:14 This thing is shared with whoever owns the hub apparently, and i'm capped 22:51:22 But my 3g stick refused to top up, so... 22:51:41 * alise joins #ubuntu for the lulz 22:52:07 * cpressey is scared to venture anywhere besides #esoteric 22:52:10 also I /just/ managed to connect to MSN... 22:52:42 We're the nicest channel now that #haskell has gone all big. 22:52:47 Even nicer if I left :) 22:54:42 man #haskell is so fucking awful seriously 22:54:49 that channel is a pit of fail 22:55:06 Anything else to say other than the usual "Haskell sucks" stuff? 22:55:11 was 22:55:12 I realise Coq is so much better and all but please. 22:55:13 but not anymore 22:55:19 what's coq got to do with it 22:55:25 Well, you seem to like Coq. :P 22:56:03 -!- alise_ has joined. 22:56:03 -!- alise has quit (Read error: Connection reset by peer). 22:56:07 -!- alise_ has quit (Client Quit). 22:56:13 haskell sucks 22:56:28 -!- alise has joined. 22:56:41 Not the most reliable connection. 22:56:52 Could someone pastebin the last, say, 100 lines of today's log? 22:56:56 MissPiggy: Is there anything you feel positively about? 22:56:57 Or, well, since I last left for a while. 22:57:01 I can't seem to load the entire log. 22:57:11 Deewiant: Negativity! 22:58:01 Deewiant I wish there was 22:58:02 -!- alise has quit (Read error: Connection reset by peer). 22:59:18 -!- alise has joined. 22:59:41 This is just ridiculous. 22:59:45 Anyone said anything? 22:59:58 alise: No. 23:00:11 Well that's great. Probably they did but the lag stopped me seeing it :) 23:00:17 I should just top up the damn 3g stick 23:00:21 And previously it was mostly very boring stuff about Befunge spec. 23:00:30 Aight. 23:00:30 -!- MigoMipo has quit (Read error: Connection reset by peer). 23:01:44 Oh I missed this one. 23:01:45 (4:55:49 PM) lament: haskell sucks 23:02:03 We're in top form today. 23:03:19 -!- Gracenotes has joined. 23:03:23 -!- oerjan has joined. 23:04:37 In other news, Wouter took free variables (and thus closures) out of Aardappel after deciding they didn't add anything to it (function values can be expressed more directly as term-rewrite rules.) 23:04:55 But it does have local rules. 23:05:07 Which is what I'm thinking about. 23:05:10 Anyway. 23:05:33 -!- alise has quit (Ping timeout: 240 seconds). 23:08:30 -!- alise has joined. 23:11:19 Aardappel doesn't treat the local rules as part of the term, though, afaict. So they can't be rewritten by other rules. 23:11:32 Topped up. 23:11:52 Also, I think there are only 2 levels, local and global. No nested scoping beyond that. Could be wrong though. 23:12:00 hi alise 23:14:18 -!- coppro has joined. 23:16:00 cpressey: I think deltas should modify, but not overwrite, the velocity. 23:16:17 Like, < should change (1,2) to (0,3) 23:16:22 Er, if I have my order correct 23:17:29 alise: I think that idea was kicked around once... so, like, >> > > > > > causes the IP to speed up to the right 23:17:42 Assuming it's already going right 23:17:48 accelerating >s! 23:17:55 Pretty much 23:18:01 It makes turning corners interesting 23:18:02 * augur accelerates cpressey's > 23:18:03 cpressey: Oh, I think it'd behave normally just for ^/v/ 23:18:09 Dunno how, though 23:18:13 Just a sort of generalisation 23:18:21 hi augur 23:18:39 sups 23:18:44 im sad 23:18:55 why did I study so much computers it was a waste of time 23:19:02 :( 23:19:14 ? nobody gives a fuck if I can implement CPS conversion using delimited continuations ? 23:20:17 whine whien whien 23:20:24 :P 23:20:29 MissPiggy is having some sort of crisis where she disowns all of CS :P 23:20:34 #math is that way 23:20:38 and takes up linguistics! :D 23:20:40 #math is awful 23:20:43 math actually 23:20:45 or so she says 23:20:47 I am learning a little bit of linguistics 23:20:48 linguistics is awful 23:20:50 *maths 23:20:55 cpressey: augur hates you now 23:21:00 CPRESSEY YOU HOLD YOUR TONGUE 23:21:00 >O 23:21:05 I just read the intro books 23:21:17 come, my dear, let me teach you bout some linguisticd 23:21:20 yeah but alise I'm not good at math 23:21:58 http://www.youtube.com/watch?v=Lt4JZyssxOQ 23:22:21 lmfao 23:22:27 thats a horrible demonstration XD 23:24:30 his bothmer person has a bunch of stupid videos 23:24:31 lol 23:24:46 "this is nor a homomorphism: /bother burns a sheet of paper" 23:24:48 not** 23:25:26 MissPiggy: computing's cool man 23:25:57 -!- dev_squid has quit (Ping timeout: 260 seconds). 23:26:42 computer science is the worst 23:26:58 can't decide if it's math, logic, or electrical engineering 23:27:03 Today, I mostly paste libraries together. So do you, most likely, if you work in software. Doesn’t that seem anticlimactic? We did all those courses on LR grammars and concurrent software and referentially transparent functional languages. We messed about with Prolog, Lisp and APL. We studied invariants and formal preconditions and operating system theory. Now how much of that do we use? A huge part of my job these days seems to be impedence-ma 23:27:21 Fuck, paste libraries together? I WISH! 23:27:52 Modern programming is 90% troubleshooting and 10% acting like the bugs that are there don't matter. 23:28:00 oh great MissPiggy read a sub-par lol cs is not programming 23:31:08 MissPiggy: impedence-ma 23:31:28 MissPiggy: look cs has a boring brother called programming 23:31:32 but mathematics doesn't even have a boring brother 23:31:52 Mathematics also has a boring brother called programming? 23:32:06 Math is nothing but the lesbian sister of biology 23:32:08 Not really :P 23:32:15 Mathematics has a "special" brother called CS. 23:34:08 -!- Gracenotes has quit (Ping timeout: 256 seconds). 23:35:43 I am a huge proponent of "Agile mathematics" 23:36:27 Is it the kind where you need to perform autofellatio? 23:38:41 ... wow. 23:41:12 XD 23:41:22 I don't get it. 23:42:01 Exactly. 23:44:07 I keep thinking it's some obscure Pair Programming reference. 23:44:10 the connection to mathematics seems a little weak 23:44:53 cpressey: that wouldn't be auto- would it. 23:46:46 On the other side of the coin is http://www.flounder.com/bricks.htm 23:47:25 i.e. Programming has a useless brother called CS 23:49:37 that was funny about the comma inside the quote 23:52:58 Whoever wrote that — ok so I haven't read it yet — has probably used quicksort. Or O(n) notations to decide on an algorithm. 23:53:00 Or... I could go on. 23:53:38 his point is not that CS is useless 23:53:38 alise: OK, so the analogy isn't quite right. 23:53:53 his point is that CS education does not train programmers 23:53:54 coppro: Yeah, seems not. 23:53:59 Programming as a profession has a useless brother called CS Education. 23:54:00 Or CS, in most cases. 23:54:45 Naw, programming is to CS as civil engineering is to physics ... the fact that civil engineers need to take physics classes doesn't mean that they're dealing directly in theoretical physics every day. 23:55:19 good analogy 23:55:34 this is all great but none of it helps me :| 23:55:51 What did you want to be helped with? :P 23:56:01 I don't even know :( 23:56:19 time travel is out of the question 23:56:20 MissPiggy needs metahelp 23:56:42 -!- augur has quit (Ping timeout: 248 seconds). 23:56:44 Quicksort is a fun sorting algorithm. 23:57:07 MissPiggy: If you're confident that you can develop the technology to travel backwards in time within your lifetime, then time travel is not out of the question. Just develop it, then send it back to your younger self, and you'll still have your entire life to do whatever else you wanted to do. 23:57:11 I love sorting algorithms that perform at their worst when their input is already sorted. 23:57:52 Gregor, but I don't beleive in time travel 23:58:02 So short-sighted :P 23:58:03 I mean, maybe it's possible to send me back in time 23:58:16 I imagine almost nobody believes in time travel. 23:58:30 but it would just be duplicating me, and destroying the original 23:58:37 I wouldn't actually be going through time, I'd just think I was 23:58:40 Not necessarily. 23:58:48 That's an irrelevant distinction. 23:59:00 I mean, what makes you think that when you walk around, you're not just duplicating yourself and destroying the original? 23:59:02 Gregor irrelevant to whom? 23:59:22 Whatever it is that makes you think that, it should also make you open to the idea that time travel wouldn't do that. 23:59:23 Irrelevant in every sense, you're existing a distinction with no physical consequences. 23:59:29 Erm 23:59:35 You're creating a distinction with no physical consequences. 2010-03-04: 00:00:00 this basically disproved time travel 00:00:16 [23:58] MissPiggy: but it would just be duplicating me, and destroying the original 00:00:16 all the cells in your body are replaced etc 00:00:17 alternatively 00:00:18 samething 00:00:30 also, no it did not disprove time travel, physics did 00:00:50 anyway 00:01:13 The duplicating-and-destroying argument has absolutely nothing to do with disproving something that appears to be time travel. 00:01:25 Our current understanding of physics does not predict the physical possibility of time travel ... that is not the same as disproving it. 00:02:13 -!- BeholdMyGlory has quit (Remote host closed the connection). 00:03:36 The way to disprove time travel is to conclusively show that a) our knowledge of physics precludes all forms of time travel b) our knowledge of physics is entirely perfect. 00:04:00 The "b" part is the nonsense part :) 00:04:07 Well, part b) is the easy part. 00:04:19 ... No. 00:04:22 Derive all our knowledge of chemistry from our knowledge of physics. 00:04:27 Part b is impossible. 00:04:30 Boom! You've proved our knowledge of physics correct. 00:04:42 Part b) is about as impossible as proving that Barack Obama is the president of the United States. 00:04:43 Not /all/ of it. 00:04:44 uorygl: No, you've proved our knowledge of physics consistent with our knowledge of chemistry. 00:04:51 Or that our knowledge of chemistry is flawed 00:05:23 You need to demonstrate that our knowledge of physics is consistent with the universe. 00:06:02 Suppose we have a small set of rules that predicts a huge set of results. 00:06:03 In its entirety. 00:06:14 Which means you need to enumerate all infinity physical possibilities and bring them to pass. You need to destroy the universe by every means that the universe can be destroyed, and oh wait hm that last one was a problem. 00:06:20 Then it can predict those results. 00:06:25 -!- BeholdMyGlory has joined. 00:06:44 And we will be happy to use them to predict others. However, we have not proven those other results. 00:06:51 We merely assume them. 00:06:52 Um, let my try again. 00:08:59 Suppose that we have a complete theory of physics, and a huge body of data about chemistry. The body of data about chemistry is much, much larger than the theory of physics. And the complete theory of physics completely predicts that huge body of data. As long as you can be confident that no other complete theory of physics also predicts this body of data, you can be confident that the theory of physics is correct. 00:09:16 ut the data hand't been correleated in all possible ways yet 00:09:23 and eternity passed.. 00:09:30 Why would we want to do this? 00:09:41 We don't care about absolute proof. 00:09:44 And it came to pass that AC learned how to reverse the direction of entropy. 00:09:48 -!- FireyFly has joined. 00:09:54 We care about very, very strong proof. 00:10:00 -!- FireyFly has quit (Read error: Connection reset by peer). 00:10:10 That's not a proof. 00:10:32 You have either proven something or disproven something. There are no degrees. 00:10:33 We care about very, very strong evidence. 00:10:41 uorygl: chemistry involves mainly things composed of protons, neutrons and electrons. these are composed of less than a third of the elementary particles already known to physics (electron, up and down quark) 00:10:45 Yes, we care about very, very strong evidence. 00:10:56 And it is certainly possible to have very strong evidence that something cannot happen. 00:11:04 This is entirely different from "proving it cannot happen". 00:11:10 Never mind that the physics required to explain chemical reactions bears little resemblance to the physics required to explain orbits of planets. 00:11:27 so chemistry only tests a small part of the fundamental theory 00:11:36 I, personally, feel that we have little enough evidence against time travel that even a colloquial use of the term "disprove" is wildly overzealous. 00:12:02 we do not have any evidence against time travel generally 00:12:06 She uses the word “algebra” broadly, defining it as a “method of solving problems by honest confession of one’s ignorance”. 00:12:10 Gregor: Indeed. 00:12:12 I might argue that chemical properties are an extremely sensitive function of physical constants. 00:12:15 But maybe they're not. 00:12:19 however we lack any good theory of time travel that current models would allow 00:12:20 We actually just plain don't know enough to rule it out. 00:12:38 coppro: We also lack comprehensive models. 00:12:44 I sort of wonder what a "proof" is if it's not just very, very strong evidence. 00:12:48 uorygl: it would be like claiming you knew everything about C++ from just knowing the subset in common with C 00:12:49 of course we do 00:13:03 if we had a comprehensive model, physics would be boring 00:13:07 MissPiggy: Where are you getting this from? Sounds like lit-crit mumbo-jumbo 00:13:30 oerjan: yes, I understand what you're saying. One of my conditions was "as long as you can be confident that no other complete theory of physics also predicts this body of data". 00:13:34 uorygl: See mathematical proofs. 00:13:52 cpressey, it's about the book philosophy and fun of algebra 00:13:58 I am confident that no other program computes THIS algorithm! 00:14:02 And when I say "no other complete theory of physics", I mean "no other complete theory of physics that's nearly as simple". 00:14:16 -!- alise has quit (Quit: alise). 00:14:17 And by "other", I mean "different", as in "predicting different things". 00:14:21 uorygl: "Proof" is meaningful only when something can be comprehensively reduced to something else. That is, proof is contextual. It may be possible to prove that our understanding of chemistry is consistent with our understanding of physics, but this proof gives us little, as its utility is dependent on the proof of physics, which we have nothing to reduce to. 00:14:31 pikhq: so are "proof" and "mathematical proof" the same thing? 00:14:41 If he's not back in $soon, I'll worry. 00:14:51 No, but Hume a few bars and I'll fake it! 00:14:56 /rimshot 00:15:02 Colloquially, "proof" just means "very strong evidence" of course, but we're talking about theoretical physics, this is not a colloquial conversation. 00:15:35 uorygl: In any sane formal context, yes. 00:16:11 Prove that the sun will come up tomorrow. 00:16:15 And as we all know, you can't actually prove anything about reality with math. Just something about a nice formal system. 00:16:24 Alternately, make yourself sick worrying that it won't. 00:16:30 cpressey: easy. 00:16:35 cpressey: I sincerely hope it won't, the physical ramifications of the sun moving in such a fashion are horrifying. 00:16:44 no physical theory is proven 00:17:02 cpressey: it has come up every day for the past 1,000,000,000,000 days. We have no good reason to expect that it won't come up tomorrow. Therefore, it will come up tomorrow. 00:17:04 cpressey: Now, if you mean that the Earth will rotate such that from my perspective the sun's position on the horizon rises, that's a different request. 00:17:12 what about elecrtroonics 00:17:12 uorygl: Failure. 00:17:27 Gregor: I argue that it does, in fact, rise 00:17:29 uorygl: You've been around for a trillion days? Impressive. 00:17:33 uorygl that is such a fail argument 00:17:47 (I'm merely poking the most obvious of holes in that argument :P ) 00:17:49 and the other planets rotate the sun as it rotates Earth 00:17:49 uorygl: A lack of a proof against is not a proof for. 00:17:51 induction just doesn't work that way 00:18:00 Well, every bird I've ever seen has been black. Therefore, all birds are black. 00:18:05 What do you mean, induction doesn't work that way? That's precisely how induction works. 00:18:06 coppro: There is no global definition of "up" 00:18:12 you build an explanation of something which doesn't have variables 00:18:12 uorygl: No it's not. 00:18:15 cpressey: you've seen 1,000,000,000,000 birds? 00:18:20 if it fits wear is 00:18:20 pikhq: how do you think it works, then? 00:18:22 coppro: Erm, "global" is a bad term to use ... 00:18:22 it* 00:18:23 Gregor: nothing is defined globally 00:18:27 uorygl: You've seen 1,000,000,000,000 sunrises? 00:18:35 one of the great things of physics 00:18:44 Even better: birds have two wings. Therefore, if a bird loses a wing, it's no longer a bird. 00:19:14 what *is* a bird ? 00:19:18 Well, it;'s not the bird it used to be, anyway. 00:19:19 How much of a sapiens' brain do I have to scoop out before it's no longer a sapiens? :) 00:19:27 Okay, here's a better argument. 00:19:33 http://www.youtube.com/watch?v=wfvEgWINUFc <-- tries to answer that question 00:19:47 nah, the old one is fine 00:19:54 uorygl: I think it works by showing that some statement x in an infinite sequence is true, and that *if any statement in that infinite sequence is true*, then so is the next one. 00:19:54 The Sun has come up every day for the past 1,000,000 days. We have no good reason to expect it won't come up tomorrow. Therefore, it will come up tomorrow. 00:20:06 pikhq: that's an entirely different type of induction. 00:20:11 uorygl stop :((((( 00:20:16 it's a perfectly valid physical theory 00:20:18 uorygl, these kind of arguments make me die inside 00:20:19 Oh, you mean inductive reasoning. 00:20:20 uorygl: You are providing a very compelling /argument/ that the sun will come up. You are NOT proving that it will. 00:20:20 Mathematical induction and inductive logic are not the same thing. 00:20:28 Which is proves nothing. 00:20:30 and calling it "induction" is just as bad 00:20:34 no theory proves anything 00:20:42 MissPiggy: well, please stop dying so much. 00:20:48 Inductive reasoning produces a scientific theory. 00:20:52 Gregor: sure, define "proof" that way. I don't like that definition. 00:20:54 the theory is consistent with observations and makes a prediction 00:20:57 It is not a proof by induction. 00:20:57 uorygl, it should be called the principle of probable monotony 00:21:03 therefore is valid 00:21:03 heuristic principle of probable monotony 00:21:05 MissPiggy: then call it that. 00:21:06 *** 00:21:15 Gregor: general relativity allows you to treat any object as stationary, including the earth. see also http://xkcd.com/123/ 00:21:29 *any one 00:21:50 uorygl, I have a distaste for the heuristic principle of probable monotony because it is a very flawed to conflate this argument with an explanation -- which leads to much deliberation an quibbling on trivial matters 00:22:13 truly it is just a suggestion that one might look for a deeper explanation 00:22:32 oerjan: xkcd #123 doesn't actually use general relativity 00:22:34 it should not be confused with extrapolation either 00:22:36 Anyway, I think it's best to define proof as very, very strong evidence. There's really no practical difference between very, very strong evidence and absolute proof. 00:22:43 which is only valid when the frame of reference is not accelerating 00:22:56 coppro: no, that's _special_ relativity 00:23:18 MissPiggy: the fact that you have a distaste for it and it leads to much quibbling over trivial matters has no bearing whatsoever on whether it forms a strong argument or not. 00:23:26 general relativity is all about acceleration (and its equivalent, gravity) 00:23:36 oh wait, you're right 00:23:38 never mind me 00:23:38 uorygl I thuoght it did 00:23:50 -!- alise_ has joined. 00:23:53 uorygl: "Strong argument" has a completely different notion in math and in science. 00:24:07 A "strong argument" in math is a proof. 00:24:23 A "strong argument" in science is noting that every single time you do something, the same thing happens. 00:24:28 MissPiggy: well, it doesn't. 00:24:44 ufhG! 00:24:50 I must defeat this argument 00:25:57 uorygl: In conclusion: do not invoke the word "proof" unless you are discussing formal reasoning. It is wrong. 00:26:15 Or hard liquor. 00:26:18 it has been shown many times that an even which seems periodic or caused by some effect must not be assumed so simply on the evidence of data but if we can build a simple theory to explain this data 00:26:27 pikhq: so what word am I supposed to use for very, very strong evidence that's practically identical to a proof? 00:26:30 an event* 00:26:38 Evidence. 00:26:54 "Evidence" and "very, very strong evidence that's practically identical to a proof" are not synonyms. 00:27:19 "Since there is evidence that you are guilty, I hereby sentence you to life in prison." Doesn't sound right. 00:27:40 * cpressey invents the word "Gwandocu" for uorygl's use. 00:27:44 Thank you. 00:27:59 yes! 00:28:17 The reasoning is "Since there is evidence beyond a reasonable doubt that you are guilty", BTW. 00:28:36 So, if we had a complete theory of physics, it wouldn't necessarily be difficult to come up with gwandocu that it's correct. 00:28:58 "Complete theory"... Could you define that term? 00:29:20 (I presume you mean "theory that explains all observations", but just wish to confirm) 00:29:29 A complete theory is a full mathematical description of everything that happens. 00:29:30 But you could always find people who would not be persuaded, no matter how geemorgul the gwandocu. 00:29:33 So yeah, that. 00:29:52 cpressey: indeed; we call those people irrational, and we try to make them rational so that they believe. 00:29:55 Okay, then. I agree with that statement. 00:30:06 And note that scientific discussion needs the word "gwandocu". 00:30:11 O jeh, o naw, o naw, o naw, o naw. 00:30:49 -!- pikhq has set topic: "Gwandocu (n): Extremely strong evidence, far beyond a reasonable doubt." | alise sighting counter currently out of order | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 00:33:48 clearly an ancient welsh concept 00:34:13 Has too many vowels. 00:34:28 Would need to be "Gwndycu". 00:34:55 You managed to not turn the easiest-to-turn-into-a-consonant vowel into a consonant. 00:35:26 So I was being consistent with Welsh phonology. 00:35:39 -!- alise_ has quit (Ping timeout: 252 seconds). 00:36:48 -!- augur has joined. 00:36:56 If I had more time, I might ask if anyone thinks it's possible to get a complete mathematical description of everything that happens without being omniscient. 00:37:18 I think it's probably possible. 00:37:33 I have no idea what's happening in the Zeta Reticuli system right now. 00:37:50 I have some idea of what's happening in the Zeta Reticuli system right now. 00:37:56 First-hand? 00:38:03 No. 00:38:03 Can I borrow your saucer? 00:38:06 Drat. 00:38:16 So, you have a guess as to what's happening there, then. 00:38:24 Yes, but it's a very good guess. 00:38:32 Well, that's hard to know. 00:38:41 Without a saucer and all. 00:39:33 oh man ive got some many awesome ideas for my game :D :D :D 00:39:40 I wonder if there's any way of verifying that at least some of our laws of physics apply to Zeta Reticuli. 00:39:56 uorygl: ofcourse there are. 00:40:23 I guess we can look at the spectra emitted by the stars and see that they look like black body emission spectra. 00:40:40 And... we really have a lot of data on them. 00:40:40 -!- alise has joined. 00:40:55 we look at Z Reticuli and can observe that the star's size matches what we'd expect from its mass, that this correlates from the expected composition which we can find from its spectra 00:41:04 cpressey: i think if something like wolfram's theory that the universe is generated by a small program is true, then we might eventually find it (or an equivalent program), although we would never be able to prove that it was completely accurate 00:41:29 we can find that it's shape/oblation fits its rotational period 00:41:54 because we could never be sure that we have measured every phenomenon to perfect precision 00:41:55 we can see that it has the same gravitational effects on surrounding stars as its mass would dictate, and that it is affected by the background gravity accordingly 00:41:57 etc etc 00:43:38 Of course, we might be able to find gwandocu that it's completely accurate! 00:43:51 gwandocu? 00:43:54 oerjan: I'll bet it's "Hello, world!" 00:44:02 Later, folks. 00:44:09 -!- cpressey has left (?). 00:44:18 Gwandocu is extremely strong evidence, far beyond a reasonable doubt. 00:44:19 cpressey: that seems to lack a certain necessary complexity 00:44:44 -!- FireFly has quit (Remote host closed the connection). 00:44:53 "Hello, world!" isn't a computer program. 00:44:57 -!- BeholdMyGlory has quit (Read error: Connection reset by peer). 00:45:23 uorygl: it is in some languages! 00:45:29 also, what language is gwandocu :| 00:45:50 English. 00:45:58 #esoteric Vernacular English. 00:46:01 oic 00:46:27 Etymology: pronouncable series of letters, chosen on a whim. 00:46:40 ;) 00:47:44 i still say it's welsh 00:48:04 In Welsh it's Gwndycu. 00:48:28 -!- sebbu2 has joined. 00:49:22 -!- sebbu has quit (Ping timeout: 264 seconds). 00:49:22 -!- sebbu2 has changed nick to sebbu. 00:49:26 pikhq: gwendolyn is a welsh name you know. it's not that far off. 00:52:47 gun-dick-oo 00:53:00 Yeah. 00:56:01 -!- sebbu has quit (Ping timeout: 264 seconds). 00:56:08 -!- sebbu has joined. 00:56:14 Gregor: general relativity allows you to treat any object as stationary, including the earth. see also http://xkcd.com/123/ 00:56:41 oerjan: Well, not quite, Earth is in an accelerated frame of reference, but anyway, even so the sun most certainly does not come "up", up would be away from the Earth. 00:58:11 Gregor: the sad thing is that he gets it backwards :( 00:58:15 general relativity allows you to treat an accelerated frame as stationary ;D 00:58:18 (it 00:58:25 's just a coordinate choice) 00:58:27 construct newtons laws in a rotating frame and you see there is no centrifugal force 00:58:51 augur: um, no? 00:58:58 oerjan: um, yes? 00:59:02 Yeah, I'm gonna go with "um, no" on this. 01:00:37 oerjan: I think that everything is definable in a reference frame, but not consistent with the behavior of a stationary frame: From an accelerated frame, all other objects appear to be accelerating conversely, but with no force acting upon them. That's inconsistent. 01:00:45 unless what you mean by "get a centrifugal force" is if you calculate something based off of where the revolving object would've gone were it not kept in a circular path by a centripetal force. 01:01:22 but thats inventing a force based on what WOULD have been not what is. there is no centrifugal force that emerges from newtons laws in a rotating reference frame. 01:01:23 Gregor: general relativity treats that as a gravity field caused by the metric of spacetime 01:01:43 there is only a centripetal force and momentum. 01:01:55 augur: do you understand what "in a rotating (coordinate) frame" means? 01:02:08 yes, i do. 01:02:18 oerjan: Oh wait ... this is one of the properties of /general/ relativity that distinguishes it from /special/ relativity, innit? My general rel. isn't up to snuff :P 01:02:35 Gregor: yeah. 01:03:13 don't worry, mine isn't up to much more than that either. i certainly cannot calculate spacetime tensors... 01:03:41 you cant calculate kinematic vectors, nevermind spacetime tensors, apparently. 01:03:59 * oerjan swats augur -----### 01:04:08 -!- dev_squid has joined. 01:04:17 it doesnt help you that im a masochist. :P 01:05:27 oerjan: He's telling you to swat him again. 01:06:02 augur: if you turn on a centrifuge, and then describe everything happening inside from the viewpoint of a coordinate system moving _with_ the centrifuge, then clearly in that coordinate system there is an acceleration of things 01:06:16 no, there isnt. 01:07:41 -!- ruhtranayr has joined. 01:07:55 an object moving at zero velocity outside of the rotating frame will trace a circular path in the rotating frame, which is acceleration 01:08:23 um, yes. that's "yes, there is.", by the way 01:08:25 an object revolving at the same rate as the frame does not move in the frame, maintaining the same coordinates, thus not accelerating 01:08:56 centrifugal force is not the acceleration of the externally stable object. 01:09:05 augur: sheesh, we are talking about describing _ordinary_ physics from the viewpoint of a rotating frame 01:09:16 afk 01:10:01 actually, brb 01:14:09 -!- MissPiggy has quit (Quit: Lost terminal). 01:14:13 -!- augur has quit (Ping timeout: 245 seconds). 01:24:38 -!- MizardX has quit (Ping timeout: 258 seconds). 01:33:49 -!- dev_squid has quit (Ping timeout: 264 seconds). 01:35:26 I wrote a BF interpreter in C. Why did I write a BF interpreter in C? 01:35:48 * pikhq tries to trace back to the start of the reasoning... 01:36:02 -!- dev_squid has joined. 01:36:22 Oh, right. I had tried in the past (ages ago) and failed horribly. Somehow I went from there to "I should write one." 01:36:52 http://sprunge.us/LBeW 01:36:57 Least useful program I've written in ages. 01:40:13 Also probably the cleanest C I've written this year. :P 01:51:51 Meanwhile, I present the ugliest car ever created: http://www.carsweb.cz/hatt/novinky/golba/golba_1.jpg 01:56:18 -!- SimonRC has quit (Ping timeout: 265 seconds). 01:56:32 Dear God. It is ugly. 01:59:03 I'm not sure what to say. 01:59:20 Depending on your perspective, it either has tits or testicles. 02:05:53 -!- SimonRC has joined. 02:07:03 :D 02:07:11 I was going for alliteration there, but in retrospect, "boobs or balls" would have worked better. 02:13:23 -!- jcp has joined. 02:17:04 -!- Sgeo_ has changed nick to Sgeo. 02:26:26 "The result was speedy no consensus." —Articles for Deletion 02:27:22 who says wikipedia isn't efficient 02:36:13 alise: lol 02:36:21 That ... what? 02:36:34 http://en.wikipedia.org/wiki/Wikipedia:Articles_for_deletion/Dwm_(2nd_nomination) 02:36:43 -!- coppro has quit (Remote host closed the connection). 02:36:47 Guys/ 02:36:49 *Guys. 02:36:52 Hello. 02:39:26 Are there any programs out there that would let be experiment with computer circuitry and logic gates and stuff like that? 02:39:54 -!- coppro has joined. 02:40:08 -!- alise has quit (Quit: alise). 02:40:28 -!- sebbu has quit (Ping timeout: 245 seconds). 02:41:15 -!- sebbu has joined. 02:43:22 dev_squid: scarf is the expert on that stuff here i believe 02:44:17 as in, he actually does research with it 02:45:33 vhdl is a keyword to look for 02:48:00 I see. 02:48:21 Would a Von Neumann Automaton simulator fit my needs? o.o 02:49:36 the cellular automaton thing? that seems a bit different from real circuits 02:50:20 I think so. 02:50:25 Yeah, I assumed as much. 02:50:25 ... a Von Neumann Automaton is presumably, based on the name, not a cellular automaton or even anything particularly similar to a cellular automaton ... 02:51:05 Gregor: http://en.wikipedia.org/wiki/Von_Neumann_cellular_automaton 02:51:23 Oh, interesting :P 02:51:29 It falls under the category of an automaton, but it can be used to construct CPU models. 02:52:05 dev_squid: note that "automaton" includes more types than cellular ones 02:52:21 Oh. 02:52:38 Absolutely. 02:52:43 turing machines, for example 02:52:56 (although those are easy to simulate with cellular ones) 02:53:09 You know what'd be cool? An esolang based on the Von Neumann Automaton. :) 02:54:25 Hahah! This looks PERFECT! (http://en.wikipedia.org/wiki/Wireworld) 02:54:56 Wireworld is good fun. 02:55:36 epic http://upload.wikimedia.org/wikipedia/en/f/f9/Golly_Constructor_layout.gif 02:57:37 Oh, you think THAT's epic?! Look at this one... 02:58:08 See the ticker GIF at the top of (http://golly.sourceforge.net/)? 02:58:37 -!- adu has joined. 02:58:45 heh, nice 02:58:54 That's an actual configuration which I BELIEVE is in Game of Life, but I can't tell. 02:58:57 it is 02:59:10 those are LWSS guns, I believe 02:59:11 It's one demo configuration in Golly. 02:59:21 That's sort of unbelievable. :) 02:59:34 actually, I don't know the specific term for those 02:59:45 since they're guns, but only trigger when a glider comes by and reflect the glider 03:03:31 I haven't even looked into Life enough to even know what you're talking about. :) 03:04:18 a spaceship is an element that moves on its own without leaving debris or anything; gliders are the basic spaceships that move diagonally 03:04:29 I see. :) 03:04:32 a gun is a pattern that generates spaceships 03:04:44 Cool. 03:04:46 in the right, you can see gliders going back and forth between reflectors 03:05:22 and when they get reflected on the middle reflectors, they generate horizontal spaceships 03:05:24 which make the pattern 03:06:32 I read in an article once that you could take a turing-complete automaton like Life and build a working program and that it would be the ultimate form of data compression. :) 03:07:12 huh? 03:07:22 why? 03:07:50 dev_squid: Doubtful. 03:08:00 Life takes quite a lot of memory. 03:08:32 Just what I read. 03:08:45 Hey... 03:09:30 So Wireworld is probably what I'm looking for? 03:10:56 * coppro wonders if someone has implemented FSG in Golly 03:16:34 you know, I sort of like this channel without alise being here all the time 03:18:05 What's wrong with alise? 03:19:20 Looks like I'm gonna be addicteed to this thing. 03:22:11 Just some random crap personal stuff. 03:25:33 -!- jcp has quit (Ping timeout: 240 seconds). 03:26:13 dev_squid: alise has a habit of loudly attacking anything he doesn't like 03:26:36 which is sometimes nice, sometimes not 03:27:22 -!- jcp has joined. 03:32:05 -!- jcp1 has joined. 03:32:08 -!- jcp has quit (Ping timeout: 245 seconds). 03:39:01 Ah. 03:39:04 -!- jcp1 has changed nick to jcp. 03:52:13 -!- ruhtranayr has quit (Quit: Leaving). 03:56:34 ....oooohhhkay 03:56:46 I just had deja vu, except it included stuff that did not happen. 04:01:17 -!- lament has quit (Ping timeout: 260 seconds). 04:02:15 -!- augur has joined. 04:02:25 oerjan: hello. 04:02:30 so to continue the previous discussion 04:02:34 noooooo 04:02:53 * oerjan beats augur with the saucepan to induce amnesia ===\__/ 04:03:13 an object that is experiencing the so called "centrifugal" force is an object revolving around some centerpoint 04:03:21 the force being away from that centerpoint 04:03:54 but in the rotating reference frame, the object is not moving at all, and thus is, relative to that frame of reference, not experiencing any forces 04:04:16 and thus there is no centrifugal force on it in the rotating frame of reference 04:05:00 now certainly its true that in the rotating f.o.r. an object stationary in the non-rotating f.o.r. will appear to move in a circle and therefore will appear to be affected by some force 04:05:06 but this force is centripetal 04:05:13 not moving at all isn't the same as not experiencing any forces - it just means the forces cancel out 04:05:29 ok, sure, but then the NET force is zero. 04:06:09 sure you could invent some imaginary centrifugal force that is perfectly counterbalanced by some other centripetal force, in this rotating f.o.r. 04:06:10 note that the object is pushed inward by the walls of the centrifuge 04:06:29 well yes, the object IS pushed inward by the wals of the centrifuge 04:06:33 -!- lament has joined. 04:06:34 but thats a centriPETAL force 04:06:40 not a centrifugal force. 04:07:10 augur: yes, but in the _rotating_ frame that is canceled _by_ the centrifugal force, precisely to allow the net force to be zero 04:07:36 oh i see what you're saying 04:07:42 wow 04:07:46 progress :D 04:08:39 e.g. if you had a mass on a spring, if you calculated the forces acting on the force, you would get that the mass is not experiencing non-zero "gross" force 04:09:10 for instance. im using a spring because the visual reasoning is easier in such a case 04:09:37 um is this spring inside the centrifuge, or is this completely unrelated? 04:09:40 yes, ok, definitely. in the rotating frame there would indeed be a centrifugal force. 04:09:48 yay 04:09:58 object on a spring, revolving around the spring's opposite end 04:10:18 so that the spring is stretched beyond it's normal length 04:11:12 but isnt changing, then if you rotated the f.o.r. with the spring, the spring's tensile properties wouldnt change, so the force must be changing 04:11:46 yes, thats interesting. good point. 04:13:16 i think the xkcd comic should have worded it more carefully. 04:14:08 because when i initially read it, i wasnt thinking in these terms, but rather in terms of just constructing the equations for circular motion in a non-rotating reference frame 04:15:59 mhm 04:17:29 but i think there is good argument that any such derivation of a force is genuinely illegitimate by arguing that rotating frames of reference aren't on the same footing as non-rotating frames of reference 04:18:34 e.g. from a rotating f.o.r. you would have to have some sort of "5th force" 04:19:39 see general relativity - you get something indistinguishable from a gravitation field 04:19:57 not gravitational in natural, but rather different, because it has no source, propogates infinitely fast, radiates in only two dimensions, and has a falloff such that all objects, regardless of mass, have precisely the same revolution rate 04:20:36 oh all objects moving the same regardless of mass _is_ a gravitational feature 04:20:46 aye 04:20:54 sorry no what i meant is distance, not mass. 04:21:15 they have same revolution rate but varying speeds of revolution 04:21:19 true 04:21:27 but this is NOT true of gravity 04:21:39 yeah, that probably has something to do with absence of (nonzero) spacetime curvature 04:21:44 infact, with a rotating frame, things can move faster than light. 04:22:03 yeah 04:22:19 the force seems to be really rather different than gravity 04:22:31 maybe its not, but it seems on its outward appearances to be quite different 04:22:53 sure 04:22:57 so is any force 04:23:11 (except, of course, for gravity) 04:23:16 but they are all indistinguishable from gravity in their effectrs 04:23:36 s/r[^r]+$// 04:24:17 right, but what im saying then is that accepting rotating reference frames as on equal footing with non-rotating references frames necessitates the existence of some sort of 5th force 04:24:29 maybe thats a moot point, right 04:24:44 maybe there is this fifth force, and it is generated by objects rotating 04:24:50 and it really does have these properties 04:25:28 oh food -> 04:25:44 iinm, people have analyzed magnetism as just an illusory relativistic version of the electrostatic force 04:27:08 but i think really the fact that this 5th force is so radically different, has no force carrier particles, is undetectable except by people in the rotating reference frame, etc. suggests that its not genuine. 04:27:29 Hm 04:27:43 i mean, maybe in some sense you could detect the frame dragging of the rotating object, but that would take non-zero time to detect from a non-zero distance 04:27:44 I should probably do something like retaking an online test I scored poorly on soonish 04:27:56 whereas the rotating frame would see this force as propogating instantly 04:28:06 Will be unable to in about half an hour 04:30:29 also, if we assume that rotating reference frames are genuinely as valid as other reference frames, you have a world in which things can accelerate and decelerate at rates that have no correlation with their mass, the and gain and loose energy on a whim for no apparent reason, but everything in the universe experiences these things simultaneously by necessity 04:31:00 augur: btw don't be so sure about no force carrier particles. see http://en.wikipedia.org/wiki/Unruh_effect 04:31:49 let me continue :P 04:31:56 although i guess that could be taken as a way to detect which frames were "really" non-accelerating 04:32:29 i mean, the point is, oerjan, accelerating frames of reference are not equivalent to non-accelerating frames of reference 04:32:51 the laws of physics as observed in them change. this is not true of a constant motion frame of reference 04:33:41 augur: i guess in general relativity it's actually _free-falling_ frames (which are not global btw) which are special, if any 04:33:57 he energy content of the universe would INCREASE 04:34:05 violating the laws of thermodynamics. 04:34:14 -!- Gracenotes has joined. 04:34:19 theres a conclusive reason to take accelerating frames as generally not valid. 04:35:10 augur: ah but you're forgetting gravitational potential. without that, energy is not preserved even in inertial frames i think 04:35:36 im not sure what gravitational potential iss 04:35:46 the sum total of all energy in the Universe is 0 04:35:56 the potential energy due to height differences, say 04:36:14 ah, well, in that case i think it would move above 0 for this sort of thing 04:36:22 unless the fictional force was taken into account maybe 04:37:06 but are you sure it's zero? because a universe of just EM radiation has energy but no gravity 04:37:13 also, the way general relativity really handles this is by saying the coordinate system doesn't actually matter, only the tensors (which change between systems) 04:37:14 so the total energy of the universe cant be zero 04:37:29 augur: there is a theory that the total energy is zero 04:37:34 oh, well. 04:37:49 and that this is how matter/energy could be created in the big bang 04:38:03 the hypothesized zerolity of the universal energy content should not be considered in this discussion ;P 04:38:18 by being offset by negative energy of the space expansion, iiuc 04:38:48 (during the so-called inflation stage) 04:41:34 oh and one more thing, not all solutions to general relativity equations _have_ a meaningful total energy, so a rotating coordinate system may indeed violate that (i don't know) 04:41:59 im not saying its not a potential idea, right 04:42:13 i mean, look, you could say that yes, the laws of the universe are different when viewed in an inertial frame 04:42:16 er 04:42:19 in an accelerating frame 04:42:25 and yes they are just as valid in that frame as well 04:42:29 despite being very different 04:42:39 yet they STILL produce the same universe, isnt that interesting and totally cool 04:42:49 and i'd be on board with that as a queer perspective 04:43:23 but there would still be a little part of me that would want to say "but is it as simple as the non-accelerating frame? because if not, then its probably not real..." 04:44:55 did you look at that unruh article btw? 04:51:34 a little bit. 04:51:53 given that noones actually DETECTED this hypothesized effect... 04:55:56 mhm. it also seems related to hawking radiation, which has the same problem. 04:56:14 how so? 04:56:22 you mean energy content of the universe sorts of problems? 04:56:36 not being detected problem :D 04:56:43 oh 04:56:49 * Sgeo disables tapping on his trackpad 04:56:53 Or whatever it's called 04:56:55 hawking radiation has been detected i think 04:57:04 or maybe its so faint it cant be detected currently 04:57:05 hm 04:57:12 far too faint 04:58:02 it would take a very small black hole to detect 04:58:47 so maybe if the lhc makes some... 04:59:00 (which is very hypothetical afaiu) 04:59:02 also, if the unruh effect IS observable, it seems to only be the emission of photons 04:59:05 not some special force carrier 04:59:36 which makes the unruh effect unlikely to be justifiably said to be the magic force undergirding the force viewed in an accelerating f.o.r. 04:59:39 well the force carrier would be the same as for gravity, since it's the same mathematics... 04:59:57 but the behavior wouldnt look like gravity at all 05:00:34 oh well 05:01:22 all im saying is that i think the rotating frame is arguably not a valid frame of reference. 05:02:10 and that a reasonable observer viewing a video of the universe filmed on a rotating camera would not conclude that the universe had such and such laws 05:02:23 but would instead conclude that the camera was spinning. 05:02:31 and that the universe has the laws we see. 05:03:36 watchmaker 05:03:44 ey? 05:04:06 your argument is like the watchmaker argument 05:04:17 it relies on an assumption of human intuition 05:04:24 which is not valid scientifically 05:08:13 ok, let me rephrase that 05:08:44 i think that in the full space of theories, the simplest one, in all possible formal representations possible, would be the one in which the camera is rotating and the universe is not. 05:13:46 but there are some differences between rotating and non-rotatin unvierses 05:14:00 uh? 05:14:03 so if the universe is rotating, having it not rotate is not a valid interpretation 05:14:30 well 05:14:43 but if the universe IS rotating, then its rotating relative to some non-rotating reference frame 05:14:55 and the simplest laws should still fall out of the non-rotating reference frame 05:15:06 the whole point is that you would discover the universe to BE rotating 05:15:18 whereas with the rotating camera, you dont think the universe is rotating at all 05:15:19 no, that's the fun bit 05:15:32 the universe can rotate relative to nothing in particular 05:15:36 you think the universe genuinely is not rotating, but that it has these crazy laws of physics. 05:15:52 and this gives different results for some things than if it is not 05:15:54 coppro: well sure, in some weird way, but you still describe it as rotating 05:16:01 which is really the point. 05:16:01 note 1: I don't know what thos things are 05:16:07 note 2: Our universe does not rotate 05:16:07 the fact that you understand the universe as rotating 05:16:12 thats the crucial part 05:16:48 if you accept an actually rotating reference frame as being valid, and say that the rotation is not a feature of the reference frame, its all relative 05:16:56 in the same way that inertial references frames are all relative 05:17:24 then you essentiall say that actually no, its acceptable to say the camera isnt rotating, the UNIVERSE is rotating. or the stuff in it is revolving rather. 05:17:27 not like that 05:17:31 which is my point 05:17:45 you cant take rotation to be relative like you take motion to be relative 05:17:46 special relativity would remain valid in a rotating universe 05:17:55 so inertial equivalencies arent rotational equivalences 05:17:59 special relativity might 05:18:05 no, even then it wouldnt 05:18:07 yes 05:18:12 well, in a rotating UNIVERSE, maybe 05:18:15 yes 05:18:19 but im not talking about a rotating universe 05:18:24 you aren't? 05:18:26 im talking about a universe in which the stuff in it is rotating 05:18:34 oh 05:18:40 well, you could have said so 05:18:40 take a camera, spin it. you're not saying a "rotating universe" 05:18:55 well, either perspective is valid 05:19:03 you're seeing a universe that isnt rotating, but in which the objects in it all seem to orbit the camera's viewing axis 05:19:11 but yes, having the camera rotate is much easier 05:19:18 and my point is that i think the second perspective is NOT as valid 05:19:50 because in the grand scheme of things, that hypothesize about the nature of the pictured universe is more complicated than the rotating-camera version 05:20:09 they are both valid 05:20:14 this is general relativity in a nutshell 05:20:20 in the same way that sure, you can say that the sun orbits the earth, and everything else orbits the earth too, only in crazy epicycles at infinitum 05:20:42 sure, thats "equally valid" but its not "equally real" i think. 05:20:51 also, i dont think thats what general relativity says at all. 05:21:08 im willing to bet that general relativity addresses the point in a much finer grained way 05:21:09 define "real" 05:21:14 well, yes 05:21:25 but any and every point of reference is valid 05:21:44 i think the general relativity view would match up with what i mean by valid. 05:22:11 in fact, im CERTAIN it does, because im just mirroring general relativity. 05:22:32 the passage of time is "real" on the accelerating object, hence why the twin paradox exists 05:22:34 can you perform all calculations assuming that everything in the universe is orbiting around a fixed point? yes. Is it useful? no 05:22:48 no no but coppro 05:22:50 thats the thing ok 05:23:07 in general relativity, i think the point is that the UNIVERSE rotating is equally valid 05:23:19 but the UNIVERSE rotating is not the same thing as the stuff IN IT rotating 05:23:22 the twin paradox exists due to the difference in perspective relative to the rest of the universe 05:23:27 right 05:23:30 but thats the point! 05:23:44 the REST universe is not merely the "rest" universe, as in the one not moving 05:23:48 but rather, the one NOT ACCELERATING 05:24:10 the twin paradox ceases to exist if both twins set off in rockets at different times 05:24:27 the twin paradox also ceases to exist if the only two things in the Universe are the two twins 05:24:29 it crucially depends on precisely ONE of them experiencing more acceleration than the other. 05:24:39 no it doesnt cease toe xist 05:25:10 yes, because there is nothing against which to reference the acceleration 05:25:28 ok let me prove to you in a galileian way how you're wrong 05:25:36 suppose that one twin is a pig 05:25:40 as in, loves to eat 05:25:52 he eats SO MUCH that he eats everything in the universe, except his brother 05:26:18 now there are just two things in the universe 05:26:19 the twins 05:26:24 one of which is really _Really_ fat 05:26:39 but according to you, the twin paradox should vanish now 05:27:11 but the relative motions of the masses of the universe is identical 05:27:26 one twin, the thin one, is moving away from the other twin, accelerating at such and such a rate 05:27:43 but this twin being so piggish is merely academic. 05:27:57 we could tie the mass to that twin and the effect would be the same 05:28:12 infact, why bother with the rope, since the masses arent moving relative to one another, we can cut the rope too 05:28:16 and now we're back at the universe as it is 05:28:17 but because there is nothing else to refer to, you can equally say that the other twin is accelerating away 05:28:23 no you cant! 05:28:27 thats the POINT of the twin paradox! 05:28:32 that is NOT what GR says 05:28:44 which breaks down when there is nothing else in the universe 05:28:52 no it doesnt 05:29:00 example: If there is only one particle in the universe, it experiences no force if accelerated 05:29:20 if there is only one particle in the universe, it cant accelerate. 05:29:27 because there would be no forces acting upon it. 05:29:35 modulo quantum weirdness. 05:29:46 a prior theres no forces acting on it 05:29:54 because to have a force acting on it, you need a force carrier particle 05:29:59 thus at least two particles 05:30:20 the only case where the twin paradox can "vanish" is in a case where it cant even happen! 05:30:41 by necessity there is ALWAYS other matter in the universe 05:32:10 you're missing the point 05:32:16 no, _you're_ missing the point 05:32:33 which is that reality doesnt work like you say it does 05:32:36 demonstrably. 05:32:40 as was just demonstrabled. 05:32:47 you never demonstrated it 05:32:51 i just did. 05:33:00 you provided a thought experiment with incorrect conclusions 05:33:07 there is no possible way to accelerate a particle if its the only particle in the universe. 05:33:16 precisely the point 05:33:18 and since the 1-particle-universe is the only one in which you're correct 05:33:28 or rather 05:33:34 the only one in which you could even POSSIBLY be correct 05:33:51 and since we know that in THAT universe, theres no actual way for you to be correct 05:33:54 you must not be correct. 05:34:00 I'd find you a paper, except the book I have which cites it is upstairs and I don't feel like paging through it 05:34:15 you'd find me a paper and i would show you why the paper agrees with me ;) 05:35:34 maybe you're right in some imaginary not-real universe in which force and thus acceleration isnt transmitted by force carriers 05:35:36 maybe you're right 05:35:47 but thats a universe that doesn't exist. 05:36:11 the real universe is one in which the non-accelerating frame is the true frame of reference. 05:38:05 I shall conclude this argument with a brief quote from Wikipedia 05:38:07 "As part of the general theory, all reference frames are equivalent, even rotating frames. " 05:38:40 yes, but like i said, i think the GR notion of "equivalence" is different than what we're using here. 05:40:56 i think the GR notion of equivalence is closer to "has a consistent physical analysis that can describe the same physical phenomena" 05:41:06 e.g. a symmetry 05:41:51 and i think that is entirely true. im willing to BET that rotating reference frames, like the rotating camera, DEMAND general relativity in order to describe them correctly. 05:42:43 that is, if physicists from another dimension saw a video taken on a rotating camera, they'd have to invent general relativity to fully describe the physical laws they saw, if they were assuming that the camera wasn't rotating but that the rest of the universe's objects were revolving around some point. 05:42:48 i would BET that that is true. 05:42:52 -!- jcp has quit (Ping timeout: 276 seconds). 05:43:07 quite possibly 05:43:43 but surely they'd have to invent it anyways, as it is a required part of describing all phenomena in a non-rotating universe as well? 05:44:49 well, not necessarily. i mean, maybe its true that a priori the laws of physics make this so, regardless of the laws of physics 05:45:17 but maybe not. it could entirely be that what we're calling general relativity is just an artifact of our incorrect assumptions about the nature of the universe 05:45:29 and that its merely an illusion 05:45:31 for instance, newtonian gravity would be insufficient 05:45:41 sure, but you'd have this 5th force remember 05:45:45 plus god knows what else 05:45:53 newtonian gravity couldnt even be conceived of 05:46:17 the entire set of laws would be different 05:46:25 I mean in a non-rotating frame of reference 05:46:29 oh, sure 05:49:07 so either way they'd have to construct the same laws in the end 05:49:17 -!- jcp has joined. 05:49:46 well, laws that would, i really really suspect, but relatable VIA general relativity 05:51:21 huh? 05:52:04 i think it would be general relativity that would relate the two different versions of physics. that GR provides the isomorphism, hence why it IS true that rotating frames are "equivalent" 05:52:45 but thats a hunch, i dont know. 05:53:12 but i think that GR is necessary to describe our universe precisely because you need to be able to do that kind of isomorphism 05:53:21 or whatever kind of morphism it'd be 05:54:24 I'm sort of confused now 05:54:44 nevermind :p 05:54:53 ok 06:00:42 -!- lament has quit (Ping timeout: 252 seconds). 06:02:16 -!- lament has joined. 06:03:16 -!- oerjan has quit (Quit: Good night). 06:06:34 coppro: ok, heres my explanation of what i meant 06:06:42 i think that if you tried to describe the cameraverse 06:06:58 you would read a point where you would invent the _exact_ same GR equations 06:07:21 and in doing so, camera einstein would draw the same conclusions about rotating reference frames 06:07:35 because in cameraverse, a rotating reference frame makes the universe look like realverse 06:08:37 not merely that you would have to invent some sort of equivalent of GR, but that the equations of GR are the same regardless of the starting point, because they're equations that relate different models of physical law 06:08:46 rather than equations that merely describe a new kind of physical law 06:10:29 Okay, I agree 06:10:43 thats my suspicion 06:10:50 now explain how you didn't just prove the equivalence of a universe with nothing rotating and with everything rotating? 06:11:13 well, i think thats the _GR_ notion of equivalence 06:11:31 your argument is that you would make the exact same equations 06:11:36 therefore they are not equivalent? 06:11:40 but thats not the notion of equivalence that i was using in this discussion. actually, i tried to stick to "equally valid" but whatever 06:11:50 theyre GR equivalent, yes. 06:11:56 but i dont think they're equally _valid_ 06:12:06 what do you define as equally valid? 06:12:32 more real, in a deutchean sense of real 06:12:41 deutschean** 06:12:56 I don't quite follow 06:13:06 that is, if you have two models, one of which is simpler, and the other is just a coy rephrasing of the one, by playing some complication tricks 06:13:10 namely because I don't know that word 06:13:25 then the simpler one is more valid as a view on what reality is like 06:13:37 I disagree 06:13:39 e.g. sure, epicycles can model the solarsystem perfectly well 06:13:48 -!- jcp has quit (Remote host closed the connection). 06:14:20 but the heliocentric solar system is simpler, the epicyclic model merely looks like a convoluted attempt to describe a heliocentric model as if it were geocentric 06:14:29 complexity is not, in my mind, the reason that the geocentric system is incorrect 06:14:33 so the heliocentric model is more valid as a guess as to what reality is like. 06:14:54 well, but coppro, you can certainly construct some insane physical theory in which the universe _IS_ geocentric 06:15:10 augur: Sure, but the planets would still rotate the sun 06:15:17 well no thats my point 06:15:18 (the other planets, that is) 06:15:26 you could construct a version where the planets DONT revolve around the sun 06:15:28 they just APPEAR to 06:15:46 only superficially 06:15:53 ah but what is superficial? 06:15:58 this is just reference frame stuff 06:16:04 Superficial in the sense that it would only function so far 06:16:11 no i dont think so 06:16:30 i think it would be completely possible to have a model of physics in which the entire thing is consistent with known facts AND is geocentric 06:16:35 you would have to invent relativity and quantum mechanics at some point 06:16:59 well, at that point we're not talking about solar-system centricity anymore 06:17:05 but we are 06:17:09 no 06:17:10 the universe needs to be taken as a whole 06:17:19 yes, but thats what im saying 06:17:54 if you believe the universe is geocentric, which is to say that it revolves around the earth, as opposed to its center of mass (if one exists), i think the laws could still work out 06:17:59 but they'd be complicated as hell 06:18:17 or maybe they'd just be some sort of vector translation over current laws, who knows 06:18:38 this is why, for instance, Newtonian mechanics failed at describing the precession of Mercury accurately 06:19:03 sure, but that doesnt mean you cant embellish the theory further and further 06:19:16 i think it would be entirely possible to embellish 06:19:31 i just think the embellishments would be some sort of coy recoding of heliocentricity 06:19:41 You can 06:19:45 and thats my point 06:19:58 you have this intuition that coy recoding is not a valid translation of reference frames 06:20:08 If you embellished it enough, you would result at a theory as accurate as general relativity that was far more complex but equally valid 06:20:09 and i think that the GR-rotating-frame thing is merely a coy recoding. 06:20:21 I do not have such an intuition 06:20:36 you apparently have this belief that heliocentrism is more valid than geocentrism 06:20:38 therefore you do. 06:21:05 unless you're changing your mind and saying that yeah what the heck, the solar system is geocentric and the different embellished physics is just as valid. 06:21:32 I have a belief that no one has yet come up with any geocentric theory as accurate as our heliocentric ones 06:22:01 true, but who's been trying for the last 500 years. 06:22:06 A geocentric theory, if embellished to the point of agreeing precisely with our best heliocentric theories, will be accurate 06:22:08 and thus valid 06:22:11 and why bother? itll be a horrendous theory 06:22:29 the heliocentric solarsystem is simpler, makes more sense, etc. 06:22:38 its just better 06:22:57 and i would say a more valid model of what the universe is REALLY like 06:23:08 Oh, I completely agree 06:23:15 the heliocentric model would be much cleaner and nicer 06:23:17 but no more valid 06:23:22 im just taking david deutscher's line here, btw. 06:23:33 do note that you must include the other criterion of theoretical validity though 06:23:35 er, deutsch** 06:23:42 which is the amount of prediction a theory makes 06:23:55 well, im considering equally accurate models. 06:24:17 if your geocentric theory cannot accomodate a brand new object placed somewhere between here and the sun without manually finangling with it, the theory is less valid, since our heliocentric theory can 06:24:28 i mean, this is verging on metaphysics here, ill be honest, ok 06:24:49 two completely extensionally equivalent models can, i think, differ in how valid they are as models of reality 06:24:52 simplicity is not, in and of itself, a test of validity 06:24:57 in my opinion 06:25:06 i dont care about your opinion. this is obvious. :P 06:25:11 no, it's intuitive 06:25:20 which is different from correct 06:25:22 i think reality is simple. 06:25:25 see: Paley's watchmaker argument 06:25:31 fact: reality is not simple 06:25:37 his watchmaker argument is unrelated to this. 06:25:41 not at all 06:25:44 yes, it is. 06:25:50 your falling prey to the exact same fallacy 06:25:54 no, i'm not. 06:26:02 because his argument is in FAVOR of simplicity. 06:26:27 well, the argument against his argument, rather. 06:26:38 evolutionary biology is simpler than God. 06:26:42 this is why paley is wrong. 06:26:54 that's not why Paley is wrong 06:27:03 i just believe occam's razor wholeheartedly 06:27:15 Paley is wrong because his argument starts with the assumption that the watch is too complex to be natural 06:27:19 i dont think occam's razor is a methodological tool, i think its a fact about reality. 06:27:36 augur: do you know anything about quantum physics? How the fuck is that simple? 06:27:51 augur 06:28:01 quantum mechanics is probability in 3 dimensions, or something along those lines. 06:28:16 *augur: Think about math. There is a set-theoretical definition of the integers that is just as valid as the version that just uses numerals 06:28:22 its actually quite beautifully simple when you work it out from a non-historigenic perspective. 06:28:34 the fact that it is more complex does not make it incorrect 06:29:04 you can derive the core weirdness of QM almost entirely from taking normal probability and augmenting it with like one extra dimension for degrees of freedom, or something like that. 06:29:26 coppro: i didnt say incorrect 06:29:28 you're not listening 06:29:34 i said less real. 06:30:17 you said less valid 06:30:27 yes, valid, as a model of whats real. 06:30:40 This conversation becomes a billion times funnier if I replace "non-historigenic" by "non-hystorigenic" 06:30:52 which is to say, how close it is to looking like the way the thing actually is 06:30:52 valid only has one meaning with regards to theories 06:30:57 as I've explained 06:31:08 #1: Does it match all observations 06:31:12 #2: Does it make predictions 06:31:15 well luckily the original context of its use in this discussion wasnt in regards to theories! 06:31:25 Sure it was 06:31:29 but rather in regards to frames of reference 06:31:34 a frame of reference is not a theory 06:31:35 All physical laws are theories 06:31:44 yes but a frame of reference isnt a physical law. 06:31:55 In the context in which you are using it, it is 06:32:02 we've drifted over into the physical law territory at this point 06:32:03 yes this is true 06:32:38 but we started with frames of reference, and i assumed that an intelligent person like you would be smart enough to understand that the word was being used to mean the same thing, despite the conventionally different usage when applied to theories 06:32:52 now, as I said, a theory could be considered more valid because it makes more predictions 06:33:07 as i said coppro, you're wrong. 06:33:12 why? 06:33:27 because the sense of valid i have been using throughout the conversation is the one i started with 06:33:36 which happens to have been used in a context of frames of reference, not theories 06:33:43 I disagree that there is any significant difference 06:33:53 and i dont give a shit 06:33:57 because there IS a difference. 06:34:02 a frame of reference is not a theory. 06:34:17 therefore your idea of validity for theories is irrelevant. 06:34:20 There is a theory of which frame of reference is correct 06:34:29 if you disagree with this, then were merely arguing over the lexical semantics of the word "valid" 06:34:40 in which case this isnt an argument at all 06:34:44 but rather a miscommunication 06:34:57 it may be a miscommunication, but the fundamental argument is still there 06:35:02 but its not 06:35:10 because a frame of reference is simply not a theory 06:35:36 as I do not believe that there is any particular reason why a rotating frame against a static universe is any more real or valid than a static frame against a rotating universe 06:35:54 which is your fundamental point 06:36:14 yes, but as ive already said, i believe that there is. 06:36:20 whether you AGREE with that or not is not relevant. 06:37:28 what it comes down to is in many ways theory-related in nature tho, this is definitely true, but again, as ive said even so far as theories are concerned, i believe that two equally accurate theories can differ in how similar the theory-qua-intension reflects the actual structure of reality 06:37:37 Right, and I do not agree 06:37:40 which is the point of this argumen 06:37:42 *argument 06:37:47 we are arguing over the point I just described 06:37:50 how many types of types are there? 06:37:55 adu: infinitely many. 06:38:08 wow 06:38:41 coppro: since there is no actual way to resolve this dispute, as i have said multiple times: your disagreement with what i think doesn't matter. 06:38:56 there's gotta be a way to simplify that, like maybe oo/2 or something 06:39:08 its even worse, adu 06:39:18 augur: so now you are not only telling me that I am wrong, but that my opinion does not matter; welcome to /ignore 06:39:26 there are as many types as the largest kind of infinity 06:39:34 and since there is no largest infinity, you're fucked D: 06:39:57 coppro: im saying that it doesnt matter because its not something that we can argue over and come to a conclusion. 06:40:17 what about constructive type theory, like X is a type, and F is a function type, so F X is a type 06:40:36 then there would be 2 types of type 06:40:38 that probably doesnt change anything. 06:41:03 because you can define horizontal types of arbitrary number 06:41:15 horizontal?!? 06:41:20 yes 06:41:34 do you mean different names? 06:41:37 within type theory you can view types as existing in two-ish dimensions 06:41:49 so consider the following types: 06:41:53 Integer, String, Boolean 06:42:02 k 06:42:09 now consider Integer -> Boolean, Boolean -> Boolean -> Boolean, etc. 06:42:14 * adu considers 06:42:23 the latter two are dependent upon the existence of the previous three, right? 06:42:28 theyre built out of them, in some sense 06:42:41 yes 06:42:48 we could describe this relation as a horizontal type distinction 06:43:07 the differences between Integer, String, and Boolean, however, are not the same 06:43:12 they're horizontally related 06:43:21 You could imagine a type system with only horizontal types 06:43:29 e.g. a language in which you dont have function ty 06:43:30 types 06:43:44 at least, you dont have function types in any salient sense 06:44:14 e.g. C, in which sure maybe you have function types associated with functions, but function types arent of the same ontological status in the type system as value types are 06:44:54 you cannot, for instance, do higher order functions, so function types in C arent really things that you can talk about like you can with value types 06:45:05 you could, however, have the reverse -- a system with only function types 06:45:21 and one "horizontal" type, in some sense 06:45:34 My C compiler offers first-class functions. 06:45:44 a system in which non-functions are of type Value, and everything else is a function type of some sort 06:45:57 pikhq: C99+yaddayadda whatever it is that they use at apple now? 06:46:08 Clang. 06:46:18 I don't have an Apple system. 06:46:19 the newest versions of C, as forked by apple i think, have higher order functions, which necessitates real function types. which is pretty cool. 06:46:39 but the point is understandable i think. 06:46:54 function types and value types really different in some sense conceptually 06:47:01 no, it does not offer first-class functions 06:47:05 it offers blocks 06:47:20 coppro: well, the versions ive seen have first class functions. 06:47:42 which may be called blocks, but in-language they're indistinguishable from functions, as far as i can tell. 06:48:27 and are distinct from blocks in the normal sense of the word in programming where the clauses of an if statement are blocks. 06:49:05 coppro: "Blocks" are a first-class function type. 06:49:14 Which happen to be distinct form normal functions. 06:49:31 Erm. From. 06:49:55 Technically correct, though misleading in the context of C 06:50:16 But they're functions and they're first-class values. 06:50:37 What more do you want, aside from being able to implicitly cast from function pointers to block pointers? 06:50:57 (and vice versa) 06:53:16 coppro: again, given that the C was used merely as an example to intelligent people capable of understanding the nature of the nit picky details in terminology, it should be relatively clear that your pedantic distinctions are pointless, because we already knew everything you're saying, or would be fully capable of understanding the trivial distinctions being made. 06:53:51 you seem to have significant problems carrying on normal discourses. 06:56:39 this is one of the problems with me being a linguist. ive actually done research on what constitutes successful conversations, and can identify failures, and yet am powerless to correct them. 06:58:22 -!- FireFly has joined. 06:59:04 -!- kar8nga has joined. 07:01:30 -!- tombom has joined. 07:11:00 http://trololololololololololo.com/ 07:11:03 augur: Ouch. 07:11:09 ey? 07:14:49 -!- jcp has joined. 07:15:31 augur: He's a good ... "singer"? Although I'm not convinced that he's human. 07:16:04 Gregor: well, he IS russian. so. 07:16:08 I'm also not sure what the point of this web site is ... I assumed at some point he'd start going "lol lol lol" and it would just loop him like that forever,. 07:16:12 not even russian, he's SOVIET 07:16:32 this is an actual video from the soviet union 07:16:43 so i dont think there needs to be such a thing as you described 07:16:53 -!- coppro has quit (Remote host closed the connection). 07:19:11 Well yeah, it's weird, I just don't get why this web page exists :P 07:20:20 gregor 07:20:33 Yeah, that's me. 07:20:36 youve been on the web HOW long and still havent realized that webpages dont need reasons? 07:20:40 :P 07:20:43 Touché, sir. 07:20:49 I bought onero.us and sibeli.us today :P 07:21:02 HAVE YA HEARD ABOUT THAT YTMND.COM YET NA? 07:21:12 That I /really/ don't get. 07:27:27 -!- adu has quit (Quit: adu). 07:53:36 -!- tombom has quit (Quit: Leaving). 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 09:06:25 -!- lereah_ has joined. 09:09:03 -!- MigoMipo has joined. 09:28:40 -!- lifthrasiir has quit (Ping timeout: 240 seconds). 09:32:06 -!- jcp has quit (Quit: I will do anything (almost) for a new router.). 09:35:26 -!- lifthrasiir has joined. 09:52:46 -!- kar8nga has quit (Remote host closed the connection). 10:34:15 -!- dev_squid has quit (Ping timeout: 276 seconds). 10:44:42 -!- Slereah has quit (Ping timeout: 248 seconds). 10:49:14 -!- Slereah has joined. 11:08:13 argh 11:08:43 horrible music interrupted by "you now have place number 5 in the queue" 11:19:05 (what happened? Well, had to call IBM/Lenvo telephone support, then get told the reseller didn't register with them when the computer was sold, so had to call *their* telephone support as well) 11:19:11 (the latter had the horrible music) 11:20:43 (not even the usual simply bad music... Much worse, rap music...) 11:28:37 Telephone support systems tend to have the oddest audible experiences. 11:29:44 Compounded by the fact that the codecs used in GSM/3G networks do a really horrible job on any sort of music, they're so heavily speech-optimized. 11:41:25 -!- cheater has quit (Ping timeout: 245 seconds). 11:45:11 -!- cheater has joined. 11:59:15 -!- BeholdMyGlory has joined. 11:59:18 -!- BeholdMyGlory has quit (Changing host). 11:59:19 -!- BeholdMyGlory has joined. 12:15:38 Compounded by the fact that the codecs used in GSM/3G networks do a really horrible job on any sort of music, they're so heavily speech-optimized. <-- hm? 12:15:51 fizzie, I doubt that applies when I used a non-cell phone 12:15:53 as in, land line 12:15:59 Yes, I was sort of assuming a cell phone there. 12:16:07 why? 12:16:12 It's 2010, man! 12:16:18 that would be more expensive than using the land line to call 12:16:42 fizzie, but it was a wireless land line phone at least 12:16:55 I could have used the non-wireless one in the next room instead 12:16:56 Anyway, the current land-line digital networks are a bit speech-optimized too, though not as badly by far. 12:16:59 would have been somewhat more awkward 12:19:44 I guess the worst part about landline telephone music is that they only transfer frequencies in the [200, 3400] Hz range. 12:20:06 fizzie, GSM/EDGE/3G transfers more? 12:20:15 No, they're equally horrible. 12:20:19 ah 12:20:40 hm 12:20:52 Except 3G's AMR-WB wideband codec, which goes up to something like 7 kHz, but from what I hear, no operator (except some really strange never-heard country) has actually enabled that in their networks. 12:21:03 -!- MizardX has joined. 12:21:19 fizzie, what about low freqs? 12:22:06 It might have gone a bit lower there too, though I don't really recall. 12:23:10 fizzie, I'm able to hit some low notes with my voice (I suck at hitting a specific one _reliably_ though ;)) 12:23:57 (I can read below 200 Hz pretty easily unless I misremember. But not in everyday speech I guess) 12:24:01 Humans are pretty good at picking up the "real" pitch from the harmonics even if the transport channel actually filters it, physically speaking. 12:24:09 s/read/hit/ 12:24:20 (weird typo, was trying to to two things at once) 12:24:42 fizzie, hm interesting. From overtones I guess? 12:25:00 Case in point: a usual fundamental frequency for normal male speech is around 100 Hz, yet no-one notices that much even though telephone systems generally have a huge attenuation at that low frequencies. 12:25:20 -!- alise has joined. 12:25:28 fizzie, I can hit just above the lowest C on a standard piano with my voice though 12:26:14 I don't really know very much on the biology side of how auditory perception works, except that the ear is a strange thing, and what goes on after the ear is even less simple. 12:26:35 I don't quite reach it. Of course it doesn't actually sound good at the lowest bit. For something I actually could *speak* in it would be maybe one octave higher I guesstimate 12:29:36 Well, the "middle C" is around 260 Hz, and I assume that "middle" on the piano; is the lowest C three octaves downward? 12:29:51 If it is, that'd be something like 32 Hz. 12:30:03 http://en.wikipedia.org/wiki/Piano_key_frequencies 12:30:19 fizzie, around 32 Hz yes 12:30:58 Right. That's pretty low. 12:31:30 fizzie, I can go past the D just above it, but not quite reach the C or C#. Of course I couldn't actually say anything at this level. Trying to modulate the sound around there to speech just doesn't work. 12:31:52 a bit above it does work for that. 12:32:24 fizzie, so I hit somewhere between 34 and 36 Hz I guess (since I can't quite reach that C# either) 12:33:49 fizzie, ever tried making a noise at the same frequency as the car engine while traveling in car? 12:34:12 Can't say I have. 12:34:14 it feels strange when you hit the same tone. 12:36:13 19:16:34 you know, I sort of like this channel without alise being here all the time 12:36:13 I do logread, you know 12:37:34 alise, so now you have your mac running I see :) 12:37:53 Uh, yes, on top of an ironing board. Very sturdy surface. But I had it running last night. 12:37:58 ah 12:38:12 Shit's got terribly, terribly real with my situation so... so, I don't even know what I was going to put here. 12:42:12 -!- cheater has quit (Ping timeout: 252 seconds). 12:42:36 yay, a 5 on the exam on the first sub-course in the electricity and electronics course 12:42:37 :) 12:42:42 * AnMaster just got the result 12:43:12 (the possible values are U, 3, 4, 5, where U is "not passed") 12:43:15 21:25:36 suppose that one twin is a pig 12:43:16 21:25:40 as in, loves to eat 12:43:16 21:25:52 he eats SO MUCH that he eats everything in the universe, except his brother 12:43:16 plausible 12:43:38 alise, why did augur need to suppose that? 12:43:49 argument about relativity, twin paradox 12:43:50 http://tunes.org/~nef/logs/esoteric/10.03.03 12:43:53 alise, also that would include himself 12:43:57 no 12:43:59 you can't eat yourself. 12:44:16 alise, surely you can eat your own leg for example? 12:44:23 of course, other parts may be harder 12:44:55 oh shush :P 12:46:07 -!- cheater has joined. 12:46:18 -!- BeholdMyGlory has quit (Ping timeout: 248 seconds). 12:46:36 22:12:06 what do you define as equally valid? 12:46:36 augur seems to just be appealing to a sort of ontological notion of "truth beyond truth" 12:46:52 i.e., one truth being /more/ truthy than other truths by way of being more "inherently objective" to the situation 12:46:56 that's just my hunch from reading it though 12:49:34 I don't believe there is an inherent link of simplicity and correctness; that's just a heuristic we use for estimating probability and reasoning and doing science 12:50:48 22:27:19 i dont think occam's razor is a methodological tool, i think its a fact about reality. 12:50:48 delusional 12:51:43 didn't Occam himself use occam's razor for "proving" the existence of god iirc? 12:52:01 22:30:52 which is to say, how close it is to looking like the way the thing actually is 12:52:01 You can only measure this with metaphysics 12:52:10 alise, ^ 12:52:16 Things "actually are" a theory if it predicts them perfectly 12:52:34 Any other distinction is human intuition, and we can select equivalently valid theories based on how much we like them (e.g. simplicity for working with) 12:52:35 That's all. 12:53:13 22:37:50 how many types of types are there? 12:53:14 Set : Set1 12:53:16 Set1 : Set2 12:53:17 and so on 12:53:31 :P 12:53:41 alise, countably infinite then? 12:53:50 oh wait, no 12:53:50 22:38:41 coppro: since there is no actual way to resolve this dispute, as i have said multiple times: your disagreement with what i think doesn't matter. 12:53:51 I can defeat your position with your position. 12:54:30 augur: It is simpler to assume that all theories that are equally valid-as-predictors are equally valid, than to introduce an entire notion of metaphysics where some theory is more correct than another simply because it is simpler. 12:54:40 Since the former is simpler, it is true; therefore theories are not more valid just because they are simpler. 12:54:44 Contradiction, bitchnizzle! 12:55:47 alise, nice one 12:57:06 22:56:39 this is one of the problems with me being a linguist. ive actually done research on what constitutes successful conversations, and can identify failures, and yet am powerless to correct them. 12:57:06 Woe that the world is so much dumber than I! 12:57:12 Go slit your wrists or something 12:57:14 :P 13:00:54 ooh nice google holiday logo 13:21:56 hello sweeties 13:33:35 * alise attempts to find an ULV laptop 14:16:29 -!- alise has quit (Quit: alise). 14:38:48 -!- FireFly has quit (Quit: Leaving). 15:36:01 AnMaster: I think I've found two (closely related) bugs in cfunge's y-with-positive-argument 15:37:33 1) It skips over the terminating null of the environment variables (i.e. the additional one which terminates them all) 15:39:27 2) It pushes some nonsense value instead of that null, I think 15:39:46 In which case I'd actually call it one bug, I changed my mind a bit there between 1) and 2) 15:40:13 No, wait, I was right the first time 15:41:08 2) It seems to push an incorrect value if asked for the topmost value on the stack (i.e. argument = number of cells it pushes (+-1?)) 15:43:04 -!- cpressey has joined. 15:43:26 Deewiant, hm 15:43:54 Deewiant, test cases for these? 15:43:54 You can test with the following (warning: infinite-looping, use head -n{number of cells it pushes} to terminate it): 1> #;:.:y#@.a#@,1+#;< 15:44:06 hm 15:44:15 Deewiant, what do you mean with the second one 15:44:23 " 2) It seems to push an incorrect value if asked for the topmost value on the stack (i.e. argument = number of cells it pushes (+-1?))" 15:44:39 -!- MigoMipo has quit (Remote host closed the connection). 15:44:40 I mean y used as a pick instruction to pick the topmost value on the stack 15:44:47 hm 15:44:50 That test program basically runs Xy for every X, looping forever 15:44:56 X greater than 0 15:44:57 -!- MigoMipo has joined. 15:45:31 On my machine, cfunge prints there "2751 56" "2752 0" "2753 32785" and then an infinite number of zeroes 15:46:00 For 2), that should be "2753 2753" 15:46:35 And for 1), there should be another zero in between those two nonzero values 15:47:14 CCBI2 prints "2749 56" "2750 0" "2751 0" "2752 2752" and I think it's right. :-P 15:47:30 (Off-by-one because args[0] is "ccbi" not "cfunge") 15:47:33 hm 15:47:45 Deewiant, I get this before the inf zeros: 15:47:46 Hmm, actually it should be off-by-two 15:47:52 2536 105 15:47:53 2537 100 15:47:53 2538 0 15:47:53 2539 32785 15:47:58 Right 15:48:00 indeed weird 15:48:44 Deewiant, and long live valgrind 15:49:34 Oh right, it's off-by-one and not two because cfunge only prints one zero >_< 15:49:58 Deewiant, hm? 15:50:20 AnMaster: Just confusing myself, not important :-P 15:50:29 -!- MizardX has quit (Read error: Connection reset by peer). 15:50:43 -!- MizardX has joined. 15:50:57 Deewiant, so what are the bugs then? That it gets a invalid read somewhere there? 15:51:08 Is the other bug caused by it or not? 15:51:09 What I said 15:51:11 You're missing a zero 15:51:17 And you're printing 32785 instead of 2539 15:51:21 Er, pushing 15:51:23 Same difference 15:51:48 Deewiant, I am pushing an extra zero it seems when looking at things 15:52:09 I begin with pushing a zero, then all the env vars? 15:52:31 You're supposed to push that zero, it's the one that terminates the list of env vars 15:52:46 Deewiant, yes, I said it is being done there as far as I can tell 15:53:08 That program should be printing two zeroes before 2539 (32785) 15:53:18 The first zero terminates the last env var 15:53:22 The second terminates the list of env vars 15:53:30 Deewiant, do you have a good/bad test case for this? I'm not completely sure what exactly the expected result is, and since env variables differ... 15:53:31 Under cfunge, it's only printing one zero 15:53:47 AnMaster: Two zeroes. Regardless of env variables (except if you have none at all) 15:54:13 AnMaster: Since the stack is supposed to look like " 0 0gnirts 0gnirts ..." 15:54:26 Deewiant, well the 32785 looks like it is out of range value 15:54:44 Quite possibly 15:54:49 Attaching to program: /proc/16804/fd/1014, process 16804 15:54:49 0x000000000040e351 in stack_get_index (stack=0x6008520, index=0) at /home/arvid/src/own/cfunge/trunk/src/stack.c:181 15:54:49 181 return stack->entries[index - 1]; 15:54:49 (gdb) print index 15:54:49 $1 = 0 15:54:52 yeah right... 15:54:54 :-) 15:55:17 Maybe if you fix that the other problem will fix itself... 15:55:33 AnMaster: Also, is there a replacement for rage.kuonet.org? 15:55:50 so 1 should be first element it seems hstack_get_indexm 15:55:51 hm* 15:55:52 I.e. a homepagey-type thing 15:56:00 * AnMaster kicks synergy's copy paste failure 15:56:08 Or should I just pull from launchpad these days 15:56:08 Deewiant, I don't have one no 15:56:13 Deewiant, launchpad yes 15:56:26 also I'm trying to figure out what stack_get_index() is supposed to do 15:56:33 :-D 15:57:03 Deewiant, well actually it seems to do the right thing. But the caller is not 15:57:33 element 1 is supposed to be the first element from base (yes it is one-based, not zero-based, for technical reasons iirc) 15:58:06 Deewiant, doesn't mycology test y as pick though 15:58:26 Not that much :_P 15:58:28 :-P* 15:58:48 It tests basically picking the 10th cell from the top or something 15:59:02 Can't remember exactly 15:59:42 well my fix broke mycology's check for it 15:59:45 hm 16:00:21 The check probably isn't incorrect since CCBI2 passes that as well 16:01:16 Deewiant, would be useful if you could make a GOOD/BAD test for this. 16:01:47 For the 32785 thing it's relatively easy, for the other one it's a bit of a pain 16:02:00 Deewiant, well, they are definitely related 16:02:06 same underlying cause I think 16:02:15 Deewiant, does 0y push the double zero? 16:03:04 It should. 16:03:11 You can obviously test for that yourself. 16:04:59 -!- MissPiggy has joined. 16:05:15 hm that works correctly as far as I can tell 16:05:28 stack is at bottom 0 0 100 16:07:09 Deewiant, does mycology test FRTH? 16:07:16 Yes 16:07:18 good 16:07:30 then I can just run one program and grep for BAD 16:08:34 -!- Gracenotes has quit (Ping timeout: 264 seconds). 16:10:23 -!- asiekierka has joined. 16:11:48 alise talks too much. 16:12:06 I hear she talks to Bob a lot 16:12:24 Microsoft Bob? 16:12:34 Just plain old Bob 16:12:38 No, Microsoft Bob Beta 1 16:12:43 because RTMs are boring 16:12:45 o god 16:12:49 Or Microsoft Sam, maybe 16:12:55 though i think I'd prefer Bob 16:12:59 honestly, at least he has craphics 16:14:57 Deewiant, did you say 2538 was correct value? 16:15:14 It should be the same as the index 16:15:21 hm okay 16:16:01 Deewiant, still it doesn't explain the missing zero 16:16:21 Then you have to figure out what does explain it :-P 16:18:08 Deewiant, hm, can you tell me if the values around index 23-26 seems correct in the cfunge output? 16:18:38 specifically 23, 24 and 25 16:18:53 The diff cfunge->ccbi2 shows only differences as: handprint, version, cell size, time, argv[0], and those bugs 16:19:41 so you get 23->1 24->46 25->46 ? 16:20:18 23->1 24->97 actually but yeah 16:20:31 Deewiant, 25 is also 97? 16:21:15 Why should it be? 16:21:27 Deewiant, what exactly is indexes 24 and 25 hm.. 16:21:37 That's the first funge argument 16:21:39 I.e. the name of the file 16:21:45 ah 16:21:52 It's "arst.b98" here so 24 is 97 (a) and 25 is 114 (r) 16:22:01 ../tests/y-test.b98 16:22:03 so yeah 16:22:28 so that explanation didn't work then 16:22:29 -!- augur has quit (Ping timeout: 268 seconds). 16:24:29 hm it seems mycology is still broken from this 16:25:10 Deewiant, argv format, how many zero bytes should there be between that the the env vars? 16:25:14 -!- Gracenotes has joined. 16:25:28 19. a series of sequences of characters (strings), each terminated by a null, the series terminated by an additional double null, containing the command-line arguments. (env) 16:25:34 20. a series of strings, each terminated by a null, the series terminated by an additional null, containing the environment variables. (env) 16:25:55 Deewiant, so 3 zeros in total between env and argv? 16:26:53 Deewiant, no? 16:27:01 Well, two zeroes in addition to the one which terminates the last arg, yes 16:27:06 right 16:27:20 and only one extra zero below the env vars 16:27:24 hm 16:30:02 That makes a certain twisted kind of sense in that the double null is to allow (isolated) empty arguments, but it's impossible on most if not all OSs to have an empty environment variable 16:30:37 Deewiant, is it? 16:30:46 Deewiant, ./cfunge foo.b98 "" "" "" 16:30:46 What would it even mean? 16:30:54 I think that should do it? 16:31:02 Do what? 16:31:32 oh I thought you said "impossible [...] to have an empty argument" 16:32:40 Deewiant, and yeah, I can't imagine how you can get anything shorter than "X=", where X is any letter 16:33:13 Yep 16:35:53 -!- kar8nga has joined. 16:39:13 Deewiant, I have a fix for both, however since this changed some things that FRTH and y are the only users of I need to carefully test FRTH with edge case arguments 16:39:19 before I can push this 16:39:38 * AnMaster tries to remember the semanics for FRTH P 16:41:17 Deewiant, http://rcfunge98.com/rcsfingers.html#FRTH doesn't say if P should start indexing at top or bottom 16:42:52 Well, it *is* called "*Forth* pick command". 16:43:12 fizzie, and I don't know forth, I remember checking some forth manual for these when I implemented it 16:43:20 6.2.2030 PICK 16:43:20 CORE EXT 16:43:20 ( xu ... x1 x0 u -- xu ... x1 x0 xu ) 16:43:20 Remove u. Copy the xu to the top of the stack. An ambiguous condition exists if there are less than u+2 items on the stack before PICK is executed. 16:43:20 but I don't remember what the actual semantics were 16:43:43 Where right side is the top. 16:43:50 fizzie, so 0 is top item? then 1 is the one below? 16:44:09 well, after popping the count 16:44:14 Yes. "0 pick" does the same as "dup". 16:49:04 also I saw a way to optimise y as pick to be faster after first run. will probably implement that later 16:49:19 (except no one uses that...) 16:50:23 What way's that 16:51:54 Deewiant, caching size of env and arguments. Then add a fixed constant + number of stacks on stack-stack + cached value to get where picking would begon 16:51:56 begin* 16:53:30 fizzie, what is forth -roll btw? 16:53:44 I thought you already did something like that? 16:53:49 -!- lereah_ has quit (Remote host closed the connection). 16:53:50 Deewiant, not quite 16:55:24 btw it seems http://rcfunge98.com/rcsfingers.html#FRTH was retconned to mean that negative arguments to L should not reflect 16:55:32 if he at least could provide a change log 16:56:04 (not that I'm going to change things here...) 16:56:31 -!- augur has joined. 16:58:09 AnMaster: Intuitively I would expect "-roll" to be the same thing as "roll" except rotating to the other direction, but I can't actually find it in the standard. 16:58:29 aha 16:59:21 fizzie: I think it was an extension, I found it in some manual. 16:59:28 I should then make it error out I guess, unless you can call undefined forth functions in forth. And thus reflecting is the correct thing to do 16:59:32 -!- tombom has joined. 16:59:35 :) 17:00:37 Deewiant, btw I found a bug in FRTH: when the stack size is greater than range of funge_cell (cfunge always allow stack to grow to size_t-1 in theory 17:00:48 (err, that is max value of size_t) 17:02:16 Deewiant: It could be. Gforth has as an extension "-rot" which is "rot except the other direction", so it's not a completely unexpected extension. 17:02:17 (but if you have a stack larger than 2 GB, I think you have other issues than that) 17:02:48 The stack can easily be larger than 2 GB on a 64-bit system. 17:03:10 Deewiant, pushed fixes 17:03:23 and I was unable to detect any issues with FRTH apart from the above mentioned 17:03:34 Deewiant, sure, but then my answer is: use 64-bit cells 17:03:59 -!- cheater99 has joined. 17:04:00 Deewiant, in which case it now needs to be larger than a signed 64-bit value, but fit in an unsigned one 17:04:15 My point was that you can't say "this doesn't matter that much because you're in other problems at that point anyway" 17:04:32 Deewiant, well, now FRTH will work anyway 17:04:42 -!- jcp has joined. 17:05:05 Deewiant, also yes you have other problems at that point. More than 2 GB RAM isn't still common for the "ships with this much as standard" 17:05:14 s/still/yet 17:05:17 / 17:05:25 If you have enough RAM you have no problems at all 17:05:39 -!- cheater has quit (Ping timeout: 252 seconds). 17:07:30 -!- augur has quit (Ping timeout: 268 seconds). 17:07:53 L( .. n -- .. n)Forth Roll command -- that stack usage description there is a bit strange, because the Forth ROLL word definitely won't leave the n value there afterwards. 17:08:01 Deewiant, is there any system with ~9223.372 petabytes or RAM? 17:08:28 s/or/of/ 17:08:37 AnMaster: 32-bit size_t, not 64-bit 17:09:07 If a 32-bit interpreter is running into size_t limits that's very easily not a problem on a modern 64-bit system (except for the interpreter itself) 17:09:23 Deewiant, um... 17:09:41 Deewiant, you address space will be 4 GB if you have a 32-bit size_t 17:10:01 -!- scarf has joined. 17:10:47 Deewiant, some of that will be taken by kernel mappings iirc. And libraries. Yes you could probably manage more than 2 GB stack if you could malloc() such a huge continuous chunk 17:11:15 actually wait 17:11:21 no you couldn't grow the stack that much 17:11:30 since you need to multiply it by 4 for cell size 17:11:37 AnMaster: If I'm running a chroot or whatever or I'm running cfunge in 32-bit mode I am completely problemless 17:11:41 (or 8 for 64-bit funge cells) 17:12:33 Deewiant, but you see, 4*(2^31-1) is more than you can fit in 2^32 unless I'm completely mistaken 17:12:44 I never said it wasn't 17:13:21 Deewiant, and due to that, it will actually not be possible to get a stack on a 32-bit funge with 32-bit size_t where the stack size doesn't fit in a single funge cell 17:13:22 I said that if you have 2 GB of stack on a 64-bit system you are in no problems at all 17:13:51 Deewiant, indeed. And if you have that then I suggest you get 64-bit funge cells, or accept that y can't give you proper stack size 17:14:19 At that point it still can, but yes, I accept that; of course I do 17:14:24 -!- MizardX- has joined. 17:15:05 Deewiant, well, 2 gibi-funge-cells I mean 17:15:57 which means 8 gigabytes doesn't it? for 32-bit cells 17:16:15 2G funge cells is not what I meant. 17:16:30 Deewiant, that is what I meant all along I think 17:16:42 -!- MizardX has quit (Ping timeout: 248 seconds). 17:16:52 -!- MizardX- has changed nick to MizardX. 17:16:55 -!- dev_squid has joined. 17:17:09 basically, the "issue" is that you can perhaps grow a stack larger than what fits in a funge-cell 17:17:41 Yes, you can, at which point it's expected (by me) that y will push a negative value 17:18:33 -!- augur has joined. 17:18:39 integers tend to do 2's-complement signed overflow in Befunge, don't they? 17:22:33 Deewiant, hm since n*(2^(8n-1)-1) > (2^(8n)) for any integer n > 2; we can't run into the issue if we use funge cells of the same size as the native pointer size. 17:22:46 since for befunge n must be at least 4 17:33:06 scarf: Isn't that what (signed) integers tend to do anywhere nowadays? 17:33:18 yes, I suppose it is 17:34:33 augurithm 17:35:45 Hmm. count = 1; count++;count++;(according to GDB)$8 = 4196080 17:35:55 ... 3 = 4196080. 17:36:00 * pikhq hates C. 17:36:13 you don't hate C :P 17:38:10 !c printf("%x",4196080); 17:38:22 4006f0 17:38:28 hmm 17:38:38 that looks like a pointer value to me 17:38:39 !c printf("%d",0x4196080); 17:38:40 68771968 17:39:39 Yes, being aligned like that and near 0x400000, it looks really rather pointery. 17:39:45 I think that 0x4006f0 is in libc this week. :/ 17:40:00 -!- kar8nga has quit (Remote host closed the connection). 17:40:09 0x400000 and nearby regions tend to be in the executing program, actually. At least on Linux. 17:40:10 Damn. 17:40:13 (prelinked system) 17:40:19 This is just amazing. (http://www.quinapalus.com/wires11.html) 17:40:27 six hex digits, most of which are 0, always looks pointery to me 17:40:33 unless it looks even more strongly like something else 17:40:41 Hmm. count = 1; count++;count++;(according to GDB)$8 = 4196080 17:40:41 ... 3 = 4196080. 17:40:43 what the heck? 17:40:48 dev_squid: is that the WireWorld CPU? 17:40:52 scarf, yes. 17:41:07 * pikhq dumps the prelink table 17:41:16 pikhq, is count a pointer? 17:41:22 scarf, is that not more than enough reason to jizz your pants upon eye contact? 17:41:25 AnMaster: It's an int. 17:41:30 Initialised to 1. 17:41:32 dev_squid: it's pretty impressive 17:41:41 pikhq, so 1+1+1 = 4196080 according to gdb? 17:41:42 it would be even nicer if it could somehow be made TC, say by repeating a region 17:41:48 AnMaster: Yes. 17:42:10 pikhq, does it do something in between those assign and increment? 17:42:12 the program I mean 17:42:15 dev_squid: and the only reason I'm not getting very impressed immediately is that I've seen it before, and things are never quite as impressive the second time 17:42:17 scarf, I find it simply incredible that one can construct entire computer architectures just from a simple set of rules for a cellular automaton. 17:42:19 AnMaster: Comparisons. 17:42:31 pikhq, no assigning elsewhere? 17:42:34 dev_squid: well, the rules for transistors are pretty simple 17:42:39 None. 17:42:40 scarf, that's true. 17:42:49 The function is not even left. 17:42:49 pikhq, then I suggest you put a watch on that value 17:43:08 scarf, I think one of the biggest challenges, once you have the idea in mind, is getting the pulses timed perfectly. 17:43:18 * pikhq shall poke at it again in a bit. 17:43:24 even that isn't too hard with a debugger, you can even do it by trial and error 17:43:29 * scarf remembers his experiences messing with Rubicon 17:43:41 the trick is to be able to test a small bit of it at a time 17:43:50 scarf, you don't even need a debugger. Just a cellular automata simulator. Lawl. :) 17:44:00 that effectively is a debugger 17:44:04 after all, you can see all the internals 17:44:05 Troof. 17:44:16 I can see a lot a trial and error happening. 17:44:32 dev_squid: have you seen Rubicon? http://kevan.org/rubicon/ 17:44:39 it's a computer game based on http://esolangs.org/wiki/RUBE 17:44:45 It's definitely my favorite configuration for any automaton...next is the turing machine in Life. 17:44:50 Oh, NICE. 17:45:17 pikhq, well put a watch on it. And if this is actually C++ I shall kill you 17:46:34 pikhq, also I suggest valgrind, especially with that -tool=exp-ptrcheck 17:46:40 AnMaster: I'm just futzing with my BF interpreter again while drinking coffee to try and wake up. 17:46:58 I decided to make it not use getdelim (a GNU extension), and am now having issues. 17:47:37 pikhq, yes count=1; count++; count++ giving count=4196080 is definitely wrong 17:47:38 scarf, I'm still trying to trace the entire thing. 17:47:48 -!- Gracenotes has quit (Ping timeout: 276 seconds). 17:47:50 And yes, it's C. It's very rare that I write code in C++. 17:47:56 pikhq, but why would a bf interpreter need getdelim at all? 17:48:01 (too much agony to be had there) 17:48:20 AnMaster: Read the entire Brainfuck file into memory. 17:48:25 pikhq, aren't there enough BF interpreters in the world? 17:48:52 dev_squid: Yes. Because they're easy to write, and they can solve boredom for a short period of time. 17:48:55 pikhq, yes and? 17:49:08 AnMaster: ... And then parse the entire thing from memory. 17:49:31 pikhq, I mean, you just read/parse char by char ignoring any non-instructions 17:49:41 Yes. 17:49:44 I wrote my first BF interpreter in x86 Asm...of course, it failed epicly. 17:49:54 There's a reason I'm changing it to *not* use getdelim. ;) 17:49:57 pikhq, [ ] I handle by making my parser recursive 17:50:11 pikhq, I can't even think of how getdelim could be *useful at all* 17:50:13 for this 17:50:21 It's slightly easier. 17:50:25 pikhq, than? 17:50:42 fgetc. 17:51:13 pikhq, mmap and for (i=0; i I think that is what I did in my first bf compiler (which was written in C) 17:51:42 That'd be slightly annoying. 17:51:56 My parser loop is tail recursive. :P 17:52:06 ... As is my interpreter... 17:52:32 pikhq, well fgetc is not really hard you just do a while(c=fgetc(infile)) { switch ... 17:52:43 and then switch on EOF, and the valid instructions 17:52:47 with default doing nothing 17:53:05 Yeah, I'm only having any issues with my +-/>< routines. 17:53:05 pikhq, as for parser being tail recursive: huh 17:53:07 (they RLE) 17:53:07 The way I handled [ was pushing the offset in the source and incrementing my number-of-unbalanced-['s-variable, and popping and jumping if ] was hit and the balance flag was nonzero. :) 17:53:20 It was slightly messy. 17:53:42 well, you are basically emulating a stack there 17:53:58 I just thought "why would I do that, I can just call myself recursively" 17:54:05 then let the C stack do the job 17:54:14 Yes, my handling of loops is non-tailcall recursion. 17:54:14 Because C is nicer. 17:54:18 anyway, I put the instructions in a linked list 17:54:23 with down-links for loops 17:54:24 iirc 17:54:33 As am I. 17:54:55 pikhq, oh? didn't you say it was tail call a second ago? 17:55:00 Hand-optimised the "tail call modulo cons" into a normal tail-call. 17:55:16 You could always construct it in Asm and interface with the C stdlib...what platform are you writing it for? 17:55:16 AnMaster: It is. 17:55:31 AnMaster: Here's an example: bfparse(f, &(*accum)->tail); 17:56:03 static void bfparse(FILE *f, list *accum); // the declaration 17:57:03 -!- tombom_ has joined. 17:59:59 -!- tombom has quit (Ping timeout: 240 seconds). 18:00:41 -!- oklopol has joined. 18:00:43 o 18:00:46 o 18:01:48 ooko 18:02:09 so what if we assumed an impossible object, then proved some properties of it, think there might be incredibly pretty theorems that just happen to require objects that can't be constructed? 18:03:16 what if some of the proofs that true = false => anything, in some logical systems, actually happened to be really interesting, but we just never looked because that would be ridiculously insane 18:03:29 -!- Gracenotes has joined. 18:03:45 we have to ask these questions ppl 18:08:08 well actually we don't. 18:08:54 pikhq, ah... I made mine a while loop and body recursive for [ 18:09:11 lament: you're such a THEIST. 18:09:14 AnMaster: Eh, wouldn't be hard to do that. 18:09:27 Just a matter of manually doing the tail call optimisation. 18:09:39 pikhq, well sure 18:09:47 oh this game rubeicon is going to take time :( 18:09:52 pikhq, but what about tail call for [ ? 18:10:16 ... What tail call? 18:10:19 rubicon? is that a flash game or ascii or what was it? 18:10:29 MissPiggy, iirc I solved all the included levels in about 15 minutes in total first time I played it 18:10:38 It's not a tail call if you then do something afterwards. 18:10:40 oklopol, java 18:10:43 That's just a *call*. 18:10:43 okay cool 18:10:55 well the fact you considered it trivial isn't cool 18:10:56 pikhq, I meant the descending into the loop bodyu 18:10:57 body* 18:11:02 that sucks 18:11:16 AnMaster: Yes, that's not a tail call. 18:11:23 Implementing Brainfuck in CPS would let you pre-allocate a single continuation (because you know the maximum nesting depth) but at that point it's not very different from using your own stack. 18:11:27 pikhq, -_- I know that 18:11:38 pikhq, I just challenged you to make your parser *fully* tail recursive 18:11:42 that's a lot faster than me 18:11:42 Then "what about tail call for [" makes no bloody sense. 18:11:43 even for loop bodies 18:11:46 Ah. 18:11:47 pikhq, ^ 18:12:04 That's a simple matter of manually doing CPS or a stack. 18:12:15 Pointless, but simple. 18:12:22 bbl 18:13:09 -!- angstrom has left (?). 18:19:11 -!- kar8nga has joined. 18:20:53 pikhq, found out why the ++ was broken btw? 18:21:03 No, not been looking at it. 18:21:07 pikhq, a watch out to find exactly where in between it was modified 18:21:19 I strongly doubt that ++ itself adds more than 1 18:34:41 that game pissed me off 18:34:48 it doesn't save your plcae 18:39:54 MissPiggy, can't you skip forward iirc? 18:40:01 also it is trivial to solve it in one run 18:42:25 guys 18:42:26 I’ve built a whole science out of studying the universe of possible programs–and have discovered that even very simple ones can generate all sorts of rich and complex behavior. 18:44:59 That sounds like it could very well be a new kind of science. 18:45:05 :D 18:49:08 Alrighty, this is about to drive me up the wall! Someon help... 18:49:08 "one of the discoveries of NKS is a phenomenon I call computational irreducibility–which says that many systems that appear complex will have behavior that can never be “reduced” in general to a simpler computation." :S 18:49:35 that seems completely trivial result from complexity theory..? 18:51:00 Is it impossible in Wireworld to make a transistor that halves the flow of a 4-micron current? 18:51:55 MissPiggy: I have no idea what it means, given that he scare-quotes "reduce" but doesn't define it 18:52:05 I've been trying and it seems that parity doesn't allow it. If I delay the transistor's pulse by one, it's too slow, and if I speed it by one, it's too fast. 18:52:11 I've tried everything. 18:52:55 -!- cheater99 has quit (Quit: Verlassend). 18:53:18 Most "mathematical philosophy" is garbage because most "mathematical philosophers" have never seriously studied philosophy. 18:53:35 (or mathematics) 18:54:00 most "philosophy" is garbage because most "philosophers" have never seriously studied philosophy. 18:54:07 I think there's just not enough of a gap to make it work. I think the gap might have to be an odd number for a transitstor to work. :| 18:54:12 see ##philosophy for the dumbest channel on freenode 18:54:13 :P 18:54:26 *transistor 18:55:19 Mathematical philosophy? I've never heard of it, but it sounds ridiculous. Mathematics is precise, but philosophy is abstract and arbitrary. 18:55:35 dev_squid: philosophy *of* mathematics 18:55:41 dev_squid: do numbers exist??? 18:55:47 That doesn't make much sense either. 18:55:50 it's somewhat of a valid question 18:56:18 what is a number 18:56:19 dev_squid: Books like "New Kind of Science" and "Goedel, Escher, Bach" qualify as "mathematical philosophy" to me. 18:56:20 That's a valid question, but it's not profound enough to consider it philosophy. 18:56:35 Not the same as philosophy of mathematics, quite. 18:56:41 dev_squid: what. 18:56:50 what's the threshold for profoundness then? 18:57:03 I guess it's up to the person asking. 18:57:18 or rather, what branch of science should address this question, if not philosophy of mathematics? 18:57:24 dev_squid, philosophy just means critical thinking it doesn't have to be profound but obvious profound stuff is some of the best/most famous philosophy 18:57:33 I don't think it's a question worth addressing, personally. 18:57:33 obviously* 18:57:53 dev_squid: why, is the answer obvious? 18:58:01 It's obvious to me. 18:58:13 what is the answer?? 18:58:27 There is no definite answer, for sure. 18:58:30 ... 18:58:34 But... 18:58:46 dev_squid philosophy doesn't care if there's a definite answer or not 18:58:54 dev_squid the whole point is the journey 18:59:03 It depends on how you define "numbers". 18:59:13 "Computational irreducibility" seems to be "You can't predict the final state of a (complex) program without running it". Sounds like a layman-formatted version of undecidability to me. 18:59:14 (although some philosophers say that if there is a definite answer it's not philosophy any more, I don't agree with that) 18:59:34 cpressey, yeah I can't understand why it is even mentioned it is so weird.. 19:00:00 MissPiggy: To sell more copies of Mathematica, of course. 19:00:08 Wolfram is a marketing machine. 19:00:34 cpressey, that's some crazy shit. What exactly isn't predictable but that's traceable? 19:01:08 dev_squid, imagine some terribly complicated progarm that happend to always print 1 :P 19:01:39 dev_squid: Well, take the Life automaton for example. If I give you a random starting configuration, can you tell me if there will eventually be a glider at some coordinates (x, y)? 19:03:56 cpressey, are you asking if I -personally- can predict it, or if -anything- could predict it? 19:04:37 ((p nand q) nand r) nand (p nand ((p nand r) nand p)) = r 19:04:53 apparently that's all you need to define nand ? :| 19:05:05 dev_squid: Well, not you personally :) Say "any computer program". 19:05:11 where's oklopol 19:05:13 can clue do that? 19:05:14 here 19:05:21 oh my god are you arelly there! 19:05:21 yes 19:05:41 Bootstrapped NAND, I never thought of that. Nice. 19:05:46 cpressey, I do remember reading about complicated algorithms that could calculate a future generations without simulating each generation seperately, IIRC. 19:06:00 cpressey, is that what you mean? 19:07:32 cpressey, but without simulating it, I guess you could say you can't calculate when the next time state N will occur. 19:07:35 dev_squid: Assuming such algorithms exist -- yes, I'm referring to the fact that running those algorithms are tantamount to running the Life automaton. 19:08:08 Features, schemeatures: added that thing into twungot where it replies whenever someone tweets with the string @fungot in it. 19:08:09 fizzie: indeed, do any search for air france 296 19:08:30 dev_squid: It all derives from the Halting Problem. 19:08:40 cpressey, yep. 19:09:00 but what is the meaning of it all? 19:09:06 lament :( 19:09:45 cpressey, so you can't calculate the next time state N will occur without actually running the program. 19:09:46 I see. 19:10:07 (or a more complicated version of the program) 19:10:09 dev_squid: Not *in general*, no. In some special cases, yes. 19:11:02 Like, if I have a set of configurations where I've already run them and cached where the gliders end up, and you give me a configuration that happens to be one of those... as a trivial example. 19:11:03 cpressey, yep. 19:11:32 cpressey, I'm thinking of Hashlife. 19:11:38 cpressey, *facedesk* 19:12:05 Ah, I see. 19:12:06 * MissPiggy 's todo list contains: implement/understand hashlife 19:12:15 something which I probably wont actually ever do... 19:12:24 Yeah, it looks like a kind of abstract interpretation of Life. 19:12:53 MissPiggy, I don't understand it, and I doubt I ever will. 19:13:04 Thing is, there will always be some Life configurations where running them in Hashlife won't be any faster. 19:13:06 I don't imagine it's very difficult 19:13:45 * cpressey 's todo list contains "understand and implement generalized abstract interpretation" :) 19:14:07 lament but what does it mean to understand something? 19:14:31 cpressey, I was under the impression Hashlife doesn't iterate generations at all, but it seems like it does...just, a lot faster. 19:16:14 Hashlife just works by noting that Life patterns are highly redundant. And so, it can memoise the iteration of patterns. 19:16:19 It looks like it does iterate generations, at first, and as it does so, it "recognizes" the patterns in them. After it has recognized the patterns, it uses them to process the evolution. 19:16:25 MissPiggy: but what does mean mean? 19:17:23 For instance -- gliders. It can, instead of computing each and every cell in the glider pattern, simply fetch the next needed portion of the pattern out of its hash table. 19:18:03 Thing is, (and I'm basing this on the idea that Life is TC), it should be possible to find Life forms that don't get significantly simpler over time. Some kind of puffer train which grows utter crap behind it comes to mind. 19:18:12 fizzie: Will it reply to @fungotfoobar as well? 19:18:13 Deewiant: oznaczono jako spam lmmfao that had me laughing the whole films takes place in slow motion affect you can hear the engiens running, it would be 2 flight crew, and not what you'd expect! 19:18:44 f(z) = z 19:18:44 This map is called the identity map, and is extremely boring. 19:18:55 whatusedtobefungotboring 19:18:56 lament: i personally liked the mr. potato head one.... really awesome, and not a single reply before posting the same 24-second video that was a " man" a " pussy" a high vocabulary level. 19:19:20 cpressey :D I wonder what the life equivalent of busy beaver is 19:19:24 http://en.wikipedia.org/wiki/Video_Life Man. 19:19:49 MissPiggy: A busy beaver. 19:19:57 Deewiant: No, because those don't end up on the "mentions" Twitter API listings. 19:19:58 pikhq what the fuck 19:19:59 Life describes a TC system. 19:20:02 are you trolling 19:20:20 pikhq: No, other Life. 19:20:21 fizzie: Ah, you're using a clever API. 19:20:35 this is like that time when I was wondering how to prove something was undecidible and you said "halting problem" 19:20:46 it's suck a fucking awful answer I can't tell if you are trolling or not 19:20:47 Deewiant: Since they've bothered to provide a nice, RESTful JSON-driven API, I might as well use it. 19:21:03 Yes, I suppose you might. :-) 19:21:55 MissPiggy: Life is equivalent to a Turing-machine. Thus, the busy beaver analogue is merely an implementation of a busy beaver machine in Life. 19:22:01 shut up 19:22:29 pikhq: f(z) = z 19:22:30 This map is called the identity map, and is extremely boring. 19:22:47 what is life? 19:22:51 MissPiggy: When you ask a boring question, you get a boring answer. 19:23:00 Twungot (undocumented, unpretty) code is in fungot's git repository anyhow. 19:23:00 fizzie: what if she is so funny... 19:23:07 MissPiggy: isn't the identity map pretty interesting? 19:23:11 i mean, what's the type signature? 19:23:18 lament this is from terry tao 19:23:25 yeah well he can suck it 19:23:42 lament: The B3/S23 2 dimensional cellular automaton. Known to be Turing-complete. 19:24:03 pikhq: great answers to great questions 19:24:23 lament: Of course, if you don't grok that, that doesn't help you. But, then, you're here, so. ;) 19:24:40 but what's the MEANING of life? 19:24:54 Beats me. 19:25:00 z = f(z) = f(f(z)) = f(f(f(z))) = (the remainder of this sequence has been hashlifed into constant space) 19:25:23 I guess the other question is, where is Hashlife for Turing Machines? 19:26:00 normal turing machines don't have so much redundancy 19:26:08 True. 19:26:48 Yeah, Life has all that symmetry. It's pretty bloated that way. 19:27:23 So back to my original question, is it impossible (due to parity) to make a transistor that halves a 4-micron current in WireWorld? 19:27:36 Life needs some spontaneous symmetry breaking. 19:27:44 I've been trying and I get it either on generation too fast or one too slow. 19:28:02 dev_squid: Been a lot time since I've WW'ed. From faint echoes of firings of neurons, I would guess, yes, it's impossible. 19:28:17 Complete guess. 19:28:27 Seem to remember having similar frustrations. 19:28:32 Could be completely wrong. 19:28:34 cpressey, I think the current has to be of n-micron where n is odd. >:( 19:29:30 cpressey, or it could just be that it's too small of a gap, much like in how 4-micron currents can't go through the smaller logic gates. 19:29:42 *properly 19:30:14 I'll try it with 5-micron. :) 19:30:56 the turing machine example that comes with Golly is just one way to make a turing machine 19:31:09 and turing machines araen't the only way to impleement N -> N functions in Life 19:31:38 MissPiggy, yerp. 19:31:47 there is a limit on the size that a life pattern can grow, it takes n steps (minimum) to reach n pixels away 19:32:03 and finding a configuartion that fills space as fast as possible is trivial 19:32:31 but that configuration is not a busy beaver 19:32:40 it only computes O(n^2) 19:33:48 that's why it's an interesting question and 'shut-up' answers like "just implement it in the turing machine" are not good 19:35:23 Okay, so you want the non-trivial busy beaver configuration for Life. 19:35:37 You should say as much. Otherwise you get simple answers. 19:35:50 pikhq it's not my homework 19:36:02 I just mentioned this because it's interesting 19:36:03 ... 19:36:18 Did I even claim that? 19:36:30 I simply gave you a trivial answer to a trivial question. 19:37:24 ok 19:40:54 -!- asiekierka has quit (Ping timeout: 276 seconds). 19:46:00 Dumb question incoming. 19:46:11 ANDNOT=NAND? 19:47:02 All Wireworld references I've seen call them ANDNOT gates...why not just NAND? 19:48:25 "An AND-NOT gate calculates the function ‘A AND NOT B’." -- at least that sort of function is not NAND. 19:48:26 -!- hiato has joined. 19:49:01 p and not q != not (p and q) 19:49:02 So ANDNOT is not NAND? 19:49:12 I see. 19:50:38 MissPiggy, you could implement Hashlife for Langton's Ant. 19:50:43 ... Hashant. 19:50:51 I've also noticed that the XOR gates they've described don't have a clock structure to output a 1 when there is not input (i.e. 0 xor 0)...so are they not -true- XOR gates? 19:52:04 XOR doesn't need a clock, as long as when both inputs are 0 the output is 1, it should be no problem. 19:52:40 cpressey, the gate isn't 'active', so if there is no input, there is not output. 19:53:03 Hm, then yes,it is some pseudo-XOR, I'd say. 19:53:08 Yep. 19:53:41 You could construct a 'real' XOR gate with an AND and then NOT structure. 19:54:38 Uh.. isn't 0 XOR 0 supposed to be 0, anyway? XOR is true for (1, 0) or (0, 1); false for (0, 0) or (1, 1). 19:54:53 fizzie, no. 0 xor 0 is 1. 19:55:06 That's a very strange sort of exclusive-OR. 19:55:08 Oh, wait. 19:55:18 *facedesk* 19:55:24 Oh, confusion between XOR and EQU I think. 19:55:27 I totally don't understand any boolean domain except {0,1} 19:55:31 EQU being the inverse of XOR 19:55:43 Oh, yeah I confused it. 19:56:00 Again, *facedesk*. Pardon my faggotry. 20:01:24 So it turns out, in my experimental term-rewriting language, the terms *being rewritten* may contain variables. This was an accident, and strikes me as somewhat... unwholesome. However, until I understand the implications, I'm hesitant to take it out. 20:02:10 :D 20:02:35 let (a @x) -> (b @x) in (a 5) ==> (b 5) <-- that's normal (@x denotes a variable.) 20:03:26 let (a 5) -> (b @x) in (@x 5) ==> (b a) <-- that's nuts. 20:17:16 -!- oerjan has joined. 20:19:31 -!- Asztal has joined. 20:23:07 horrible music interrupted by "you now have place number 5 in the queue" 20:23:19 well what were you doing in the queue to HELL anyway 20:31:23 alise talks too much. 20:31:50 oerjan quotes too much 20:31:56 after that discussion you and coppro had in the logs, you shouldn't be complaining ;D 20:33:20 oklopol doth protest too much. 20:33:22 oklopol: don't worry, that was the last one for now 20:34:54 i was just hoping you'd quote me and say something witty! 20:35:15 oerjan quotes too much <-- no i don't! 20:35:21 like that? 20:35:54 yes, thank you 20:37:55 so 20:38:01 what discussion did they have? 20:39:10 about whether a rotating coordinate frame is as valid as a non-rotating one. it was my fault for bringing it up, actually. 20:40:38 well if you mention coordinate frames, what can you expect except a flamewar 20:40:56 wouldn't a framewar be more likely? 20:41:18 must've been a typo 20:41:27 how typical 20:50:21 hmm, they found a side-channel attack against RSA 20:50:34 where you can brownout a system trying to do the calculations and figure out the private keys that way 20:50:50 what's brownout? 20:51:59 when a system doesn't have enough voltage on the input to operate correctly, but it doesn't have low enough voltage that it turns off altogether 20:52:20 some systems have explicit brownout detection circuitry; the rest just malfunction in that situation 20:52:34 o_O 20:53:25 that reminds me of that jvm attack which depends on random faults in memory 20:53:55 s/faults/errors/ 20:54:29 both seem to depend on a computer's hardware not doing what it should 20:54:32 there was a proof a while bag that you could remotely attack (I'm not sure which sort of attack) an RSA system that ran on a processor that did one multiplication incorrectly, FDIV-bug style 20:54:56 heh 20:55:44 although brownout sounds like you need physical access 20:56:27 or good timing 20:56:34 (I hear thunder in the distance) 20:56:43 maybe if you control the power plant first 20:57:31 oerjan: on a system with software-controlled overclocking, you can do it by overclocking the processor past its possible range 20:57:44 ooh 20:57:46 well, that either browns out the system or causes it to melt 20:58:03 depending on whether the power supply or the heatsinking fails first 21:02:18 -!- pikhq has quit (Read error: Connection reset by peer). 21:02:56 -!- pikhq has joined. 21:03:40 Why yes, FUSE filesystem, I would absolutely love for you to read the entire contents of that file into memory. 21:03:59 I of course have enough memory for 12 gigabyte files in RAM. 21:04:19 I've somehow always felt that side-channel attacks are somehow unfair to poor widdle cryptographers. :/ 21:04:32 pikhq: 12GB of RAM isn't entirely implausible nowadays 21:05:17 scarf: Yes, but reading the entire contents of a 12GB file into memory is pretty dumb. 21:05:26 it depends on what you're doing 21:05:41 ... Filesystem. 21:05:54 heh 21:06:38 FUSE filesystems sometimes are a bit dumb; see, when you put it in userspace, you make it a lot easier to just write a messy filesystem, without having arcane skills; and then people do. 21:07:04 So I have discovered. 21:07:24 One would hope that at least the widely used ones (sshfs?) would be clever enough not to be stupid, though. 21:07:50 I was playing with fusecompress. Which apparently sucks for large files. 21:08:15 It appears to read an entire file into memory when you modify it. 21:08:29 -!- oklokok has joined. 21:09:13 -!- oklopol has quit (Ping timeout: 264 seconds). 21:09:28 Well, compression always makes random-access harder. 21:10:30 Yes, but there are fairly easy ways to make it not horrifying. 21:10:32 -!- sebbu2 has joined. 21:10:48 Even if you're not going to be clever: split the file into blocks. Compress the blocks seperately. 21:11:02 -!- hiato has quit (Quit: leaving). 21:11:11 Inefficient, but it's at least not going to swap you to death when you try to modify a file. 21:11:49 -!- sebbu has quit (Ping timeout: 258 seconds). 21:11:49 -!- sebbu2 has changed nick to sebbu. 21:11:57 I love my magic objects and their magic 21:13:01 pikhq: It should do that already, I think. At least the fusecompress man page options list has: "Block size influences compression ratio. Bigger block size allows better compression ratio, but random access to data will be slower and memory requirements will be bigger." They must have just screwed it up somehow. 21:13:13 I think "magic" in this context might even be definable: putting together two functionalities which should be separate. 21:13:23 (Default size is 100 kB.) 21:13:24 Like, generating a form, and seeing if a form needs to be generated. 21:14:21 fizzie: ... Yeah, probably just screwed it up. 21:14:36 And I'm not going to look and see how to get it right. 21:15:03 I'm happy to report that at least dd'ing a 10-byte block at the middle of a three-gigabyte file over sshfs won't cause it to transfer three gigabytes over the network. 21:15:42 That's because sshfs is somewhat intelligent. 21:18:19 it lets you read data sanely so you won't suspect its plan to take over the world 21:24:21 ok, YouTube comments are driving me mad 21:24:26 the issue isn't the content, but chronological order 21:24:40 the /newest/ comments are at the top, except that older comments appear to be written as replies to newer ones 21:25:10 which appears to require either a whole load of the IRP-style "hello" "please say 'hello' immediately before this comment", or a deceptive sorting algorithm 21:25:53 scarf: time travelers from a future idiocracy? 21:25:55 scarf: I have never frickin understood them either. 21:26:09 scarf: It's deceptive. Not sure how it works. 21:26:12 oerjan: I like the concept 21:26:29 I understand that the newest is at the top, but even so, there is always someone who is replying to something I can't see, for whatever reason. 21:28:39 further theory: people in Youtube, whenever they see someone's replied to their question, repeat the question 21:28:41 for context 22:10:52 -!- BeholdMyGlory has joined. 22:17:09 The Youtube comment system is probably designed to allow for stupid people. 22:17:41 -!- oklokok has quit (Read error: Connection reset by peer). 22:18:45 i love augur 22:18:55 HAY GAIS 22:19:45 OHEY 22:20:48 -!- dev_squid has quit (Ping timeout: 252 seconds). 22:30:58 -!- kar8nga has quit (Remote host closed the connection). 22:31:02 -!- tombom_ has quit (Quit: Leaving). 22:33:14 -!- coppro has joined. 22:41:37 -!- dev_squid has joined. 22:46:42 -!- oerjan has quit (Quit: Later). 22:48:50 -!- MigoMipo has quit (Remote host closed the connection). 22:50:28 -!- alise has joined. 22:50:45 I am looking at Windows 7 Home Premium. 22:50:47 Challenge: Explain this. 22:52:39 this isn't your computer 22:52:51 the fact that you're using a webclient extends that impression 22:53:19 alise: you're gay. 22:53:27 problem solved 22:53:54 Gays see Windows 7 in their mind. 22:54:00 -!- alise_ has joined. 22:54:02 Whoopsie, 22:54:04 hi alise_ 22:54:05 *. 22:54:15 my guess is that you're using a computer other than your own 22:54:47 given that it's around 11pm where you live, you can't be at a cybercafe or anything like that 22:54:55 so you're probably at a friend's or relative's house 22:55:18 -!- alise has quit (Ping timeout: 252 seconds). 22:55:26 gay lover's 22:56:11 scarf: Incorrect. 22:56:24 Well, relative's house yes, other person's computer no. 22:56:28 hmm 22:56:38 new computer, and you haven't installed an OS on it? 22:56:56 other possibility's that your computer was dual-boot all along, and you're using the other side for some reason 22:57:12 I can understand you using win7 deliberately, but home premium would seem unlikely, and this would seem a weird time to experiment 22:58:27 Home Premium is pretty much the best Windows 7 version, Ultimate just has a few more stuffs 22:58:30 New computer, yes, bingo. 22:59:01 Rationale: Temporary residence as part of homelessness + going around to get things sorted + etc = lugging around an iMac is not ideal. 22:59:18 you have a laptop, then, probably a netbook 22:59:37 Not quite a netbook, they all had really ridiculously tiny 9" screens 22:59:44 wow, that's small 22:59:51 this netbook is about A4, which is still quite small 22:59:51 And the 11" laptops cost similar prices to the 13" ones 22:59:55 So it's just a small laptop 23:00:09 Apparently it gets 8 hours battery life, so... that would be nice, I guess, though I doubt it's quite that much. 23:00:22 mine's advertised as 8, it's around 5 in practice 23:00:29 what model is it? 23:00:35 Toshiba Satellite Tsomething. 23:00:49 wow, you may have exactly the same as mine, which is also a toshiba satellite 23:01:02 No, you probably have the 11" model. 23:01:05 Mine's its 13.3" big brother 23:01:12 fair enough 23:01:32 How are you meant to type without thumbing the trackpad? 23:01:36 I am rather unexperienced with laptops... 23:01:41 I can't manage that either 23:01:49 Neither can I. 23:01:50 I've just got really experienced at mitigating thumbpad errors 23:01:51 It's really annoying. 23:02:08 you can turn off tap-to-click on the thumbpad if you really care, that prevents thumbing it by mistake doing much 23:02:31 I just disable the pad entirely 23:02:32 Yes, but the button isn't the best, I think you'll agree. 23:02:35 A bit hard to reach too. 23:02:38 yep 23:02:44 my mouse is really unreliable atm 23:02:46 Deewiant: No nipple mouse, and using Windows without a mouse is suicidal. 23:02:53 so I'm using hold-primary-click-for-secondary-click 23:03:06 which means I can do pretty much anything with touchpad gestures 23:03:56 Apparently there's an eco mode which sacrifices performance for battery, which would be totally superfluous if they weren't presumably lying about the 8-hour life in the battery indicator. 23:04:12 Whoo, it's gone down to 4 hours already :-D 23:04:52 Why does it randomly decide to spin the fan up for no reason? 23:04:53 Who knows. 23:05:00 (Why does it come with so much junk installed? Who knows.) 23:05:00 well what were you doing in the queue to HELL anyway <-- the train went to norway by mistake ;P 23:05:25 alise_: oh, it spins up the fan randomly on Windows too? 23:05:44 it probably does it more often there than here, though 23:05:47 heh 23:05:51 it's a really quiet fan though 23:05:56 so i don't really care at all 23:05:57 it has multiple settings 23:06:03 it sometimes spins up to quiet for several minutes 23:06:04 in fact, it's kind of eerie how quiet it has been 23:06:10 and sometimes to REALLY LOUD for about ten seconds 23:06:22 also, I've christened this machine Dinky 23:06:27 why? 23:06:30 mine's called desert 23:06:35 I suppose it's not actually all that dinky 23:06:41 scarf: because in some ephemeral way it is small and dinky. 23:06:48 Compared to an iMac, I suppose. :P 23:07:38 Also, what is it with airline food^W^W mobile broadband software? 23:07:45 It's all incorrigibly awful 23:08:04 Why yes, FUSE filesystem, I would absolutely love for you to read the entire contents of that file into memory. 23:08:04 I of course have enough memory for 12 gigabyte files in RAM. 23:08:06 wonderful 23:08:07 oh, one thing that's annoying is things like the wireless killswitch seem to only work on Windows her 23:08:08 *here 23:08:30 pikhq, what fuse file system was it? 23:08:54 4 gigabytes of RAM in a machine with this CPU is hilariously pointless 23:09:14 ah compression 23:09:16 1.30GHz single core, fuck yeah 23:09:18 alise_: why'd you get a new computer thats not a mac? 23:09:22 pikhq, I would recommend using squashfs for compressing filesystem ;P 23:09:36 alise_: this one has 3GB 23:09:41 and is likewise single-core 23:09:44 augur: because buying a mac laptop for use tomorrow without financial planning is a stupid idea 23:09:50 They are, you might note, rather expensive 23:09:54 alise_: Welcome to laptop-land. You'll learn to love to hate to type. 23:09:56 actually, having that much memory compared to the CPU means it's unlikely to start swapping without lots of notice 23:10:07 why did you buy a laptop for use tomorrow? 23:10:08 Besides, I have no real qualms with UBuntu. 23:10:21 augur: because my life is fucked up right now and I can't lug about an iMac 23:10:31 whats goin on? 23:10:39 scarf: hmm... does yours have more than 1.30GHz of juice? 23:10:52 also, if you have a 32-bit OS it's feasible that you have >3 gigs and just don't know it 23:10:55 1.3 exactly 23:10:58 augur: Well, you know the situation with the unit, right? 23:11:02 no 23:11:03 and I have a 32-bit OS, but it was advertised with 3GB 23:11:10 You do, I told you. 23:11:24 Basically a mental health institution has me there the entire week apart from the -ends. 23:11:29 oh wait, you mean the "zomg the boy is crazy" thing 23:11:31 apart from this week? 23:11:39 But not right now, that's not the issue, the issue is that for various complicated reasons I don't have any permanent residence right now 23:11:41 or have you been going this week anyway, somehow? 23:11:56 I've sent my clone there 23:11:56 :p 23:12:12 can i get an alise_ clone? :X 23:12:12 alise_: this is the best time ever for you to be a pair of identical twins 23:12:31 augur: That's possibly the most disturbing thing you've ever said :P 23:12:38 cpressey: The keys are... so flat. 23:12:40 i try <3 23:12:42 alise_: So where the hell are you? Please say "A truck stop outside El Paso". It's the only correct answer. 23:12:45 I've had a scissor-switch keyboard before but jeez. 23:12:55 A truck stop outside El Paso. (Uncle's house) 23:13:01 Right on. 23:13:17 alise_: please get your life sorted out before you run out of relatives 23:13:33 scarf: XD 23:13:39 alise_, homelessness? 23:13:40 wth 23:13:52 I didn't gather it was quite that bad 23:13:59 It's not like we didn't pay the rent or anything :P And it's not like we're sleeping on the streets 23:14:02 he isn't homeless, just being shuffled from relative to relative 23:14:20 It's just that going back to my (ex-)stepfather's house is not really an option. 23:14:27 you can turn off tap-to-click on the thumbpad if you really care, that prevents thumbing it by mistake doing much <-- thumbpad? Is that different from a normal touchpad? 23:14:31 scarf: Only left my father's house because he demanded, increasingly angrily, that I attend the unit 23:14:44 AnMaster: no, it's just a thumbpad, I misnamed it 23:14:48 Actually he called social services on us because for a few hours he didn't know where we'd gone to... 23:14:53 He's pretty fucking crazy. 23:14:58 scarf, ? 23:15:08 calling social services due to not knowing where your son is seems plausible 23:15:23 *touchpad 23:15:34 scarf, ah 23:15:43 scarf: no, it was /after/ he found out 23:15:50 I've had a scissor-switch keyboard before but jeez. <-- they vary widely in quality in my experience 23:16:30 alise_: are you at least going to school, somehow? my guess is that that's completely implausible given the situation 23:16:52 but I'm worried that you'll get in trouble on the technicality that you're within the compulsory education age range, yet not going to school 23:17:12 alise_, your parents are separated? 23:17:16 or what is going on 23:17:22 have you fled from home? 23:17:28 * AnMaster is utterly confused now 23:17:35 ok 23:17:39 i think ive just seen 23:17:40 what is by far 23:17:42 My parents have been separated since I was three. 23:17:46 ah 23:17:47 I am with my mother. 23:17:48 the weirdest and wonderfullest musical instrument ever 23:18:12 augur, ? 23:18:17 AnMaster: an audience. 23:18:20 http://www.ted.com/talks/bobby_mcferrin_hacks_your_brain_with_music.html 23:18:26 bobby mcferrin plays a fucking audience. 23:19:00 This thing has a nice DPI. 23:19:19 Can't even see /Windows's/ subpixel fringes. 23:19:34 * Sgeo has .. somewhat mixed emotions about Ruby 23:19:40 Sgeo: why 23:19:42 what kind 23:19:43 I can see the subpixel fringes here if I zoom in a lot 23:20:02 He has a part of him that thinks it's good, and it hasn't been forcibly amputated yet 23:20:02 I'll Get Around To It(TM) 23:20:08 On the one hand, it's the language I'm learning right now, therefore it's awesome. On the other hand, 20 ways to do the same thing gets on my nerves rapidly 23:20:26 Sgeo: learn Perl, it only has 19 23:20:26 Sgeo: oh get over it :P 23:20:29 augur, wow 23:20:30 I think the fan logic for this machine is "Fan for a minute or two. Sleep a few minutes. Repeat." 23:20:40 AnMaster: RIGHT? 23:20:48 alise_: plus a random-number generator 23:20:49 Also, still haven't figured out how to mechanically translate [something for i in stuff for j in otherstuff] 23:20:56 Nor (something for i in stuff) 23:20:59 it does fan louder while under load, though, if not more often 23:21:02 Sgeo: what? 23:21:09 augur, ? 23:21:13 augur, about that video 23:21:14 .. 23:21:16 I'm used to Python's list comprehensions 23:21:21 AnMaster: i know. its amaing. 23:21:28 It's somewhat easy to translate simple ones to Ruby 23:21:30 Sgeo: ah, list comprehensions dont exist in ruby, unfortunately. 23:21:32 augur, also amazing 23:21:45 you need to do maps instead. 23:21:55 what sort of complicated map are you trying to do? 23:22:14 [x*x for x in [1,2,3] if x > 1] becomes [1,2,3].select{ |x| x > 1}.map{|x| x*x} 23:22:30 yeah. 23:22:46 What's the equivalent for multiuple "for x in y"s? 23:22:57 example? 23:23:01 And is there something similar I can do with generators? 23:23:15 [x*y for x in range(10) for y in range(10)] 23:23:17 hm? python has list comprehensions? 23:23:20 didn't remember that 23:23:30 ah. i see. no i dont think such a thing is easy to do in ruby 23:23:56 augur: That was pretty cool at the end. 23:23:57 Sgeo, should be straightforward in erlang btw 23:24:03 Gregor: :) 23:24:06 Up 'til then it was more "uhh, OK?" 23:24:14 yeah 23:24:15 0.upto(10) {|x| 0.upto(10) {|y| x*y}} 23:24:15 OR something 23:24:15 *Or 23:24:16 he got people going 23:24:19 then bam 23:24:25 alise_: no, that wouldnt do it 23:24:46 Err, right 23:25:02 (0..10).to_a.map { |x| (0..10).to_a.map { |y| x*y } }.flatten 23:25:04 (0..10).map {|x| (0..10).map {|y| x*y}} 23:25:19 ranges dont have a map method ;) 23:25:54 fucking lame 23:26:35 http://www.youtube.com/watch?v=S2k7aoIGqTI Anyone who hasn't seen this needs to watch it on loop until their eyes bleed. 23:26:35 You can presumably make your own, and it will be an automatic part of all ranges 23:26:53 Gregor: what is it? with a description like that, I don't want to click on it 23:27:06 scarf: It's The Cosmic Adventures of Doctor Fabulous 23:27:15 hmm 23:27:51 Sgeo, [X*Y||X<-lists:seq(0,10),Y<-lists:seq(0,10)]. (erlang) 23:29:00 all possible combinations 23:29:08 (I assume that is what the python one does) 23:30:01 http://sprunge.us/dVZH is the generated list 23:30:30 -!- alise has joined. 23:30:32 Our Content Lock system protects under 18s from accessing inappropriate content, including unmoderated user-generated content and social networking sites. To remove Content Lock, click on the link below, call 1818 from your mobile or visit your nearest T-Mobile Store. 23:30:33 FFS 23:30:38 just give me youtube 23:30:52 -!- alise_ has quit (Ping timeout: 252 seconds). 23:31:20 Sgeo, does that do the same as the python one? 23:31:25 social networking = inappropriate content? 23:31:27 Sgeo, yes or no 23:31:31 scarf, very! 23:31:35 unmoderated user-generated, is that to give an excuse to block WIkipedia? 23:31:44 Yes, but in a certain order 23:31:54 Sgeo, hm? 23:31:57 if you're tethering, could you bounce an ssh tunnel off somewhere? 23:32:03 -!- augur has quit (Ping timeout: 240 seconds). 23:32:33 [(x, y) for x in (1,2,3) for y in range(1,2,3)] starts [(1,1), (1,2), (1,3), (2,1)... 23:32:34 iirc 23:32:40 scarf: YOUTUBE IS VIOLENCE 23:32:41 AND SEX 23:32:43 AND WARFARE 23:32:47 AND ROCK AND ROLL MUSIC 23:32:54 gah, not rock and roll! 23:33:00 Sgeo, that python expression gives me a list that goes to 81 here .... 23:33:01 wth 23:33:05 seriously, it's probably a better idea to just go round the filter 23:33:09 So now it wants me to supply a credit card number so it can verify that I'm an under-18 using someone else's credit card number. 23:33:22 and what they /probably/ want to do is avoid people using loads of bandwidth 23:33:33 "You are number 5 in queue. Estimated wait time is 2 minute(s)s" 23:33:38 if it's an unlimited-connection sort of thing 23:33:38 The old vodafone 3g stick did the same thing 23:33:44 It was damn annoying 23:33:51 scarf: No, pay-as-you-go, but topped up a lot I think 23:33:53 and implies deep packet inspection, doesn't it? 23:33:54 For 30 days 23:34:03 (Pay for one day get 30 days free; pretty sweet deal imo.) 23:34:06 scarf: Probably. 23:34:08 or they couldn't see where you were sending the query 23:34:13 Maybe DNS-based? 23:34:13 Sgeo, http://sprunge.us/hZQA <-- that makes no sense 23:34:25 Gregor this isn't very good 23:34:26 Sgeo, unless range(10) actually means 0..9 23:34:35 MissPiggy: YOU FAIL 23:34:37 which would be sillier than I remembered 23:34:39 AnMaster, it does 23:34:52 :( 23:35:09 Sgeo, well then change the erlang expression to [X*Y||X<-lists:seq(0,9),Y<-lists:seq(0,9)] 23:35:11 night 23:35:24 Night AnMaster 23:37:19 I wonder if it's possible to apply for and receive a credit card entirely over the Internet. 23:38:25 Incidentally, this laptop used to be a display item. 23:38:25 There were only two laptops of this model and they were both displays... 23:45:10 -!- alise has quit (Ping timeout: 252 seconds). 23:48:37 -!- scarf has quit (Remote host closed the connection). 23:48:52 :(((( I watched the whole thing 23:49:02 it's meant to be a satire? 23:50:00 Yes. 23:50:21 Of various nonsense, and also with a heavy smattering of unrelated nonsense. 23:51:06 -!- alise has joined. 23:53:11 -!- cbrowne has joined. 23:54:42 This thing measures the battery life in Toshiba time. 23:54:47 It goes quickly, like technology. 23:56:39 ugh, scarf disappeared 23:57:32 gregor said i fail :( 23:57:37 I cant help who I am! 23:58:02 this is rocket launch 23:58:02 http://playlist.yahoo.com/makeplaylist.dll?id=1368162 23:58:13 it goes into "orbit" in "space" 23:58:27 (at least that's what they tell us..) 2010-03-05: 00:00:26 there it is gone 00:02:04 you're strange. 00:02:04 really terribly strange 00:02:50 alise what do you have against nasa? 00:03:10 fun fact: "nasa" means "crazy" 00:03:19 :3 00:03:26 well you misinterpret gregor's joking "fail" as serious and then you say some sort of can't-tell-if-it's-serious space conspiracy stuff a second later :P 00:03:43 you are just impossible alise!!! 00:05:45 If I start falling in love with Ruby, is that a bad thing? 00:05:51 Sgeo: yes. 00:05:56 yeah I think ruby sucks 00:06:09 except it's kind of useful.... 00:06:16 but appart from that...... 00:06:17 also, you realise that there's going to be a point in your programming career when you /can't/ just ask us an answer to every dilemma :) 00:06:36 lol 00:07:01 Considering that I'm still going to keep messing with Ruby regardless of complaints about it in this channel.. 00:08:29 it's okay 00:08:34 alise complains about everything 00:08:44 Unix domain sockets are difficult to find information about. 00:08:55 and is thus not an objective test of the goodness of a language 00:09:29 Sgeo: then don't ask. 00:09:30 coppro: no, I don't complain about everything 00:09:33 I'd like to know how to open one, listen on one, see who's on the other end of one, and read and write stuff. 00:09:43 On the one hand, I want to agree, on the other hand, coppro is a C++ sympathizer >.> 00:09:45 merely most things that tend to be talked about at length 00:10:07 No offense 00:10:08 Sgeo: I'm not a blind one though 00:14:59 -!- alise_ has joined. 00:15:27 at&t customer service chat ftw 00:17:09 -!- alise__ has joined. 00:18:32 -!- alise has quit (Ping timeout: 252 seconds). 00:19:16 -!- alise_ has quit (Ping timeout: 252 seconds). 00:19:38 Hmm. Linux has less system calls than Lojban has gismu. I could just learn them all. :P 00:19:43 * cpressey 's soul is bleeding 00:21:00 -!- alise has joined. 00:21:28 -!- alise__ has quit (Ping timeout: 252 seconds). 00:23:12 mention of lojban = ban 00:23:51 That's why they call it Loj-BAN 00:24:00 yeah exactly 00:24:03 Mention of logic language = language? 00:24:10 What if I mention patching the Linux kernel so that it's a MOO? 00:24:35 what the hell is logical about lojban 00:24:42 I have no idea. 00:24:43 it's the most illogical thing I know :| 00:25:16 MissPiggy: consistency 00:25:33 I've already been banned from my lodge. 00:25:55 I looked at the Grand Poo-Bah funny. 00:27:35 Is your lodge Agora? 00:28:04 The Grand Poo-Bah is not from Agora 00:29:39 I know that. 00:30:23 Polished, vertical walls are consistent too, and climbers just loooove them. 00:30:49 Sorry, it's the best analogy I know for why consistency + spoken language = not exactly a love affair 00:31:35 Lojban isn't the most interesting thing ever. 00:31:39 But I like how it relates to propositional logic. 00:31:46 Which is probably the real Loj in Lojban. 00:31:56 ban 00:31:57 ban 00:31:57 The irregularities in natural language seem to work like coding theory stuff, sometimes? 00:31:58 ban 00:32:01 ban 00:32:05 alise have you read laws of form? 00:32:13 i'm gonna be the only person remaining in the channel at this rate 00:32:19 has anyone here?? 00:33:08 lament: "mention of lojban = ban" 00:33:13 even you will not be spared, surely? 00:36:00 MissPiggy: Maybe? 00:36:36 http://en.wikipedia.org/wiki/Laws_of_Form 00:36:51 I haven't read the work. I have read that page. A long time ago. 00:36:55 alise: I'm exempt 00:36:59 i'm above the law 00:37:14 Anyway, have to go home to try to fix my internet now. 00:37:15 cpressey I read the book it's kinda wild 00:37:28 alise seems to have given up on me 00:37:31 MissPiggy: It sounds like of like an esolang-logical-system 00:37:38 :D 00:37:42 mathematical philosophy is 100% bullshit 00:37:45 from concentrate 00:37:51 alise: :) 00:37:57 also, winge winge winge 00:38:15 alise stfu !!!!! 00:38:27 But every time I say I didn't enjoy "Goedel, Escher, Bach", people look at me as if I'm stupid. 00:38:31 you wouldn't know philosophy if it hit you in the face 00:38:31 Ah well. 00:38:36 Later, folks. 00:38:38 -!- cpressey has left (?). 00:38:50 I enjoyed the dialogues, but the AI content is not so good 00:38:55 MissPiggy: Oh, shut up. 00:39:04 i enjoyed GEB 00:39:08 i only read like 50 pages though 00:39:14 couldn't read any more, it's so boring and retarded 00:39:18 alise why even bother telling me to shut up if you are ignoring me :| 00:41:15 lament: is it also your favourite bolton album; it blows? 00:41:25 what 00:42:58 * MissPiggy bites alise 00:47:52 -!- alise has quit (Ping timeout: 252 seconds). 00:48:44 I wonder why sys_waitpid takes an int *. 00:48:59 I only read about one page of GEB before I started to think it was boring and retarded 00:49:09 You read the wrong page, then. 00:49:12 uorygl: ... to put the status into ... 00:49:24 Gregor: well, that makes sense. 00:49:38 Note that I have no idea what sys_waitpid is for. 00:49:38 Seeing as that waitpid(2) takes such an int * :P 00:49:52 ... good. 00:49:57 man 2 waitpid 00:50:11 Is (2) all about system calls? 00:50:58 Huh, I don't have that page. 00:51:21 FAH EEL 00:52:10 -!- alise has joined. 00:52:22 I'm guessing that in general, "foo" is input to the system call, "foo *" is output, and "const foo *" is input. 00:54:27 http://www.amazon.com/review/RI94SG7XY5YG3/ref=cm_cr_rdp_perm ;; here 00:54:41 etc: http://www.amazon.com/gp/pdp/profile/AKLYH2CI11XJN/ref=cm_cr_rdp_pdp 00:55:07 er i mean http://www.amazon.com/gp/cdp/member-reviews/AKLYH2CI11XJN/ref=cm_pdp_rev_all?ie=UTF8&sort_by=MostRecentReview 00:56:06 Where do I get those man pages? 00:57:16 -!- MizardX has quit (Ping timeout: 276 seconds). 00:57:18 Tuberwebsa 01:00:51 haha, I forgot this: "Yes, Ms. Newsom is a sort of Joni Mitchell meets Yvonne Trent (my fictional name for a singer who is Joanna Newsom minus Joni Mitchell)," 01:03:31 What a useless statement :P 01:04:34 Hm. Might it make sense for me to Google for one of my passwords [I've used the Gmail password, so it's not like the Google folks don't ha.. wait, they don't have it] 01:05:24 Just did it. No results =D 01:05:37 No, you don't get a screenshot 01:06:04 Gregor: that /may/ be intentional... 01:06:04 :p 01:06:48 -!- lament has quit (Ping timeout: 258 seconds). 01:07:35 -!- lament has joined. 01:08:17 -!- BeholdMyGlory has quit (Remote host closed the connection). 01:09:03 "But, this I'm right about: Franz Ferdinand is a person, not a band. Look at the name! It's a first and last name! Why would a band have one person's name? So, they could get on planes with only having to buy one ticket? I think they're too rich at this point to worry about that. And, what would happen when they actually had to sit down in the plane? No attendant is going to let the rest of the "band" stand the whole flight." 01:15:04 Someone has a strong belief that band names have to make sense. 01:15:39 Or simply has a strong desire to prove themselves right. 01:16:15 Which, as we all know, is the most evil desire on the face of the Earth. 01:17:08 Or is a joke account 01:23:48 -!- alise has quit (Ping timeout: 252 seconds). 01:48:32 -!- oerjan has joined. 02:06:11 It's somewhat easy to translate simple ones to Ruby <-- mechanically translating list comprehensions is listed in the haskell report: http://www.haskell.org/onlinereport/exps.html#sect3.11 02:06:41 the syntax is of course different 02:06:47 -!- MissPiggy has quit (Quit: Lost terminal). 02:07:05 (closer to set comprehensions in math) 02:08:31 you're probably missing the part with concatmap ? 02:17:44 That's mechanically translating Haskell list comprehension syntax to non-sugared Haskell? 02:17:56 yep 02:18:18 How about non-sugared Haskell -> Ruby? 02:18:46 concatMap = concat . map, or flatten and map from what i glanced from the logs 02:19:21 assuming flatten is not recursive, that would be evil. 02:19:37 * Sgeo is being... I think Ruby's flatten IS recursive. Hold on 02:20:10 Yep 02:20:15 -!- benuphoenix has joined. 02:20:23 irb(main):002:0> [[[1, 2], [3,4]], 5, 6].flatten 02:20:23 => [1, 2, 3, 4, 5, 6] 02:20:25 Hi benuphoenix 02:20:32 hi Sgeo 02:20:42 well that may mess things up then 02:21:34 To do a one-level flatten, map append 02:21:54 oh mutation 02:22:11 flattenOnce(x) = map(append, x), or whatever the ruby version would be 02:22:23 which lang is this? 02:22:37 ruby 02:22:42 I just made that up 02:22:51 oh 02:22:57 Well, what if some elements aren't lists? 02:23:16 Then add that as a special case 02:23:24 !help 02:23:25 help: General commands: !help, !info, !bf_txtgen. See also !help languages, !help userinterps. You can get help on some commands by typing !help . 02:23:32 * Sgeo is too focused on SG-1 right now to write Ruby (!) 02:23:39 Make your own append function that appends items and lists 02:23:54 Sgeo: you won't have a use for non-list elements for this case, haskell concat only applies to lists of lists (of the same type) 02:24:00 -!- benuphoenix has left (?). 02:26:00 also if the end result is not a list of lists, you should be able to postpone it to a single flatten at the end, i think. 02:32:49 by using the monad laws for lists *mad evil cackle 02:32:51 * 02:33:39 curses, my plan would have succeeded if not for that meddling return key 02:36:08 i hate monads 02:44:07 Now to see who he really is! 02:44:12 * Gregor pulls of oerjan's mask 02:44:27 * Gregor pulls off oerjan's mask, even 02:44:40 boo! 02:44:42 -!- Asztal has quit (Ping timeout: 276 seconds). 02:44:48 -!- cheater2 has quit (Ping timeout: 252 seconds). 02:44:59 also ouch, my face! 02:45:49 Old man Johansen! I should have known! 02:46:53 you kids get off my lawn! 02:48:05 haha 02:54:36 No wait, Scooby and the gang never were even close, they were always more like "Old man Johansen?!" 02:59:39 that just means you are genre savvy 03:12:56 -!- oerjan has quit (Quit: Later). 03:31:27 -!- charlls has joined. 03:31:44 -!- charlls has quit (Read error: Connection reset by peer). 03:59:50 -!- coppro has quit (Remote host closed the connection). 04:06:41 -!- Gracenotes has quit (Read error: Connection reset by peer). 04:07:45 -!- Gracenotes has joined. 04:09:56 -!- coppro has joined. 04:12:28 -!- Gracenotes has quit (Read error: Connection reset by peer). 04:13:06 -!- Gracenotes has joined. 04:13:11 -!- augur has joined. 04:13:23 sup foos 04:13:26 coppro: i figured out the GR thing 04:13:30 or was it oerjan 04:13:33 both of yoj 04:13:59 when GR describes non-interial FoR's as equivalent to inertial FoR's with gravity 04:14:11 what is meant is not what the universe looks like from that FoR 04:14:22 but rather what the FoR looks like to someone inside it 04:14:52 so a _closed box_ that is accelerating, is indistinguishable from, and equivalent to, a non-accelerating version on a planets surface 04:15:31 if you could see out, that breaks the equivalence, thats not what GR is about. its about the local physics of the FoRs, not the apparent physics of the world outside the FoR 04:31:20 -!- oklopol has joined. 04:34:37 -!- oerjan has joined. 05:16:32 -!- amca has joined. 05:34:58 -!- augur has quit (Ping timeout: 264 seconds). 05:35:34 -!- augur has joined. 05:39:28 -!- oerjan has quit (Quit: And again). 05:54:21 Unix domain sockets are difficult to find information about. <-- man 7 unix 05:56:21 bbl 06:08:11 -!- oklopol has quit (Read error: Connection reset by peer). 06:08:45 -!- oklopol has joined. 06:54:18 -!- oklopol has quit (Ping timeout: 276 seconds). 06:56:18 -!- jcp has quit (Ping timeout: 245 seconds). 07:00:49 -!- tombom has joined. 07:07:58 -!- cheater2 has joined. 07:08:16 It would have been wonderful it someone had pointed out man 7 unix to me 18 hours ago. 07:08:25 It would have saved me about 18 hours. 07:20:02 -!- coppro has quit (Read error: Connection reset by peer). 07:25:15 -!- kar8nga has joined. 07:33:30 -!- oklopol has joined. 07:42:30 -!- oklopol has quit (Ping timeout: 256 seconds). 07:50:11 -!- tombom has quit (Quit: Leaving). 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:03:26 -!- oklopol has joined. 08:05:42 -!- oklopol has quit (Read error: Connection reset by peer). 08:06:10 -!- oklopol has joined. 08:29:04 -!- oklopol has quit (Read error: Connection reset by peer). 08:29:42 -!- oklopol has joined. 08:40:12 Like my mini webpage? (http://circastudios.site50.net/dev_squid/) 08:42:51 * dev_squid is going to bed. 08:47:38 -!- MigoMipo has joined. 08:48:25 -!- dev_squid has quit (Ping timeout: 260 seconds). 09:02:31 -!- oklopol has quit (Ping timeout: 258 seconds). 09:10:12 Aww, the text is in images. 09:18:11 -!- kar8nga has quit (Remote host closed the connection). 09:55:04 -!- MizardX has joined. 10:01:19 -!- oklopol has joined. 10:22:18 -!- oklopol has quit (Ping timeout: 276 seconds). 11:04:35 -!- amca has quit (Quit: Farewell). 11:35:40 -!- kar8nga has joined. 12:23:38 -!- kar8nga has quit (Remote host closed the connection). 12:35:02 -!- BeholdMyGlory has joined. 12:42:28 -!- BeholdMyGlory has quit (*.net *.split). 12:42:57 -!- MigoMipo has quit (Remote host closed the connection). 12:44:31 -!- oerjan has joined. 12:47:56 -!- BeholdMyGlory has joined. 12:51:01 -!- fungot has quit (*.net *.split). 12:56:14 -!- MizardX has quit (Read error: Connection reset by peer). 13:04:31 -!- MizardX has joined. 13:19:54 -!- augur has quit (Ping timeout: 248 seconds). 13:21:47 -!- MissPiggy has joined. 13:45:39 -!- hiato has joined. 13:47:59 -!- augur has joined. 14:03:59 -!- MigoMipo has joined. 14:10:42 -!- oerjan has quit (Quit: leaving). 14:12:14 -!- alise has joined. 14:24:40 -!- scarf has joined. 14:27:00 -!- alise has quit (Ping timeout: 252 seconds). 14:28:55 -!- alise has joined. 14:29:20 scarf: is there anything useful in the stock windows or should i just nuke it and put ubuntu on? 14:29:31 Also, what kind of battery life 14:30:29 do you get? 14:30:29 Mine says 8 hours, then in a few minutes 6, then 5 14:30:35 hi 14:30:35 4hr32m remaining apparently now 14:30:36 alise: the stock windows is necessary to change most of the settings, like wireless killswitch, etc 14:30:50 and on Ubuntu, around 4 to 5 hours depending on what I'm doing, although the battery claims 8 when full 14:30:54 * alise plugs it in 14:30:58 * alise turns off ECO MODE 14:31:06 actually i'll keep it on 14:31:09 so it charges more for the journey 14:31:21 what I've done is resized the Windows partition smaller, and put Ubuntu on the other half 14:31:27 leaving it dual-boot, but only ever booted to Linux 14:31:38 scarf: I'll probably do some AnMaster-style hypertweaking for battery life 14:31:55 powertop! 14:31:59 Ideally I would back up the Windows partition somewhere then nuke it 14:32:08 But on a 3G stick connection, that seems unreasonable 14:32:16 Especially as it's £15/gig 14:32:18 although note, that powertop has a tendency to do obnoxious things like turn your mouse off altogether to save power 14:32:27 Just downloading Ubuntu will cost almost that 14:32:33 (Well, cost as in train the top-up.) 14:32:40 scarf: XD 14:32:59 Mine will have inferior battery life to yours because of the bigger screen, most likely 14:33:22 (to be precise, it turns USB autosuspend on, and moving the mouse doesn't turn it back off again, so you have to unplug and replug the mouse to get it to work 14:33:24 ) 14:34:27 I should have cleaned this (grubby display model! Probably grubby, at least) with something other than wet kitchen roll, there are little specks of it everywhere 14:34:34 Didn't really have anything else to use, though. 14:34:47 my laptop seems to be imposible to clean 14:34:47 scarf: ah, well I'll be using the trackpad 14:35:02 It's rather shiny, it's very easy to spot fingerprints ad stuff on it 14:35:17 But I just wanted to get the grubbiness off, just in case they didn't clean it very well before boxing it up 14:35:37 The trackpad on this is rather crappy, I keep side-of-trackpad scrolling by mistake 14:35:43 and it isn't very well ridged so i keep nudging it 14:36:21 alise: the stock windows is necessary to change most of the settings, like wireless killswitch, etc <-- huh 14:36:36 AnMaster: yes, it confuses me too 14:36:38 that is one advantage with thinkpad, things like that just work in linux 14:36:47 also, how do you use the mousepad/volume control? 14:36:54 I suspected Fn+ due to the colour but neither fn nor fn-switch work 14:36:56 erm 14:36:57 not mousepad 14:36:59 numberpad thing 14:37:03 volume control is fn-3, fn-4 14:37:14 scarf, also the kill switch on mine is definitely physical disconnect/connect-style 14:37:18 does it not give any feedback or something? 14:37:19 mouse pad is fn-f10 14:37:35 *numpad 14:37:36 scarf, since the bluetooth and wlan units are simply gone from lsusb/lspci after switching it 14:37:40 hmm 14:37:41 numberpad 14:37:42 not mousepad 14:37:45 7-0, u-p, j-;, m-/ 14:37:48 those ones 14:37:55 yep, you turn that on and off with fn-f10 14:38:01 also, I'm rather pleased with this keyboard layout 14:38:03 and the feedback is one of the lights on the front which is easy to miss 14:38:20 it doesn't seem to have any abominations against layout in it 14:38:34 I'd prefer shift was the rightmost key but it's not such a big deal 14:38:47 control, fn, super, alt, backquote, space at the bottom left is annoying, it's so easy to hit the wrong one 14:38:59 Backquote at the bottom left? 14:39:00 although a bigger screen for you may imply a less cramped layout 14:39:02 Not for me. 14:39:06 although note, that powertop has a tendency to do obnoxious things like turn your mouse off altogether to save power <-- for usb mouse maybe 14:39:06 I'm on UK layout though 14:39:09 For me the bottom row is: 14:39:10 yep, looks like bigger screen = bigger keyboard 14:39:12 AnMaster: yes 14:39:17 yes don't enable usb autosuspend 14:39:18 Ctrl, Fn, Win, Alt, space, alt gr, menu, ctrl, arrow keys 14:39:18 when it asks 14:39:42 Second to bottom is shift, \|, ..., /?, shift, pgup/pgdn vertically 14:39:51 alise: yours is very similar to mine, except mine puts ` and \ to the right of the two alt keys respectively 14:39:57 leaving the spacebar rather small 14:39:58 (to be precise, it turns USB autosuspend on, and moving the mouse doesn't turn it back off again, so you have to unplug and replug the mouse to get it to work) <-- in a different physical port even 14:40:00 for me 14:40:18 Fn-f10 just enables the arrows 14:40:18 (after that the original port works again though) 14:40:21 I think it's f11 for numbers 14:40:35 yep 14:40:39 err, yes, f11 14:40:42 I said the wrong thing 14:40:49 enable arrows? 14:40:51 what? 14:41:05 don't you have arrow keys by default? 14:41:06 also, are you /sure/ fn-3/4 works? 14:41:08 AnMaster: u8ok for arrows 14:41:10 I see no feedback whatsoever 14:41:15 alise: it does on Ubuntu, I'm not sure on Windows 14:41:19 although, I think I bound those myself 14:41:20 AnMaster: numpad arrows 14:41:23 ah 14:41:29 maybe it just does it silently 14:41:36 system|preferences|keyboard shortcuts 14:41:49 what colour is yours? to go on to the most inane subject of this laptop 14:41:56 mine's red, that's all they had though 14:41:57 alise, does it have a separate numpad or such? Or why is a numpad even useful on a laptop 14:42:07 but it correctly detects fn-3 as XF86AudioLowerVolume, fn-4 as XF86AudioRaiseVolume 14:42:11 AnMaster: some programs require numpad 14:42:11 AnMaster: It's part of the alphanum part 14:42:16 hm 14:42:17 alise: mine's black, but the packaging said it was red 14:42:23 Also, for e.g. spreadsheet number entry 14:42:31 And if you like that way of movement 14:42:35 inc. home,end,pgup,pgdown etc 14:42:37 btw my thinkpad as NmLk on Fn-ScrLk 14:42:41 which is quite strange 14:42:49 scarf: lol 14:42:56 ScrLk is surely even more seldomly used? 14:42:57 It's not a shiny red which is nice 14:43:14 AnMaster: so you can scroll look on boot, I guess 14:43:23 where Fn doesn't work 14:43:27 scroll lock is actually kind-of useful in Excel 14:43:29 alise, hm I think fn works there 14:43:40 are you sure? 14:43:41 alise, since fn itself generates no key event 14:43:54 ooh, fn-f9 seems to be implemented in hardware 14:44:01 that's the key combo to turn the touchpad on/off 14:44:05 could be useful when typing 14:44:08 alise, and Fn-PgUp (turn on keyboard light thingy above screen) doesn't generate any key event (other Fn+* generates key events) 14:44:15 but that is one key event for fn+whatever 14:44:21 not one for fn and one for whatever 14:44:41 scarf: but I'm used to mouse-based OSs, so I'd be hitting it every few seconds 14:44:48 admittdly myabe not as much, because the trackpad is kind of crap 14:44:50 *maybe 14:44:58 so I'll probably adapt 14:44:58 *admittedly 14:45:14 Its complete silence most of the time freaks me out to no end 14:45:19 scarf, alas, that is one thing annoying me, there is a turn touchpad off thingy for mine. But under linux that disables touchpad, touchpad buttons, and *trackpoint buttons* 14:45:23 TALK TO ME COMPUTER 14:45:28 only the trackpoint itself is left enabled 14:45:33 making it completely useless 14:45:42 (I want to have the trackpoint buttons left enabled of course! 14:45:45 ) 14:45:49 Bind'em to some key combo :P 14:45:59 AnMaster: you use it while typing, to avoid clicking by mistake 14:46:20 scarf, yes but hitting the buttons for the trackpoint is rather hard 14:46:45 scarf, the issue I have is "palm on touchpad" 14:46:53 not "palm on trackpoint buttons" 14:47:03 for me, it's the base of the thumb 14:47:24 well, yes, base of thumb/palm, somewhat the overlap 14:47:28 scarf: I like how there's a ridge on the caps lock key, except the keys are so flat anyway that it doesn't stop any mistakes whatsoever 14:47:29 I'm surprised by how thin and light this thing is for the price 14:47:30 Probably as thin as a MacBook 14:47:45 scarf, fiddling with the palm detection setting in the synaptics config tool helped somewhat 14:48:08 alise: yes, heh 14:48:21 are you planning to swap caps lock and control? I haven't, maybe I should 14:48:23 alise, that ridge: same on mine 14:48:23 All in all I'm rather happy with my first venture into laptop-land, and PC-laptop-land at that. 14:48:55 alise, at least the windows key is quite flat 14:48:56 scarf: Why does every single key have a tiny ridge, I wonder? 14:48:57 I might just disable caps lock entirely 14:48:58 AnMaster: Yes, but even moreso on this laptop: The key travel is <10mm 14:48:59 I'm sure 14:48:59 More like 5? 14:49:01 and not as horrible as on desktop keyboards 14:49:06 Totally flat here. 14:49:07 alise, ah... 14:49:36 alise: probably to make them easier to separate after manufacturing them 14:49:41 Apparently this thing is designed for the thin/light/battery sort of market 14:49:43 So it's rather flat all over 14:49:55 and I'm used to a key travel that small; it feels like a lot of effort to push keys on a desktop 14:50:03 you can still feel the travel, even though it's a small one 14:50:40 alise, the diff here is maybe 1-2 mm for the ridge thingy. Key travel is... uh about twice the height of the key cap itself. That is when I press down the key fully, the top of it is roughly at the same level as the lower edge of the key caps around it 14:50:42 Yes, but I've used a scissor-switch board and even that had more key travel 14:50:46 (It was almost flat itself) 14:50:50 which would make it 5 mm maybe? 14:50:50 even the other laptops I tried had much more travel 14:50:52 I'm not complaining; it's just weird. 14:50:58 maybe 6-7? 14:51:18 in any case, it is quite okay to type on if you are used to a full size pc keyboard 14:51:38 -!- kar8nga has joined. 14:51:47 This thing doesn't even travel the depth of the very thin keycaps 14:51:49 *keycap 14:51:51 I bet any less travel and you couldnt 14:51:53 make it reliable 14:52:03 heh 14:52:43 alise, are the main area of the keys (alphanumeric, shift, enter, backspace, tab, caps lock) "full sized"? 14:52:58 well apart from height of course 14:53:15 -!- oklopol has joined. 14:53:42 also I don't get how anyone can live with less than 15" on a laptop that is used for extended periods... 14:53:51 I mean, 15" is somewhat cramped 14:55:16 The screen on this thing is very nice despite being glossy. 14:55:16 I'm using it in sunlight now and it's completely legible 14:55:49 laptop screens tend to work rather nicely in sunlight, I find 14:56:02 AnMaster: I use 11", and have for months 14:56:41 scarf, I know 14:56:56 * AnMaster considers a toughbook 14:57:06 of course it wouldn't be really nice to use 14:57:11 but it would last forever 14:59:38 -!- alise has quit (Ping timeout: 252 seconds). 15:02:46 -!- BeholdMyGlory has quit (*.net *.split). 15:08:12 -!- BeholdMyGlory has joined. 15:08:37 -!- jcp has joined. 15:24:27 -!- Yda-84 has joined. 15:25:01 O:-) 15:25:05 -!- Yda-84 has left (?). 15:31:08 -!- cbrowne has quit (Ping timeout: 256 seconds). 15:41:09 -!- cpressey has joined. 15:44:53 -!- alise has joined. 15:45:08 IRCing from inside a taxi: The most unreliable activity ever. 15:45:18 I wonder if this connection is even still working after the five seconds I've ben connectd. 15:45:21 *been, *connected 15:45:25 Someone pong. 15:45:30 alise pong 15:45:34 Woot. 15:46:14 Typing is not the easiest thing 15:47:25 Yay! "Inside a taxi" is the second best thing to "A truckstop outside El Paso". 15:47:26 But nerdery must transcend such petty constraints AAH GOD A CORNER 15:47:39 where are you going alise? 15:47:40 This taxi never stops. I am constantly in motion! 15:48:08 Heh, ten points if you get a passer-by at a red traffic light to type somehting 15:48:11 i.e., perpetually motivated! 15:48:11 Take that, physics! 15:48:46 oh god dammit bumpy road 15:48:46 badoing badgoin badoing 15:48:46 hiato: :D 15:49:19 alise: so that's a "there're no traiffic lights where I am" then? 15:49:22 i forsee people living entirely in gigantic housecars in the future 15:49:22 i can see no issues with this 15:49:36 save bathing 15:50:13 there are traffic lights but :P 15:50:13 also, how on earth will bathing be a problem? >_> 15:50:13 there are NO. ISSUES aaaah god corner 15:50:40 my point exactly 15:50:46 i sort of hvae a hard time using the entire keyboard while cornering... 15:51:25 shut UP 15:51:25 also, hi we missed you 15:51:25 (i am ehird) 15:51:35 now imagine your laptop to be a concave vessel, somewhat like a bathtub, but more like a laptop in apperance, less so in function. Now imagine that vessel full of water. Then, cue a red traffic light or an innocent stone in the road 15:51:47 alise: oh, heh, hi - wow, been a while :) 15:52:01 SUP ESOFAGS 15:52:28 Banks' non-Culture Against a dark background novel has (in a very minor part, just barely a mention) these things called "rest mobiles" that sound a bit like that, except that people just (seem to) use them for rest stops when traveling long distances over roads, as opposed to permanent places of habitation. 15:52:56 fizzie: [citation needed] 15:52:59 shut up augur hi 15:53:00 hiato: i see no issues 15:53:07 MissPiggy: ;) 15:53:12 except that if you want to use the water as a keyboard aaah corner 15:53:19 MissPiggy: you're turning into pthag 15:53:23 then it might not be very tactile 15:53:33 augur I doubt that somehow 15:53:37 OR ARE YOU PTHAG?! 15:53:46 augur, is shut up not a valid sentiment? 15:53:52 pthong 15:53:54 no. 15:53:57 pthong :D 15:54:02 almost there bye guys 15:54:11 pthag in a pthong 15:54:18 bye alise 15:54:30 alise: What I'm trying to eventually get to would be the need to start slowing down from the massive top speed of 60 (which is massive, when you consider the vehicle to be a house, or visa versa) about ten minutes prior to when you needed to stop, to avoid spillage (spilage/spiling/spillery and friends) 15:54:34 fizzie: banks! 15:54:36 hiato: "She rendezvoused with a rest-mobile, ramping up into the echoing parking hold of the Air Cushion Vehicle and leaving the car for refuelling while she stretched her legs." (And later she sleeps and eats breakfast on one; then they're not mentioned again.) 15:54:59 fizzie: Project Gutenburg? 15:55:11 hiato: No, just illegal ebook warez nastiness. 15:55:11 * hiato gives +100 points to fizzie for an actual citation 15:55:34 Do you deduct points for the source being of dubious legality?-) 15:55:46 I do now 15:56:10 fizzie: im making a videogame with OCPs :D 15:56:10 but then again, it depends from whom exactly you stole 15:57:38 if it's from me, -1000000000000000.6, if not, S.E.P 15:58:12 I doubt you would have received any royalties from that. I don't exactly know where it came from; it was on this CD. 15:58:18 -!- alise has quit (Ping timeout: 252 seconds). 15:58:25 == S.E.P 15:58:39 Someone has written "v1.0 (17-mar-01) Scanning, layout and quick proofing by 4i Publications" on top of it. 15:59:19 again, S.E.P. Industrial book-spy perhaps? It's all the rage these days 16:01:09 what happened to ais523? 16:01:15 I'm here 16:01:20 just under a different nick 16:01:24 Aha, also did the shuffle 16:01:42 and "ais523" still pings me 16:02:02 really? nice 16:02:17 you can configure many IRC clients to ping on all sorts of words 16:02:22 -!- oklopol has quit (Read error: Connection reset by peer). 16:02:23 mine pings on things like "ais523" and "INTERCAL" 16:02:28 baha 16:02:47 -!- oklopol has joined. 16:02:53 yeah, I guess I never did do man irssi 16:03:24 well, good to know that the comunity is still here, mostly 16:03:50 I use Konversation 16:03:50 hi oklocork 16:04:09 oklopoke I :((( 16:04:37 I looked up the solution to a problem I was doing and the answer was something I should have been able to do ;( 16:04:48 oklopol :D 16:04:52 * augur huggles okl 16:08:24 augur 16:08:30 d you have an ifile.it account 16:08:46 oh god dammit bumpy road <-- I sure hope he has "disk head parks itself based on accelerometer" 16:09:06 AnMaster: the Toshiba Satellite has an incredibly sensitive disk-parker 16:09:11 scarf, oh? 16:09:19 -!- MizardX- has joined. 16:09:20 -!- MizardX- has quit (Changing host). 16:09:21 -!- MizardX- has joined. 16:09:23 it seems like every ten seconds it parks itself, then pops up a little dialog box to let you know it parked 16:09:29 I'm not sure if it does that under Linux too, btw 16:09:32 hm 16:09:40 at least, no dialog box, so I don't know if it's parking 16:09:53 scarf, for thinkpads it needs an user space daemon 16:10:05 which is somewhat irritating as it causes rapid wakeups for polling 16:10:31 I avoid using my thinkpad when moving instead. Always use it on a sturdy table 16:10:34 anyway, he was on webchat, and therefore presumably Windows, and therefore using the autopark 16:11:06 scarf, I guess that wasn't meant as a far fetched joke? 16:11:12 no 16:11:15 (autopark -> automobile park) 16:11:16 I was being serious 16:11:18 (and in a taxi) 16:11:35 no pun intended; in fact, even after your explanation, I don't think there was a pun there 16:11:38 anyone care to look at this and then provide some feedback as to how I'd make this language more self-complete, that is, you should be able to emulate (mostly) an arbitrary piece of the language with other pieces. that means you cant natively have if's, while's and so on, but I'm stuck on argument parsing to methods (though tecnically anonymous methods need not be there and would solve my problem) 16:11:45 http://dpaste.com/168356/ 16:11:46 scarf, very far fetched one 16:12:10 * scarf looks 16:12:28 -!- MizardX has quit (Ping timeout: 276 seconds). 16:12:47 -!- MizardX- has changed nick to MizardX. 16:13:36 oh, and if you do look, ignore the code at the end, as that all depends on how arguments are parsed (if at all) 16:13:50 hiato: wow, that's a confusing language 16:13:59 :P 16:14:04 I applaud you for not just making more BF-derivatives, like most people do 16:14:17 I'll be happy to shed some light though 16:14:19 thanks :) 16:14:22 * MissPiggy made one hates ipile 16:16:15 hiato, for cell.(Q) better specify charset 16:16:45 hiato, or would it use the native one? Say EBCDIC on such a machine? 16:17:31 AnMaster: I'm not sure I understand what you mean? In this case, cell.(Q) is using Q as a literal, base 10 number 16:17:40 cell.X, however, could be confusing 16:17:50 hiato, so how does " "$()" is equivalent to 2369577 through this system" work? 16:17:57 hiato, how is that encoded? 16:17:59 ASCII? 16:18:04 Heh, figured it was vague 16:18:04 yep 16:18:08 if so that should be explicitly mentioned 16:18:20 encode as ASCII, then take those bytes as a standard number 16:18:27 ok, thanks, will mark that 16:18:33 hiato, why not UTF-8? 16:18:55 hiato, otherwise how would you encode a cell named å←→µ 16:19:00 For simplicity, really, but there is no real reason. Though, I guess it will also inflate the nubmers significantly 16:19:04 true, fair enough 16:19:27 hiato, for UTF-8, the lower 127 ASCII bytes would encode the same way 16:19:47 only some other things, such as that example would encode larger 16:19:48 though the argument could go that å##µ is merely a sequence of bytes that when grouped to the nearest 8 bits, would still yield a number that is unique for that string 16:19:52 wait 16:19:57 hm 16:20:01 it would work in fact 16:20:12 hiato, that wasn't ## in the middle 16:20:14 that was like: 16:20:16 <--> 16:20:33 I know, but I forget what key makes those arrows :P 16:20:51 and I'm currently not using a utf8 charset in xterm 16:20:59 hiato, AltGr+[yUui] 16:21:26 Ah, right 16:21:50 (though still produces a #) 16:21:57 hiato, yet you found å without iussues, which I thought was hard to type outside Scandinavia plus a few countries 16:23:09 Colemak ;) 16:23:26 mhm 16:24:43 as for the language itself, while handy, do you think that the ability to parse Message -> Anonymous Method -> Destination is needed? 16:25:03 hiato, what does that do 16:25:08 I haven't read the whole spec 16:25:12 if so, how would I implement a non-pattern matching scheme that can be replicatedwith non-anonymouse methods 16:25:17 due to being somewhat tired 16:25:59 right, "a b c" sends message "a" to cell or method "b" and then stores the result (or partial result, or whatever) in cell "c" 16:26:12 hiato, what about threads 16:26:22 hiato, you can do rather nice concurrency with message passing 16:26:31 (see for example the non-esolang erlang) 16:26:58 (which I used for more than one esolang interpreter) 16:26:58 You do like this: $ su -> # rm -f /* 16:27:03 hiato: coincidentally, trying to make pattern matching work with anonymous (unnamed) object is currently what I'm thinking about 16:27:19 cpressey, wrt. befunge-111? 16:27:21 I mean... it needs a name, so the pattern can match it, right? 16:27:28 Frustrating :) 16:27:34 AnMaster: but seriously, I guess I could put it in, but it's besides the point 16:27:40 cpressey: yeah, my predicament exactly 16:27:41 AnMaster: no. 16:27:45 if you find a way, let me know 16:27:58 hiato, just a suggestion, I don't know how well it would fit into things 16:28:00 No patterns in Befunge-111... 16:28:22 cpressey, true. Unless someone goes and spec PATS or something 16:28:41 (pattern matching befunge sounds horrible) 16:28:53 well, there is REXP for posix extended regex 16:29:00 and PCRE sounds like a nice fingerprint name I guess 16:29:06 AnMaster: right, sure, I'm always open to suggestions, but before I make this super complex, I need to work out the message parsing 16:29:19 hiato, right 16:31:30 on the complete flip side, I've also come up with another system that is way way easier. It's ASM like, but only has the commands: XOR, SHR, SHL, JMP. No conditional jumps, no add and friends, but I suspect it's turing complete. Oh, and it only has four registers and can only operate on two bits at a time 16:32:22 is the PC memory-mapped? 16:32:33 oh, no, that's what JMP's for 16:32:38 http://dpaste.com/168372/ 16:32:40 but presumably the program itself is memory-mapped 16:32:44 nope 16:32:57 hiato: have you seen the various OISCs? 16:32:59 no self-modification 16:33:02 scarf: yep 16:33:08 but this is unlike them in every way 16:33:12 there is no complex syntax 16:33:17 or conditional logic 16:33:28 or any logic except for XOR (which is not universal) 16:34:03 but, through careful use of shifts and xors (and the clever trick of treating the registers as stacks), you can do all of what you need (I guess) 16:35:10 hiato: ah, JMP is the unconditional computed jump, Malbolge-style 16:35:57 Er, right 16:35:59 yes 16:36:25 the interesting thing is how to make it conditional 16:36:51 "For example, "J 0,b" will 16:36:52 jump back precisely one insruction iff. the IP is odd, otherwise 16:36:52 forward one if the IP is even. You have been warned. 16:37:11 makes it kind of fun, when using XOR's instead of fixed offsets 16:37:23 it's possible to get by without any conditional jumps at all in a language 16:37:33 by messing with arithmetic 16:37:41 really? 16:37:46 -!- dev_squid has joined. 16:38:29 yep; the idea is, say you have a /lot/ of variables 16:38:32 do you have an example? but, in this case, there is no way of doing anything except applying various XOR masks, which, in this case suggest some ofrm of universitatility for XOR 16:38:45 right 16:39:06 then whenever you would do something, instead of b=a, you do something along the lines of b+=(a-b)*x 16:39:19 where you can turn the command on and off by messing with the value of x 16:39:38 that's the general principle; it would be interesting to see how few commands you can get away with 16:39:43 Right, but in essence you then need to compute all posibilites and "filter" them 16:39:47 yes 16:40:17 also, if it turned out that your language was TC without computed jumps, you wouldn't need SHR either 16:40:23 as instead, you could shift every other variable to the left 16:40:31 and just ignore the bottom bit for the rest of the program 16:40:35 as no command would care 16:40:42 I see what you're saying 16:40:49 which would be a godsend 16:41:11 NAND is probably better than XOR for that sort of thing, as you can implement any other logical operation in terms of it 16:41:29 Yeah, I knew that one, but that's what I wanted to avoid 16:41:35 but I'm not sure if you could get by with just four variables then 16:41:38 XOR is known to not be universal 16:41:46 yep 16:41:58 bceause it can't distinguish between 0 and 1 16:42:05 but with (really) two other commands and just four (or in essence) two variables, it would be enough 16:42:17 right 16:43:19 well actually, going back, because it only operates on the bottom two bits, I would need to keep shr 16:44:36 hmm, yes 16:44:39 -!- dev_squid has quit (Ping timeout: 252 seconds). 16:44:46 and going back further, do you think it would be possible to write a programme in your a*(maybe 0) language that, without needing to evaluate all possibilities, could then write the bit that did need to? 16:44:53 Also, in certain models of computation, XOR is the most complex function possible 16:45:02 (monotone circuits) 16:45:16 cpressey: it's annoying to implement even in hardware 16:45:22 cpressey: well, I have it down for three transistors, two diodes and one resistor 16:45:31 there's a reason people talk about NAND rather than NOR as universal, which is that you can do NAND with just the one transistor 16:45:46 hiato: DTL is pretty much an abandoned logic format nowadays 16:45:49 Mixing transistors and diodes -- nice. 16:45:54 not in my world :) 16:46:04 I can't remember why, but it was suboptimal somehow 16:46:18 I imagine it takes a bit more power to drive 16:46:21 yeah 16:46:24 was jsut about to say 16:46:52 as well as running into issues with a negative bias vs ground 16:47:11 oh, it's slower, takes up more silicon space, and requires three power rails 16:47:19 there we are 16:47:25 the last isn't quite an idea-killer, but the first two are 16:47:37 but, for a hobby project, i cant see the fuss 16:47:54 what does DTL stand for? 16:48:02 (which, might I add, is what SHI-3 is for, I wanted to build a RISC cpu) 16:48:10 Diode-Transistor Logic 16:48:20 ah 16:48:57 -!- hiato has quit (Quit: Lost terminal). 16:49:06 hmm, it seems practical NAND gates need at least two transistors 16:50:01 oh? 16:50:54 -!- hiato has joined. 16:51:10 goddamn power failures 16:51:23 keep tripping the router 16:51:28 * hiato kisses his ups 16:52:39 hiato, you need to put the router out of where you walk then 16:52:46 of of the way of* 16:53:00 AnMaster: heh 16:53:19 interesting: 08:48:57 --- quit: hiato (Quit: Lost terminal) 16:53:28 what does that mean? 16:55:08 hiato: it means that the terminal that the client was running in closed, or it thought it did 16:55:15 it's likely the client's response to a SIGHUP 16:58:14 ah, right, thanks 16:58:45 MissPiggy: noone needs an ifile.it account 16:59:06 augur, I made one 16:59:11 why? 16:59:13 it was quite difficult but I managed i 16:59:21 I had to, to steal a book from the internet 16:59:26 no you dont 17:02:01 -!- tombom has joined. 17:02:36 okay 17:02:43 I don't know how to do it without an account 17:02:50 -!- MaXo2 has quit (Ping timeout: 248 seconds). 17:02:55 are you SEARCHING using ifileit? 17:02:59 or just downloading? 17:03:14 no 17:03:34 because if you search through gigapedia you dont need an ifileit account to download 17:03:47 augur: okdponafpdunoadpounyafpdunyofpdoun 17:03:53 wut 17:05:20 -!- rishi__ has joined. 17:05:34 That sounds like a good name for an esolang 17:09:48 -!- rishi__ has left (?). 17:10:44 -!- scarf_ has joined. 17:11:03 -!- scarf_ has changed nick to ais523. 17:12:33 -!- scarf has quit (Ping timeout: 265 seconds). 17:25:40 Anybody have any new suggestions for what I do with the domain name sibeli.us? 17:26:13 Prokofiev fan site 17:26:27 Ooooooh, burn to the S-man :P 17:28:54 Well, it was intended more as an act of dada, than as a burn. 17:30:12 But since you mention it, I've never cared for Sibelius much. 17:31:09 -!- oklokok has joined. 17:31:15 -!- oklopol has quit (Ping timeout: 240 seconds). 17:32:02 -!- Asztal has joined. 17:33:54 -!- ais523 has changed nick to scarf. 17:34:45 And since I am open-minded, I'm listening to a Sibelius concerto via youtube right now. 17:35:54 -!- scarf has changed nick to ais523. 17:36:05 -!- tombom_ has joined. 17:37:03 -!- tombom has quit (Ping timeout: 240 seconds). 17:39:49 -!- oklokok has quit (Ping timeout: 264 seconds). 17:39:55 -!- oklofok has joined. 17:44:57 -!- oklofok has quit (Ping timeout: 276 seconds). 17:45:11 And it's not doing much for me. 17:45:15 Because I have taste. 17:45:16 OH 17:45:21 There's the burn. 17:46:29 A friend suggested a Sibelius-themed Generic Music Idol Band Hero Game 17:46:34 * cpressey notes that maxbru.ch is also available 17:46:53 Unfortunately, I'm not Ch(inese?) 17:47:01 china's .cn 17:47:31 I'm not (reverse domain lookup of .ch)ish. 17:47:35 -!- oklokok has joined. 17:47:41 Swiss, apparently. 17:50:17 I wonder which language Swiss reduces to 'ch' in ... 17:51:09 probably Swiss 17:51:20 if they have a language of their own 17:52:08 I think there's some old native language nobody speaks there, but they usually speak German, French and/or Italian (?) 17:52:11 It stands for "Confoederatio Helvetica" 17:52:32 Which is, uh. Latin. 17:52:44 dedicated to stamping out Arial! 17:52:52 cpressey: Oh, naturally :P 17:53:01 ais523: LOL. 17:53:16 And keep in mind, I never write "LOL" unless I actually laugh out loud. 17:53:22 And do you have to be Swiss to own a .ch domain, or can we actually get maxbru.ch? 17:53:47 cpressey: yay, another sacred defender of the meaning of the acronym LOL! 17:54:04 I hardly ever use it even if I do laugh out loud, because people wouldn't know what I meant 17:54:07 I generally use it that way, but I also laugh an embarrassing amount ... 17:54:21 I never write ROFL unless I actually roll on the floor laughing 17:54:27 ais523: *And*, I am in a cube at work, where it is currently pretty quiet. 17:54:34 and I never write IMHO unless my opinion is actually humble 17:54:41 lament: I don't think I've ever rolled on the floor laughing 17:54:50 I never write lollercoptahs unless I have actually turned into an anthropomorphic laughing helicopter. 17:54:53 i might have 17:54:58 loooool 17:55:08 Gregor: trying very hard not to LOL. 17:55:13 anthropololic 17:56:08 cpressey: same here 17:56:13 and I would get in trouble for doing it in this office 17:56:22 a lolita is a small feminine lol 17:56:29 lol 17:56:44 lament: X-D 17:57:22 lament: Brilliance. 18:01:37 lament: Oh, so you never write IMHO at all then? :) 18:02:36 I just use IMO, it's a lot more neutral 18:02:38 According to this bottle of Coke, I could win eighth notes, dollar signs or Tickets (with a capital 'T', because this is German) 18:02:40 cpressey: His opinions are not humble. 18:02:43 IMHO/IMNSHO are just pretentious 18:02:56 Gregor: is an eighth note 12.5¢? 18:02:56 IMHO, they are not pretentious. 18:03:01 pikhq: That was the implication, yes. 18:03:17 IMHO comes out a bit more naturally after studying Japanese. 18:03:27 Imm-ho 18:03:51 In my haughty opinion 18:04:01 In my naughty opinion 18:04:03 As do things like saying "probably" even when you're damned sure of something. 18:04:23 The Earth is probably round. 18:05:46 ... In sufficiently formal Japanese, that sentence would be said. 【お世界は丸そうでございます。」 18:06:01 ... s/【/「/ 18:06:21 http://www.toxel.com/tech/2010/03/04/cool-water-powered-jet-pack/ 18:06:23 in Japanese, being impolite is grammatically incorrect, isn't it? 18:06:30 ais523: No. 18:06:45 The impolite form of that is 世界が丸そう。 18:06:50 ais523: politeness is meaningless if impoliteness is impossible 18:07:08 And since I am open-minded, I'm listening to a Sibelius concerto via youtube right now. <-- always found Sibelius somewhat "heavy" 18:07:09 Erm. 18:07:12 hmm 18:07:15 世界が丸い。 18:07:34 hm I can't really express what I mean in English 18:07:44 So yeah, I guess since nobody's made any useful suggestions, I'll be makin' that Sibelius-themed Generic Music Idol Band Hero Game 18:07:45 (literal translation of the polite sentence: The humble world, would appear to most humbly be round.) 18:07:53 ais523: the whole point of etiquette is that you're polite to your superiors, and they aren't polite to you 18:09:02 pikhq: after i give a rigorous proof for something, i often add "or something like that" 18:09:29 oklokok: What should I do with the domain name sibeli.us? 18:09:55 Gregor: use it for the debonairly boorish fugues, etc 18:10:22 oklokok: Heheh. 18:11:10 IMHO/IMNSHO are just pretentious <-- I prefer IMPBPNHO 18:11:34 (not really) 18:12:00 Gregor: are you a big fan of sib? 18:12:03 In my Peanut-Butter-Porn Not Humble Opinion 18:12:25 oklokok: I am a neutral-to-moderate fan of Sibelius. 18:12:43 Gregor, I invoke rule 34 on that domain! 18:12:51 EWWWWW 18:12:52 i probably know much less about his works than you, i'm a bit patriotically challenged 18:12:53 what have I done... 18:13:32 OK, Sibelius-themed Generic Music Idol Band Hero Game it is :P 18:13:46 I just don't like his music. Too heavy and too melancholic 18:14:07 Then I'm sure you hate my music :P 18:14:21 Gregor, not really, yours is somewhat technically interesting 18:14:27 Sibelius is not 18:14:35 Gregor, if it wasn 18:14:58 wasn't* for the technical interesting parts of Liszt and Paganini I wouldn't really like those 18:15:02 as it is, I do like them 18:15:19 same reason i like your mom 18:15:31 ... wow. 18:15:43 lament, I can't think of any snappy reply to that one... 18:16:01 "Your mom is technically interesting" is ... maybe not an insult? Idonno. 18:16:18 Gregor, I have no clue 18:16:23 I don't like it either way I think 18:16:25 For the same reasons that I'm not a fan of his music, he makes a good subject for an Orchestra Hero game or whatever 18:16:44 cpressey, yeah, I would hate to see Kraus or Mozart subjected to that 18:16:44 cpressey: Now that's actually a compelling argument ... 18:16:49 Or Vivaldi 18:17:08 Gregor, so do you like Sibelius or not? 18:17:52 I am a neutral-to-moderate fan of Sibelius. His music is not amongst the somewhat small selection I listen to regularly, because I don't like him enough for that, but he's well over the dislike line. 18:18:32 Can't a guy have neutral opinions around here? P 18:18:33 *:P 18:19:26 maybe he can. 18:19:41 but then again, maybe not. It doesn't really matter. 18:19:47 imo 18:19:49 -!- Gregor has set topic: "Gwandocu (n): Extremely strong evidence, far beyond a reasonable doubt." | alise sighting counter currently out of sequence | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 18:20:12 Gregor, what about Schönberg? 18:20:17 it sounds like the thing you would like 18:20:34 I don't have a mental picture of his music off-hand, so Idonno. 18:20:47 And there is no .rg as far as I know anyway ;) 18:20:49 Gregor, disharmonic 18:21:00 Gregor, 12 tone scale and all that 18:21:24 http://en.wikipedia.org/wiki/Twelve-tone_technique 18:21:53 pdqba.ch is available :P 18:22:03 Gregor, yeargh 18:22:11 Gregor, is there .rt? 18:22:16 moza.rt 18:22:21 vival.di? 18:22:22 Already checked. 18:22:27 Gregor, hay.dn? 18:22:40 Gregor, hand.el? 18:22:40 Besides, these names are all too famous, they'd certainly have been bought. 18:23:08 Also, most national domains have restrictions with regards to citizenship :P 18:23:21 Which has the amusing effect that a Finn can't actually own the domain sibeli.us :P 18:23:28 kra.us (please don't do something bad with it. Joseph Martin Kraus is my all time favourite composer!) 18:23:46 Gregor, ^ 18:23:53 AnMaster: Squatted 18:24:01 mhm 18:26:07 Gregor, beethov.en? 18:26:11 is that a valid tld? 18:26:34 Doesn't eem to be. 18:26:37 *seem 18:26:42 poser.com 18:26:45 They would probably avoid it because people would think it was England. 18:26:49 Gregor, schuma.nn ! 18:26:57 Gregor, I really think his music is boring 18:27:09 The great nation of Nnonninnonn 18:27:11 sure, quite okay, but nothing really interesting 18:27:11 over here in England, we know that England doesn't have a TLD to itself 18:27:24 Gregor, it could be Netherlands or something... 18:27:29 Because England wurves Scotland, Wales and North Ireland so much :P 18:27:43 Also Gibraltar and the Island of Mann if I recall 18:28:30 Nope, wrong on all regards :P 18:28:34 Gregor, what about those two small islands in the English channel? 18:28:37 Spelling, TLD, membership in the UK :P 18:28:47 .ski? or .ki? 18:29:05 okay .ski would be a nice TLD 18:29:10 The only three-letter TLDs are the US ones and the generic ones, so you'd know it if it existed :P 18:29:15 imagine: imperative.ski 18:29:20 XD 18:29:24 bugger 18:29:33 hiato, ? 18:29:42 AnMaster, ? 18:29:50 why bugger 18:30:00 hiato, you gave us a great idea in the TLD discussion 18:30:00 I wanted tchaikov.ski 18:30:03 ah 18:30:03 (yaeh, I know) 18:30:04 :/ 18:30:25 or ru.ski 18:30:29 har 18:31:09 Gregor, btw .nu fills the same function in Sweden as .to does in English speaking countries (not exact same meaning, but equal large interest in it) 18:31:19 (sv:nu = en:now) 18:31:40 net means no in russian 18:31:54 mhm 18:31:55 several sites use that, like "no cockroaches" and "no beer" 18:32:23 I'm sure it's spelled differently though, isn't it pronounced "nyet"? 18:32:58 and, in Afrikaans/Dutch(German?) net means only 18:33:03 nʲet in IPA, net in translit 18:33:09 right 18:33:26 er, the vowel in IPA is wrong i'm sure, i don't really know it 18:33:59 well, neither do I, so you're right no matter what 18:34:55 AnMaster: it must be said that I only got the .ski joke now, wow, completely unintended on my behalf :P 18:35:26 heh 18:35:33 .ki are $900/year 18:35:36 but nicely played 18:35:51 * hiato is speechless, but can still make the occasional /me 18:36:00 I wonder what imperative SKI calculus would be like though 18:36:18 ais523, sounds like something for you to design ^ 18:36:20 ;) 18:36:44 maybe 18:36:49 heh, a = s k k "hello" 18:36:50 print a 18:36:55 SKI calculus can be pretty imperative as-is, though 18:36:58 fairly pointless 18:37:14 ais523, hm. What about imperative lambda calculus then? 18:37:25 sa,e 18:37:26 *same 18:37:28 python 18:37:32 Imperative haskell would of course beat most things to "bad idea of year" 18:37:41 hiato, declarative python! 18:37:44 you can compile imperative to haskell easily 18:37:51 ais523, hm 18:37:51 if you couldn't, it wouldn't really be powerful enough to be useful 18:38:02 AnMaster: as if it wasn't chock full of similarly bad ideas :P 18:38:03 admittedly, it usually isn't the best way to write it, but you can if you want to 18:38:14 hiato, I don't think going 18:38:27 *going "up" the scale is wrong 18:38:32 well it could be 18:38:46 but not necessarily so 18:38:55 Heh, [citation needed] 18:39:01 ;) 18:40:04 huh? 18:40:39 Never mind, to much wiki for meh brains today 18:40:49 hiato, of course it would need proper language support. And not be like that "lambdas in C" hack that pikhq did 18:40:55 pikhq, link to it now again? 18:42:18 Lambdas in C? Coincidentally, I have just discovered a marvellous little proof that no god can exist, written in CLambda, which this magin is too narrow to contain 18:42:37 hiato, it was done with some macros + gnu extensions 18:42:49 hiato, closures too btw 18:43:15 iirc it used two gcc extensions: nested functions and statement expressions 18:43:20 I cannot believe waht I'm hearing 18:43:42 hiato, then wait for pikhq to get here, he is in some US timezone 18:43:47 (iirc) 18:43:50 but, I take it, strict evaluation 18:44:03 hiato, ? 18:44:46 as in, writing any lambda expression would be evaluated immeditaely/reduced, irrespecive of whether it was further refernced or applied? 18:45:14 * hiato asks that all further typos be excused 18:45:37 as the way I see it, it's a macro, so it just reduced to some convoluted mess of C code that would execute 18:45:44 hiato, I don't know 18:45:45 AnMaster: Urgh. No no no no. 18:45:51 pikhq, why not? I want to see it 18:45:58 so do I 18:46:01 It's a pain to paste. 18:46:12 pikhq, why not just push a hg repo or whatever with it 18:46:14 somewhere 18:46:18 No hosting. 18:46:22 So send meh ur computerz thro teh interwebz 18:46:29 pikhq, bzr + launchpad? ;P 18:46:41 github is free for minor stuff, no? 18:46:45 Just a sec while I tar it up. 18:46:50 yaya 18:46:50 hiato, but that requires git -_- 18:47:01 Am I missing something? 18:47:31 hiato, yes perhaps: that I think git is the worst dvcs when it comes to user interface. 18:47:38 ah, so this is one of those places that hg >> bza >> svn >> cvs == True 18:47:44 bzr is just so much easier to use 18:47:48 hiato, personally I'm a bzr fan 18:47:53 and what on earth is bza? 18:47:53 darcs? 18:47:58 hiato, try ais523 for that 18:47:59 *bzr 18:48:10 I must say I like hg 18:48:12 hiato, he uses darcs for c-intercal 18:48:15 hiato, hg isn't too bad 18:48:27 it is just git that I have major trouble with 18:48:29 wow, what an elaborate way to waste time 18:48:36 fair enough 18:48:37 hiato, what is? 18:48:42 I'm a darcs fan 18:48:48 darcs <- c-intercal 18:48:51 hiato, oh and rcs. But I rarely run into it 18:48:51 http://filebin.ca/septw/ski.tar.gz 18:48:56 rcs? 18:48:59 There's my SKI interpreter. 18:49:11 it even manages to beat bzr at user interface, and the model is a lot better 18:49:12 Compile with gcc *.c -lgc 18:49:14 I like it too ais523, but hg wins over for me 18:49:14 pikhq, why not compile SKI to C with it? 18:49:24 pikhq, using just a simple converter 18:49:26 Ohoho, interperter? 18:49:26 AnMaster: Didn't bother is all. 18:49:38 -!- MaXo2 has joined. 18:49:57 * AnMaster stores that in ~/irc/esoteric/pikhq 18:50:08 Oh, right. I had been working on making it into a proper Lazy K interpreter. 18:50:19 hiato, lambda.h is the file you want to read 18:50:29 iirc 18:50:35 Yeah. 18:50:41 and closure.h 18:50:48 hm 18:50:49 no 18:51:00 pikhq, what is xgc.h? 18:51:09 so pikhq, you implement lambda and ski? 18:51:15 ah, I was reading main 18:51:17 pikhq, and why does it contain nohup.out? 18:51:18 ... Declares xgc_malloc. 18:51:26 the tarball 18:51:28 AnMaster: Uh. 18:51:31 Accident. 18:51:34 cat nohup.out 18:51:34 Sun VirtualBox Headless Interface 3.1.4_OSE 18:51:34 (C) 2008-2010 Sun Microsystems, Inc. 18:51:34 All rights reserved. 18:51:36 wonderful 18:52:00 pikhq, how does one compile this? 18:52:01 hiato: It's some pretty horrifying code. 18:52:03 there is no makefile 18:52:11 AnMaster: gcc *.c -lgc 18:52:21 pikhq, although I can barely make the outline of how you've done this, I am impressed 18:52:52 and only two warnings :) 18:52:53 hiato: It's pretty easy. I implement Lazy K's semantics naively. 18:53:03 :) 18:53:13 pikhq, btw do not try it with -pedantic 18:53:15 * hiato goes to do some research 18:53:29 $ gcc -pedantic -std=gnu99 *.c -lgc -Wall -Wextra 2>&1 | grep warning | wc -l 18:53:29 132 18:53:54 (resulted in errors without that -std=gnu99) 18:53:55 nice 18:54:02 Yes, -pedantic warns about every single GNU extension. 18:54:05 (I guess gnu89 could have worked too, didn't try it) 18:54:15 And this code is mostly GNU extensions.\ 18:54:17 $ gcc -std=gnu99 *.c -lgc -Wall -Wextra 2>&1 | grep warning | wc -l 18:54:18 16 18:54:20 * Gregor always uses -ansi -pedantic >:) 18:54:21 a lot of those too 18:54:42 Gregor, I use 18:55:10 cplof's test cases fail if it doesn't build with -Wall -Werror -ansi -pedantic -DFAKE_JUMPS 18:55:14 Also, note that the definition of lambdas here could easily *break at any time*. Those functions are not guaranteed to exist by the GCC documentation. 18:55:22 -std=c99 -Wall -Wextra -pedantic -Wwrite-strings -Wcast-align -Wcast-qual -Wbad-function-cast -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wold-style-definition -Wredundant-decls -Wnested-externs -Wdeclaration-after-statement -Wshadow -Wundef -Wpacked -Wfloat-equal -Wstrict-aliasing=2 -Wformat=2 -Wmissing-noreturn -Wmissing-format-attribute -Winit-self -Wunsafe-loop-optimizations - 18:55:22 Wmissing-include-dirs -Wunused-parameter -Wunused-function -Wunused-label -Wunused-value -Wunused-variable -Wimplicit -Wparentheses -Wpointer-arith -fno-math-errno -fno-trapping-math 18:55:24 Gregor, there ! 18:55:39 that excludes some -D 18:55:42 AnMaster: Do you know what -Wall means? 18:55:50 (it claims that the functions are entirely on the stack. In reality, the trampoline that GCC compiles if needed is on the stack.) 18:55:50 Gregor, XD 18:55:58 Gregor: -Wall does not enable all warning. 18:56:00 Erm. Warnings. 18:56:11 Though I'm pretty sure he has redundancy going there. 18:56:18 pikhq, not for old gcc versions 18:56:24 pikhq, I support down to gcc 3.4 18:56:32 why? 18:56:41 pikhq, it checks which ones are supported by the compiler 18:56:45 Mmm. 18:56:49 Maybe I should add -Wextra to cplof's test case :P 18:56:52 pikhq, yes this yeilds some redundancy, but nothing to worry about 18:57:55 Gregor, I would strongly recommend at least -pedantic -Wall -Wextra -Wformat=2 -Wwrite-strings 18:58:34 Gregor, defines include: -D_POSIX_C_SOURCE=200112L -D_XOPEN_SOURCE=600 18:59:33 Gregor, I'm unlikely to switch to POSIX 2008 yet 18:59:42 but that might happen before I drop gcc 3.4 support 19:01:01 -Wextra includes warnings for unused PARAMETERS 19:01:04 That's completely stupid 19:01:08 Gregor, no 19:01:11 I find that useful 19:01:25 I write dozens of functions that are compatible with a single interface. 19:01:26 Gregor, I use an attribute for the three or so cases where I actually want it to be unused 19:01:36 Gregor, well add -Wno-unused-parameters then 19:01:38 (iirc) 19:01:45 (not sure about the exact spelling) 19:01:53 (check your local man gcc) 19:02:07 I'm gonna stick with -Wall -Werror -ansi -pedantic :P 19:02:15 Incidentally, I also compile with OpenWatcom for 32-bit DOS. 19:02:22 Gregor, -Wwrite-strings! 19:02:34 Gregor, that makes sure you don't do things like: 19:02:35 I don't even use any bloody strings :P 19:02:40 char* foo = "bar"; 19:02:46 mkstemp(foo); 19:03:03 (you need to have it writable for there) 19:03:14 (besides, proper const usage helps the optimiser) 19:05:06 why? <-- why what? 19:05:37 In actuality, the real problem with -Wwrite-strings for cplof is that I cast everything into unsigned char *, and casting away constness explicitly is presumably still considered "OK" 19:05:52 Gregor, there is another warning for that 19:06:03 Gregor, -Wcast-qual I think 19:07:22 Gregor, anyway I find that set of warnings very nice for cfunge. 19:08:01 AnMaster: never mind, it was a way back, and thanks to the wonders of lag, in the wrong place 19:08:24 * Ping reply from hiato: 2.20 second(s) <-- bad, but not excessively so 19:11:53 Heh, nice touch 19:12:04 -!- dev_squid has joined. 19:12:06 http://codu.org/music/op12/GRegor-op12-wipp2.ogg , lest I never mentioned it here >_> 19:13:15 AnMaster: it was for pikhq, when he said the definition could break at any time, and my log shows: 20:52 < pikhq> Also, note that the ..... 20:53 < hiato> why? 19:13:21 so within the margin of error :P 19:14:15 Hi guys. 19:14:37 Gregor, "wipp"? 19:14:43 Greetings from beyond the /dev/null 19:14:44 Work In Progress Preview 19:15:02 Gregor, should name it op12.-2 or such 19:15:08 (clc-intercal style) 19:15:29 My original naming convention was beta 1, beta 2 etc, but somebody pointed out justly that that's a bit computery for music :P 19:15:40 hiato, aargh did someone fill the bit bucket now again? 19:15:43 Especially for music which is relatively acoustic. 19:16:11 Gregor, I don't see anything wrong with it 19:16:21 Yeah, but you're a person on #esoteric :P 19:16:59 http://en.wikipedia.org/wiki/Beta#Common_uses <-- template fail 19:17:01 -_- 19:17:32 AnMaster: That template is in beta. 19:18:33 augh 19:19:07 AnMaster: what does that mean? 19:22:20 hiato, what bit? 19:22:25 "augh"? 19:22:42 heh, did someone fill the bit bucket now again? 19:23:03 hiato, oh that. ask ais523 he can explain it and I'm somewhat busy 19:23:08 s/,/"/ and s/$/"/ 19:23:21 ah, right 19:23:21 or see http://en.wikipedia.org/wiki/Bit_bucket 19:23:47 kthnx,srydood.srsly 19:26:19 Gregor, I like that op12-wipp2 around 10:58-11:30 especially! 19:26:35 * AnMaster hasn't finished listening to it yet 19:28:06 Gregor: what do you compose with? 19:28:27 Gregor, is this recorded or synthed? 19:28:33 if synthed, what soundfont 19:28:48 hiato, unless I misremember: rosegarden 19:29:06 Right 19:29:15 I must be the only kiddy who plays with lmms 19:29:20 -!- dev_squid has quit (Ping timeout: 265 seconds). 19:29:28 hiato, what is lmms? 19:29:39 hiato, rosegarden is FOSS in case you didn't know 19:30:00 Naah, I did. Linux Multimedia Studio 19:30:06 *MultiMedia 19:30:09 or something 19:30:10 * AnMaster used rosegaden a bit. 19:30:16 AnMaster: It is recorded and synthed :P 19:30:18 the real PITA is jack 19:30:19 In that I have a digital piano. 19:30:23 Gregor, ah 19:30:27 I haven't actually tried a midi tracker 19:30:31 Gregor, not recorded with a mic then 19:30:35 No. 19:30:45 hiato, tracker is wrong word for what I use rosegraden for at least 19:31:05 Gregor, what soundfont though? 19:31:34 Steinway IMIS or something like that, one sec. 19:32:29 AnMaster, what would you call it? 19:32:35 ftp://musix.ourproject.org/pub/musix/sf2/Steinway_IMIS2.2/Steinway_IMIS2.2.sf2.bz2 19:32:43 Gregor, free? 19:32:55 Quite 19:33:08 Gregor, was it the one where ehird commented upon the silly site header? 19:33:21 No :P 19:33:27 AFAIK this one exists only in ftp, no web site. 19:33:31 ah 19:33:39 Gregor, so is this one better or worse in your opinion 19:33:44 Better. 19:33:45 Much. 19:33:49 It is a truly outstanding soundfont. 19:33:50 Gregor, also what tool do you use for the actual synthing? 19:33:55 fluidsynth 19:33:57 AnMaster: I made this today as a tribute to 8bp, using lmms: did someone fill the bit bucket now again? 19:34:05 yugh, wrong clipboard 19:34:06 Gregor, hm I never got that to work reliably 19:34:10 http://www.mediafire.com/?zgmc4dlmcnl 19:34:16 fluidsynth is hugely buggy and terrible. 19:34:20 But when it does work, it's quite nice :P 19:34:26 Gregor, how do you use it them 19:34:27 then* 19:34:58 hiato, how do I actually access the file from there? There is no download link as far as I can see here in w3m 19:34:59 AnMaster: For just piano it's quite simple: fluidsynth -l -F output.wav my.sf2 my.mid 19:35:10 hm 19:35:21 Gregor, that download is slow: 19:35:23 0% [ ] 110 880 --.-K/s eta 5h 42m 19:35:25 Gregor, ^ 19:35:25 :( 19:35:31 hiato: you should title it "did someone fill the bit bucket now again?" 19:35:43 er, AnMaster, i think it needs js 19:35:48 AnMaster: I have no control of that download site :P 19:35:51 cpressey: that is oddly appropriate 19:35:51 hiato, I don't do js 19:36:05 well, I can't think of another host atm 19:36:10 Gregor, care to put your local copy somewhere I can get it reasonably soon? 19:36:21 AnMaster: http://download568.mediafire.com/bmxwgiuhbz1g/zgmc4dlmcnl/new_maybe.ogg 19:36:23 Fleh 19:36:27 Gregor, thanks 19:36:31 maybe my session is valid for you 19:36:43 hiato, seems to work 19:36:55 :) 19:37:24 arg, wait, it can't be working 19:37:36 hiato, oh? 19:37:59 hiato, is 3107b155456ce6cc6e811df2ff78a59989a9f2eae38b4b7a70f7a124ab0a55d2e9b4e0763ce037008b9580c162c189a63b58fdfc2346f80f6890c76dbda99b35 the correct sha512sum? 19:38:04 yeah, the file doesn't exist (wrong title), so I donno what it's givin you 19:38:16 AnMaster: http://download732.mediafire.com/y1nmiltmhndg/qwnwkqt1ynn/lmms_1.ogg 19:38:17 AnMaster: Query 19:38:20 lemme check 19:38:50 hiato, gave me a html file http://download732.mediafire.com/y1nmiltmhndg/qwnwkqt1ynn/lmms_1.ogg 19:38:53 at that one 19:39:00 wha? 19:39:41 http://download732.mediafire.com/y1nmiltmhndg/qwnwkqt1ynn/lmms_1.ogg ? 19:39:52 That's the only link I can get 19:40:08 hiato, gives me the download page 19:40:18 hiato, but was the sha512sum correct? 19:40:51 b9004fc3e3d9d3009ad6f58b8669fb1f897dd2e4097aac1fb4b65310d8bc80756e9eda2c6b4178137b3e71fd809941630266335d4ee4a145de8928d5d08fa645 19:40:58 doesn't look right 19:41:03 mediafire = fail 19:41:16 they gave you a file that, according to my log, was deleted last year 19:41:25 new_maybe.ogg? 19:42:28 let me try once more 19:43:57 hiato, why not filebin? 19:44:18 didn't know about it 19:44:48 dot org/ca? 19:45:02 ok, one more try if you don't mind: http://download732.mediafire.com/rw9smzsgbztg/qwnwkqt1ynn/lmms_1.ogg 19:46:04 hiato, .ca is the one I usually use 19:46:12 hiato, seems to work 19:46:17 finally 19:46:18 well, hasn't finished downloading yet 19:46:56 hiato, b9004fc3e3d9d3009ad6f58b8669fb1f897dd2e4097aac1fb4b65310d8bc80756e9eda2c6b4178137b3e71fd809941630266335d4ee4a145de8928d5d08fa645? 19:47:02 heh, well, mediafire's sessions aren't supposed to be this abused. I had to track down the response to activate the download and kill it, then I guess the id was left open 19:47:07 yep 19:47:08 :) 19:47:24 hiato, square waves? 19:47:41 tribute to 8BP ;) 19:47:47 8bitpeoples.com 19:48:06 * AnMaster sends the hospital bill to hiato for this 19:48:26 hiato, I have nothing against things like SID, but this is not like that 19:48:29 haha, it's not that bad, surely 19:48:32 this is too square wave 19:48:48 hiato, the melody isn't bad. I just can't stand square waves 19:48:53 sinus for me please 19:48:56 ah, right 19:49:09 soory, I tend to like them actually 19:49:12 in fact, quite a bit 19:49:28 but, I have very instrumenty stuff too, just decided to experiment 19:50:04 hiato, I'm perfectly fine with things like SID when it doesn't try to sound much more than what it is 19:50:25 hiato, I like classical music and some baroque 19:50:31 mostly viola/violin music 19:50:35 some other too 19:51:04 Ok, fair enough. Well, to be honest the square wave you hate so much I bent out of a SID emulator 19:51:07 (Vivaldi is probably number two all time favourite after Kraus) 19:51:24 hiato, sure, but C64 games tend to not use it quite like that 19:51:30 right, well, I do appreciate the odd violin piece, but I'm much more orchestral 19:51:51 hiato, chamber music for me :) 19:51:55 medelhsonn etc 19:52:00 Borodiiiiiiin! 19:52:01 Oh noes! not chamber music 19:52:05 BORODIIIIIIIIIIIN 19:52:06 yugh 19:52:07 hiato, why not? 19:52:36 Gregor, why.... 19:52:45 Because Borodin is awesome? 19:52:50 Kraus! 19:52:54 BORODIN! 19:52:55 I just cant stand it. There are a couple of things that I cant stand. Chamber music, water music, most baroque, handel, bach 19:53:03 Gregor, have you listened much to Kraus at all? 19:53:04 Tchaikovsky! Prokofiev! 19:53:11 He was a true genius 19:53:13 AnMaster: A bit, not much, but it's been a while :P 19:53:20 Balakirev! Rimsky-Korsakov! 19:53:36 * pikhq adds Led Zeppelin to the discussion 19:53:38 Gregor has good taste 19:53:40 hiato, Gregor: all the ones you mention (up until Gregor's last line) are fairly well known ones 19:53:51 Kraus is sadly not so well known 19:54:19 yes 19:54:21 buy the complete set from your local Naxos branch today! 19:54:42 -!- dougx has joined. 19:54:43 I think Rimsky-Korsokov was used as a curse word in at least the Finnish translation of Bored of the Rings. 19:54:50 hiato, or at least listen to his C sharp minor sinfonia on youtube 19:54:56 hiato, movement 3 especially 19:55:03 that is the best music I ever listened to 19:55:07 but I also like holst 19:55:15 and on second place comes third movement from Vivaldi's summer 19:55:19 when played fast 19:55:21 goddamn delayed comment 19:55:24 * Sgeo can't believe he's actually reorganizing his bookmarks 19:55:32 Holst??? 19:55:35 Pfff 19:55:39 Nine-hit wonder. 19:55:57 Swap him out for Elgar. 19:55:59 haha 19:56:06 Now Elgar is quite okay to listen to 19:56:14 but not one of the things that you actually go "wow" over 19:56:17 Haven't heard enough of him to decide -> indifference 19:56:19 * Sgeo is in love with Chrome's bookmark manager 19:56:34 while Kraus and Vivaldi are in the "wow, wow, wow" category 19:56:59 PACHELBEL 19:57:03 *stabs self* 19:57:09 aargh stop talking about music 19:57:12 Gregor, yes, except that music is badly overused 19:57:15 Thank you for saving me the effort, Gregor 19:57:17 Now, I forget what this guy's name was, but he did the Gymnopédie and Gnossienne and I love it 19:57:22 lament, there is esolang music too 19:57:27 hiato: Satie 19:57:29 hiato, Satie? 19:57:30 <3 Satie 19:57:33 -!- dev_squid has joined. 19:57:33 yes! 19:57:35 AnMaster: aaargh 19:57:37 hiato, I quite like Satie 19:57:54 lament, there is some esolangs that takes midi as input iirc 19:58:05 Prokofiev is my absolute favorite. 19:58:13 Hm, why do I have a link to a page on /b/ in here? Did I forget that /b/ links tend to die? 19:58:38 cpressey, from what I remember, it is quite... heavy and... "pompöst" (no clue what this is in English) 19:58:41 and, ofc, who can deny the schindlers list theme 19:58:46 aaaargh 19:58:57 AnMaster: "Pompous" 19:59:03 (Presumably) 19:59:07 Gregor, ah 19:59:09 well yeah 19:59:12 satie can go suck it, fuck you for writing music without bar lines 19:59:16 same goes for Borodin 19:59:19 what a jerk really 19:59:27 and *definitely* for Sibelius 19:59:51 OK, how 'bout Ravel then hyuk hyuk 19:59:53 Sibelius sounds like an old man wandering around a house with no idea what he's looking for. 19:59:57 Gregor, the Swedish word has a negative connotation 20:00:07 Gregor, does the English "Pompous" have that? 20:00:11 AnMaster: The English word has negative connotation. 20:00:12 Gregor: Ravel ftw! too bad he only had one real hit 20:00:14 right 20:00:15 and bizet 20:00:21 Gregor, Ravel is all right 20:00:24 but also overplayed 20:00:28 and not balancedly so 20:00:28 Bizet only had one opera worth of hits :P 20:00:37 I quite like some of Ravel's other music 20:00:40 Quality>quantity 20:00:45 also Bizet just wrote operas didn't he? 20:00:56 at least I hardly remember what he wrote 20:01:00 and I don't like operas 20:01:09 (guess if I hate or hate wagner?) 20:01:13 AnMaster: "Pompous" means like "arrogant" -- I don't think of Prokofiev's music as anything like that. 20:01:18 AnMaster, yes, he wrote an opera, and it is good :P 20:01:22 lament, did Satie really do that? 20:01:37 "rimsky-korsikov": http://pastebin.com/qWERDPKM 20:01:42 cpressey, hm. Most russian music sound like that to be 20:01:49 hiato, I just don't like operas! 20:01:55 Mmmm, pompous doesn't /quite/ mean arrogant, but yeah, similar. 20:01:58 hiato, I dislike the singing 20:02:04 And I can see what AnMaster is saying about pompousness in Russian music. 20:02:16 But Russian music is all awesomesauce :P 20:02:17 AnMaster: but that is the point 20:02:18 http://www.youtube.com/watch?v=q0AkO2OTfjA 20:02:23 "rimsky-korsikov": http://pastebin.com/qWERDPKM <-- ? 20:02:39 Gregor: Yeah! I ... er, have ... the red army chior double cd 20:02:52 AnMaster: Just a random act of quotation. 20:03:00 hiato, I have something like that on LP I think 20:03:03 somewhere 20:03:10 didn't buy it myself 20:03:21 and it's brilliant 20:03:30 Well, *of* Russian music, Prokofiev is like the least pompous, I think. 20:03:34 Argh, I was going to mention that composer who was quite popular until everybody started associating him with Nazi Germany, and now his music is super-underplayed, but I can't remember his name ... 20:03:46 hitler? 20:03:54 hiato, well, their rendition of the Internationale is quite impressive! 20:03:57 gah, the SCO court cases are setting my mind on the verge of exploding 20:03:58 (sp?) 20:04:00 Hitler was a fan of his. 20:04:03 then, you get the wonders of Monti in his one favourable piece 20:04:13 Well, *of* Russian music, Prokofiev is like the least pompous, I think. <-- and it is still too much so for me 20:04:21 I prefer not at all pompous music 20:04:35 cpressey, probably why I so much strongly prefer chamber music 20:04:48 AnMaster: Internationale from them moved me the first time I heard it 20:04:50 AnMaster: Understandable. Well, Vivaldi is also in my Top Ten. 20:04:56 full orchestra somehow tends to make music more easily pompous... 20:05:11 you cannot say that tchaikovsky was pompous 20:05:11 hiato, hm 20:05:14 that is a crime 20:05:16 hiato, I do say that 20:05:33 Blasphemer! 20:05:35 And lets just not get started about Mahler! 20:05:40 It's all about twisted structure to me (could you tell from my languages...?), and for that, Prokofiev absolutely frickin rules. At least, to me. 20:05:55 soon you'll say you like strauss or chopan or something 20:05:58 now I think he might even beat Sibelius at being most pompous ever 20:06:07 hiato, which Strauss? 20:06:17 Handel and Chopin are also good stuff. 20:06:17 I quite like some of Chopin's music 20:06:18 AnMaster: you have me stumped 20:06:24 Händel varies 20:06:28 flight of the valkyer strauss, AnMaster 20:06:29 I like part of his music 20:06:35 some less so 20:06:37 the most pompous is obviously vagner 20:06:41 wagner 20:06:47 please, say it isn't so 20:06:49 flight of the valkyer strauss, AnMaster <-- now you are mixing up Strauss and Wagner 20:06:52 eg 20:06:54 I know 20:06:57 I meant blue danube 20:07:03 hiato, and Wagner is *horrible* 20:07:03 I was thinking about wagner though 20:07:06 that is easily worst ever 20:07:07 ever 20:07:09 yes, agreed 20:07:19 hiato, for Strauss, I can't keep them apart really 20:07:23 so can't really answer 20:07:27 i only ever heard one wagner piece and it was pretty awesome (the ouverture to lohengrin) 20:07:28 Wagner is background music for D&D melodrama 20:07:47 cpressey, tabletop? 20:07:54 For that, it makes OK background music, but that's all it is 20:08:02 AnMaster: Ring cycle 20:08:03 cpressey: wagner is bacground music for ww2 melodrama 20:08:09 cpressey, flight of the valkyries doesn't fit anywhere 20:08:14 cpressey, ? 20:08:40 AnMaster: Das Ring Der Niebelungenungenner 20:08:47 cpressey, yes 20:09:04 cpressey, but that last word looks a bit too much extended 20:09:08 out of interest, what's the opion on dvorak here? 20:09:10 Entgegengegangen, my favorite verb. 20:09:27 hiato, okay, quite nice background music 20:09:32 nothing you go "wow" over 20:09:34 anyway, Debussy varies widely. 20:09:36 some is really good 20:09:39 yes, I guess 20:09:40 some is a disaster 20:09:50 Debussy only has one piece worthy of my ears 20:09:52 La Mer is a disaster for example 20:09:56 clarir de lune 20:09:57 Debussy is for falling asleep to 20:10:26 hiato, I would add "The Girl with the Flaxen Hair" to that 20:10:32 meh 20:10:35 Copland, and Britten, otoh... 20:10:49 cpressey, doesn't ring much of bells here 20:10:52 the first slightly 20:10:54 the second none at all 20:11:00 and finally, the last of my idols, the not so classical gershwin 20:11:05 Copland is only known in the US :P 20:11:11 hiato, gershwin is quite nice 20:11:28 also I count classically as the classical period only 20:11:30 well, by apperciating him I can forgive your admiration of chamber music 20:11:35 And sometimes the US is known as Copland, because the Cops here are so ... nice. 20:11:39 the vulgar sense of "classical" music 20:11:44 I call "art music" 20:11:52 interesting 20:11:53 from translating the Swedish word for it 20:11:58 I just call it "music actually worth listening to" :P 20:12:01 -!- whtspc has joined. 20:12:13 Gregor, well I think experimental jazz can be quite okay sometimes 20:12:22 Fair enough. 20:12:32 But yeah, classical music encompasses Haydn to Beethoven, and not much else. 20:12:39 And little of what we've talked about. 20:12:47 debussy is fucking awesome 20:12:53 that is, to me, classic music 20:13:00 classical music, is all of what we mention 20:13:00 Gregor, Beethoven is right at the edge of the classical period though 20:13:05 hiato: obviously you like the arabesque 20:13:07 by debussy 20:13:10 AnMaster: Yeah, he's certainly arguable. 20:13:16 guilty as charged 20:13:17 Gregor, some of his work I would call romantical rather than classical 20:13:28 But that "some" is important :) 20:13:33 lament, I like it, but not something I go "wow" above 20:13:36 about* 20:13:39 AnMaster: you're not hiato 20:13:46 lament, true 20:13:53 I just provided an extra data point 20:13:56 you might actually have some taste 20:14:09 he just claims to like clair de lune, so obviously he must like arabesque as well 20:14:17 lets all agree that Mozart's chamber music is awesome? 20:14:22 especially if for a string quartet 20:14:35 dunno, divertimentos are kinda boring 20:14:52 !Error: does not compute! 20:15:15 i really like the 1st mvt of dissonance quartet, but the others not so much 20:15:17 lament, I quite like the last movement in Eine Kleine Nachtmusik (spelling? The spellchecker should auto detect what I meant!) 20:15:26 oh i never actually heard that :D 20:15:32 Heh 20:15:37 And sheep may safely graze 20:15:54 lament, well, it is one of his most famous pieces of music 20:16:01 AnMaster: only one mvt 20:16:06 lament, which one? 20:16:08 obviously i heard that one 20:16:09 the famous one 20:16:10 fuck 20:16:17 lament, I don't know which one is the famous one! 20:16:31 Suk! 20:16:44 Nobody (outside of the Czech Republic) has heard of Suk :P 20:16:51 http://www.youtube.com/watch?v=cqah1rucyRg <-- IT'S SO AMERICAN! 20:16:51 lament, I'm talking about Rondo: Allegro 20:17:14 cpressey, the title made me decide it wasn't worth the effort to youtube-dl 20:17:20 AnMaster: 1st mvt is the famous one 20:17:29 uh, but the percussion section in the orchestra is kind of fail 20:17:29 lament, all, well, it is kind of okay 20:17:41 lament, but nothing, I repeat *nothing* like the final movement! 20:18:19 lament, the final movement really made me go "wow, wow" the first time I heard it 20:18:32 also what is your opinion on Leopold Mozart? 20:18:42 AnMaster: it's actually a fine piece of music. 20:18:45 IMo of course 20:19:05 cpressey, which one? K525 IV. Rondo? 20:19:10 never heard leopold mozart 20:19:14 * hiato thinks that anyone who checks the logs for today will think that the date must be April 1 20:19:14 AnMaster: the link i sent 20:19:24 * AnMaster wonders how many here has even listened to anything composed by W. A. Mozart's father 20:19:28 * cpressey has almost no opinion on Mozart 20:19:41 Beethoven, otoh 20:19:45 <3 Beethoven 20:19:48 * hiato has never heard of W. Mozart's Father 20:19:53 noooooo! 20:19:54 cpressey, isn't any "wow" 20:20:08 -!- dougx has quit (Quit: Leaving.). 20:20:09 AnMaster: Any Mozart? Um... 20:20:14 hiato, Leopold Mozart. Heard one piece of it 20:20:19 That Turkish March thing is catchy. 20:20:22 beethoven is lame 20:20:28 cpressey, well yes 20:20:33 i hate beethoven 20:20:36 AnMaster: name? 20:20:36 cpressey, I meant Beethoven " cpressey, isn't any "wow"" 20:20:36 what a pretentious dickwad 20:20:37 lament: OK, so let me get this straight. 20:20:41 hiato, who? 20:20:46 cpressey: turkish is wolf mozart 20:20:48 lament: You *like* Debussy and you *don't like* Beethoven. 20:20:50 hiato, oh the piece? Toy Symphony 20:20:55 AnMaster: yeah 20:20:56 hiato, includes some unusual instruments 20:21:01 oh? 20:21:05 cpressey: beethoven is like, omg check out how awesome i am and how much my heroic soul suffers 20:21:12 guess what fuck you dipshit i dont care 20:21:33 cpressey, I have to agree with lament here. Beethoven made some quite nice pieces. But a lot of it is just too heavy and romantical 20:21:48 thirded! (?) 20:22:09 when beethoven is classical, he's worse than mozart 20:22:15 when beethoven is romantic, he's worse than chopin 20:22:19 he's just stuck in this in-between stage 20:22:36 lament, Fur Elise is quite nice though 20:22:58 they used to play an electronic version of it on some radio station here when it wasn't sending 20:22:59 moohlight aynone? 20:23:02 like, during the night 20:23:06 the first opening bars or such 20:23:16 hiato, "meh" 20:23:26 I would say moonlight > fur elise 20:23:28 AnMaster: dcc 20:23:31 I don't get what the fuss is about wrt moonlight 20:23:42 lament, uh, need to unblock it 20:23:46 but that's just becaues, for me, the melody is more "involved" 20:24:07 lament, okay, temporarily unignored dcc 20:24:09 try again 20:24:16 lament, and I'm behind weird NAT 20:24:23 so, I hope it all works on your side 20:24:36 lament, but what are you going to send? 20:24:39 lament: Just wanted to get that straight. 20:24:48 (and when will the dialogue come?) 20:24:50 For the record, I barely consider what Debussy wrote to be music. 20:25:10 cpressey, for La Mer I would agree. For several of his other works I find them very nice 20:25:47 of course even La Mer is *miles* above people like Schönberg (who is *parsecs* above Wagner) 20:25:59 As French composers go, Berlioz or Couperin. 20:26:04 cpressey, Satie! 20:26:07 but back to beethoven, I have this brialliant CD set of Ashkenazy playing some of his piano movements, brilliant the lot. But, then as they progress, you can hear the romantic influences and it gets annoying 20:26:09 Oh right! 20:26:17 I keep forgetting Satie is French. 20:26:18 cpressey, Lizt and Paganini are interesting technically 20:26:26 lament, aren't you going to resend the DCC request then? 20:26:41 lament, as I said it was dropped first time and now I temporarily allowed it 20:26:41 AnMaster: only if you are a violin player 20:26:45 And Schönberg was some very twisted soul who I'll never understand. 20:26:46 hiato, what? 20:26:51 hiato, well, to listen to 20:27:09 Paganinin, I don't find technically interesting, being a saxophonist 20:27:16 lament, it says "connecting..." 20:27:28 lament, sure you opened the ports on your side? 20:27:31 fuck dcc 20:27:32 * DCC RECV connect attempt to lament failed (err=Connection timed out). 20:27:37 oh well 20:27:40 i'm too lazy to upload it 20:27:47 lament, fur elise I see 20:27:53 but what is special about that one 20:28:15 * AnMaster re-enabled *!*@* dcc ignore 20:28:16 cpressey: debussy is stunning at times 20:28:28 lament, agreed. But what about La Mer? 20:28:33 cpressey: you don't like the sunken cathedral? 20:28:35 you can't say that one is stunning can you? 20:28:45 AnMaster: please be more logical and less non-sequitur 20:28:56 lament, wrt what? 20:29:53 * AnMaster never heard the sunken cathedral btw 20:30:06 brb in a few minutes 20:30:45 Checking my playlist now, it seems I listen to brahms more than vivaldi, handel, chopin, mozart, bach, lizt and some others put together 20:30:51 and I don't even like brahms :P 20:31:03 brahms has awesome harmonies 20:31:07 nobody else is even close 20:31:25 well i guess rachmaninoff 20:32:31 Who was it that wrote the Peer Gynt Suite? That, to me, is the greatest (non-Satie) simplistic music 20:32:43 If Beethoven had a suffering, heroic soul, then Debussy had the soul of a lovesick schoolgirl. 20:33:33 * cpressey looks for Sunken Cathedral 20:34:43 hiato: Grieg I think? 20:35:34 Se possible 20:35:59 who, by the way, I think struck it lucky with hall of the mountain king 20:36:32 Kind of a one-hit wonder, yeah, but he wrote a lot of short "character pieces", and what I've heard of the others, he's not too bad. 20:36:54 pf... didn't know about that 20:38:16 Completely forgot. 20:38:32 Mendelssohn 20:38:37 Checking my playlist now, it seems I listen to brahms more than vivaldi, handel, chopin, mozart, bach, lizt and some others put together <-- bramhs? "meh" again 20:38:53 Who was it that wrote the Peer Gynt Suite? That, to me, is the greatest (non-Satie) simplistic music 20:38:58 Grieg is indeed awesome 20:39:26 I listened to the whole Peer Gynt of course 20:39:29 OK, now I can say I have endured the Sunken Cathedral. 20:39:30 quite interesting 20:39:36 cpressey, link? 20:39:41 It's kind of nice... if you like downing. 20:39:56 Or drowning. 20:40:01 Mendelssohn is meh 20:40:07 AnMaster: to which? 20:40:10 medelssohn is genious 20:40:18 cpressey, sunken cathedral 20:40:19 violin concerto in e minor! 20:40:29 I-TAL-ian, I-TAL-ian, dah DAHHH, duh duh duh 20:40:31 hiato, not sure I heard that one. Link? 20:40:39 AnMaster: http://www.youtube.com/watch?v=3geejD5Dksk 20:41:23 cpressey, disharmonic much? 20:41:33 that is the bit I hate about La Mer 20:41:37 well not hate 20:41:40 that's too strong 20:41:44 "strongly dislike" is better 20:41:56 AnMaster: http://ocw.mit.edu/OcwWeb/Electrical-Engineering-and-Computer-Science/6-035Fall-2005/CourseHome/index.htm 20:41:59 yugh 20:42:06 hiato, really? 20:42:11 http://www.youtube.com/watch?v=p08izmpPy0s# 20:42:14 heh 20:42:16 hiato, are you using synergy or something? 20:42:17 AnMaster: lots of wishy-washy not-exactly-disharmonious fourths and ninths and stuff, I though 20:42:23 goddamn two xclipboards 20:42:24 it tends to fuck up your clipboard badly 20:42:32 hiato, I always use middle mouse one 20:43:35 i guess 20:44:43 Chopin isn't great, but there's a couple of his pieces that always get stuck in my head 20:44:55 well, okay background music 20:45:00 you don't remember it 5 minutes later 20:45:03 I don't dig piano music generally, but his I can usually stand 20:45:07 that is my opinion on Chopin 20:45:23 Not quite as background-y as Wagner, but yes, pretty background-y. 20:45:25 cpressey, wrt. piano music: Mozart or Lizt 20:45:36 plus I play piano (amateur level!) myself 20:45:45 You know, I know almost nothing by Liszt. 20:45:50 cpressey, wagener isn't backgroundy. Wagner is headachy 20:45:57 And, I now claim, Mozart was a robot. 20:46:03 cpressey, what? 20:46:17 Well, I figured I ought to have some opinion about him, so there it is,. 20:46:24 XD 20:47:50 AnMaster: and? what did you think of he mendelssohn? 20:47:52 lament, listened to that sunken cathedral. Not one of his best pieces 20:48:02 hiato, just started listening to it 20:48:22 hiato, too much symphony orchestra. But at least a lot of strings. 20:48:38 Wait, it's a *violin* concerto 20:48:41 mainly solo 20:48:42 hiato, one of mendelssohn's better pieces so far 20:48:48 hiato: Max Bruch also wrote a pretty quality violin concerto 20:48:53 hiato, well, too much orchestra then 20:48:54 -!- angstrom has joined. 20:49:00 Never heard of him cpressey 20:49:02 (hiato, remember I prefer chamber music) 20:49:11 hm who is angstrom? 20:49:20 hiato: I first heard of him from the B-side of that Mendelssohn concerto :) 20:49:21 could a quine be written which utilizes a function to generate a sequence of numbers (ascii) which, printed out, represent the program (_including_ the implementation of the function!) ? 20:49:25 cpressey, anyway got anywhere with befunge-111 today? 20:49:37 AnMaster: not working on it today. 20:49:49 angstrom, how do you mean? 20:50:02 angstrom, and in which language 20:50:04 *B-side of a recording of that Mendelssohn concerto 20:50:19 AnMaster: wondering whether is possible at all 20:50:21 angstrom: in any sufficiently powerful language (TC with a few assumptions about I/O), there's no reason it couldn't be 20:50:40 ais523: You get pinged on 'quine', don't you? :) 20:50:43 AnMaster: right, a chamber musci man can't apperciate mendelssohn at his best 20:50:44 ais523: but how would one move towards it 20:50:49 cpressey, :D 20:50:52 cpressey: no, I don't; just happened to look into the channel 20:51:01 cpressey: interesting, I'll take a look around 20:51:09 angstrom: you'd use one of the quine models that allow you to add arbitrary data that's also quined 20:51:18 hiato, yeah, Vivaldi, Mozart and Kraus for me. And *some* of Haydn 20:51:28 then put code in that duplicates that arbitrary data that changes an ordinary quine into the numbers 20:51:37 ais523: that is not what i mean 20:51:46 what do you mean? 20:52:18 are you trying to limit the "function" somewhat so it doesn't have a bunch of arbitrary data encoded in it? 20:52:26 hiato: OK, listening to the Mendelssohn concerto again, uhhh. Max Bruch's is good, but it doesn't compare. 20:53:02 hiato yet I like Grieg very much. But a lot of his isn't pompous even though it uses a full orchestra. (Of course some exceptions, like "I dovregubbens sal" (iirc, and "In the hall of the mountain king" in English)) 20:53:11 (yet that one is acceptable somehow) 20:53:26 ais523: for every given arbitrary finite sequence a function, which generates this sequence, could be described. the problem is: the sequence _must_ contain the implementation of the function 20:53:34 -!- whtspc has quit (Ping timeout: 264 seconds). 20:53:58 ais523, anyone made a GOL "quine"? 20:54:01 well 20:54:03 non-trivial one 20:54:07 AnMaster: yeah, everyone has theri own tastes though. funyy that you like grieg though 20:54:11 got my point? 20:54:18 cpressey: yeah! now you start to apprecaite mendelssohn 20:54:24 angstrom: yes; but that's just the same as a normal quine 20:54:29 he's brilliant like no other for those concertos 20:54:32 hiato, it has a feeling of lightness and open nature about it all through. 20:54:35 because you can see the entire program as a function 20:54:55 AnMaster, what, grieg? 20:54:59 hiato, yes 20:55:12 hiato: I had forgotten... 20:55:13 hiato, don't you just see the fjords when you listen to his music 20:55:27 (well not in all pieces of course) 20:55:31 ais523: could you provide me with a particular example? all the quines i've seen relly heavily on pre-processor macros 20:55:32 AnMaster hahaha, yeah, I'm pining for the fjords 20:55:38 cpressey :) 20:55:58 hiato, augh. But seriously... some of Grieg's best is non-Peer-Gynt 20:55:58 ais523: maybe you are right 20:56:12 angstrom: think any BF quine, but interpreted as a function; if you want it to be an actual function in the language, use a BF-like language which has functions 20:56:17 hiato, hardangerfela (sp?) is a nice Norwegian "folk" instrument 20:56:33 AnMaster: I must disagree. In fact, I find it hard to apprecaite any of his other stuff compare to it 20:56:51 hiato, http://en.wikipedia.org/wiki/Hardingfele 20:56:59 hiato, what? !? 20:57:14 ais523: ic. have to investigate 20:57:15 hiato, Peer Gynt is good but nothing like *digs around for cd* 20:57:45 ah found it 20:58:24 hiato, hm must check which track on the cd it is I'm thinking about 20:59:17 hiato, Norwegian Dance No. 2 for example 20:59:35 hiato, (Allegretto tranquillo e grazioso) 21:00:19 hiato, Solveig's Sang is nice though 21:00:20 link por favor 21:00:28 (even though it is in Peer Gynt) 21:00:57 hiato, sure: http://www.naxos.com/catalogue/item.asp?item_code=8.551108 21:01:00 though, I think I did try searching for norweigan dance once, after having heard it on theradio 21:01:19 hm times out for me that link 21:01:29 ah now it loads 21:01:45 hiato, anyway, it is track 3 on that cd. 21:01:59 hiato, solveig's sang you can find any number of 21:02:06 hiato, just pick an instrumental one! 21:02:13 Schubert's Unfinished is also good. Never been a huge fan of his other stuff though. 21:02:26 AnMaster: will do, commencing youtubing now 21:02:29 hiato, also Holberg Suite: Prelude is awesome 21:03:45 hiato, I imagine a Scandinavian mountainous region, crystal clear weather, slight breeze, mid-morning. 21:03:55 fjords definitely have a place in there! 21:04:39 haha :P 21:04:42 well it changes feeling towards the end 21:04:49 but to begin with it is definitely like that 21:04:53 eh, it keeps timing out, but I will keep searching 21:05:08 hiato, also Holberg Suite: Andante is quite nice 21:05:20 not "wow" 21:05:22 but restful 21:06:26 you see, I like the dramatic music of tchaikovsky, and the tension of prokofiev (esp: dance of the knights/romeo juliet) so it's difficult for me to accept "airy" music like some of this 21:06:47 hiato, tchaikovsky: overly dramatic and somewhat pompous 21:07:05 hiato: I think you and I must have similar tastes. Satie is some of the only music that I like that I would call "airy". 21:07:20 hiato, But would you call Vivaldi's summer, third movement "airy"? 21:07:29 Tchaikovsky I'm kind of neutral on. 21:07:38 hiato, it's supposed to depict a raging thunderstorm ffs! 21:07:40 Vivaldi rocks. 21:07:51 cpressey: I would mostly agree 21:08:04 and that movement takes second place on my all time best list 21:08:17 AnMaster: well, the only thing I really like from vivaldi is winter, er, allegro i think 21:08:43 after Kraus' Sinfonia in C# minor movement 4 21:08:56 hiato, the winter is the worst of the seasons 21:08:59 I like weird. Some of the composers I like are obviously pretty weird (Prokofiev, Satie, Milhaud, Stravinsky...) I'm trying to figure out what the ones who *aren't* weird, have in common. 21:09:04 of course vivaldi did a lot more than just the seasons 21:09:10 some of it very nice 21:09:19 cpressey, satie is not weird 21:09:22 Vivaldi is not weird, neither is Mendelssohn 21:09:41 cpressey, I recommend you listen to Kraus 21:09:53 AnMaster: I really can't dig vivaldi 21:09:53 AnMaster: Satie is extremely weird! It's just hard to hear in some of his pieces 21:09:59 cpressey: to me, those are normal 21:10:01 hiato, well that's your issue ;P 21:10:03 He wrote a piece for walking stick! 21:10:08 what AnMaster appreciates, now that's weird ;) 21:10:17 hiato, no! 21:10:36 Well, on the other hand, Schoenberg was ... too weird. Schoenberg is like the Malbolge of composers. 21:11:05 haha 21:11:09 I like that comparison 21:11:14 never heard his stuff though 21:11:19 hiato, airy music I definitely like. Dramatic: sure, but I definitely forbid more than 0.01 µWagner of pompousness! 21:11:22 where satie is BF 21:11:33 hahaha 21:11:34 Satie wrote a piece with words, and included the note "These are not lyrics. Under no circumstances should they be spoken aloud during performance" 21:11:45 cpressey, my dad likes Schönberg. And Wagner. 21:11:47 *shudder* 21:12:13 look, I don't like wagner any more than you, and unfortunately, you have the same taste as my dad AnMaster 21:12:14 cpressey, he was quite anti-Wagner iirc 21:12:15 Hm, Satie = BF? Maybe... 21:12:26 hiato, "unfortunately"? 21:12:37 cpressey, nah, Satie is more like a mild version of intercal 21:12:42 Yeah, we have entirely separarte CD collections 21:12:49 hiato, same here! 21:12:54 I was thinking Satie = Underload, but I'm not familiar enough with Underload to say 21:12:55 i cant stand his stuff, he doesn't like mine 21:13:03 my dad even likes Stravinsky 21:13:07 which I just don't get 21:13:07 and I'm not familiar enough with Satie to say 21:13:16 well, it isn't actually horrible 21:13:18 like Wagner is 21:13:24 but, what is the point of Stravinsky... 21:13:26 yeah, mine likes water music, which is just atrocious 21:13:41 AnMaster: The point of Stravinsky is The Rite of Spring. 21:13:42 hiato, Händel's water music? 21:13:44 well it is kind of OK 21:13:50 Not in specific, but yes 21:13:59 AHHHHH! NOOOOOO! Not you too! 21:14:03 That's about all... a lot of his other stuff is pretty meh. 21:14:03 wow, I never knew Handel had an umlaut 21:14:09 hiato, not on my "best" list 21:14:12 have you tried spectral music ? :) 21:14:14 hiato: ? 21:14:17 ais523, he dropped it after he moved to UK 21:14:23 ais523, but yes originally he did 21:14:36 ais523, and that is an ä not an a with an umlaut 21:14:37 t! 21:14:40 I like Handel pretty good. I think he makes my top ten. Or at least, he did once. 21:14:41 s/t// 21:14:49 AnMaster: ok, fine, but try not to listen to it 21:14:53 what? 21:14:57 hiato, water music? 21:15:08 hiato, yeah most movements are a bit too pompous for my taste 21:15:11 yeah 21:15:14 there is one movement in it I like 21:15:21 which one was it now again 21:15:25 "airy", insusbstantail, decorative 21:15:28 hiato, Alla hornpipe or something? 21:15:45 hiato, the other ones are too pompous definitely, or just not good 21:16:16 hiato, also way too few violins in the water music! 21:16:18 AnMaster, I'm sorry, the act of listening to that and baroque is physically annoying to me, I just can't do it 21:16:28 AnMaster: What do you think of Couperin? 21:16:37 cpressey, "who?" 21:16:47 hiato, I do keep away from Bach played on organ 21:16:56 Bach on piano is quite okay 21:17:05 AnMaster: baroque, french, mainly harpsichord/organ 21:17:07 but I hate the instrument that is called organ 21:17:08 -!- angstrom has changed nick to angstrom_. 21:17:22 cpressey, harpsichord is quite okay 21:17:28 cpressey, organ should be outlawed 21:17:59 organ >> harpsicord, have you ever heard of jazz harpsichord? I don't think so 21:18:07 no 21:18:21 but then I only enjoy jazz when I happen to listen to it 21:18:27 AnMaster: http://www.youtube.com/watch?v=UZXzuIsxb64 if you want a sample (it's alright -- I know I've heard better by him, but I can't find it) 21:18:28 by pure chance 21:18:30 -!- ais523 has quit (Remote host closed the connection). 21:18:36 it isn't something I actively try to listen to 21:18:56 hiato, also organ should be outlawed 21:19:01 I still maintain that 21:19:07 it is the worst instrument ever devised 21:19:17 possibly apart from "opera-style singing" 21:19:23 I'm not really happy about any instrument that has only one output level 21:19:41 But I don't think I share AnMaster's organ-hate 21:19:51 cpressey, hm? that would explain a lot about organs 21:19:53 Harp, ugh 21:19:53 if that was so 21:19:58 AnMaster, you have some serious problems, like, the same sort should I choose to code liktheora in malbolge 21:20:01 cpressey, harp can be nice 21:20:20 harp is okay, harp as in harmonica is great 21:20:22 hiato, libtheora in malbolge!? 21:20:23 wth 21:20:35 hiato, I mean, classical harp 21:20:36 AnMaster: yeah, harpsichord has one dynamic only. That's why a piano is called a piano (short for pianoforte, i.e. it can be soft *and* loud) 21:20:45 I have no idea what "harp as in harmonica" *is* 21:21:02 harp is blues/jazz slang for harmonica. very confusing 21:21:11 harp is slang for harmonica 21:21:14 eh, ninja'd 21:21:16 cpressey, what about spinets? 21:21:44 "ninja'd"? 21:21:48 wth does that mean 21:21:58 harmonica is "meh" 21:22:01 neutral 21:22:49 hiato, anyway, I'm not talking about jazz instruments here 21:22:56 god you're STILL talking about music 21:23:03 AnMaster: Not really familiar with them. There are a tonne of percussion/plectra keyboard instruments that have niche roles... 21:23:07 i went to lunch already 21:23:14 lament, we were talking about quines a bit in the middle 21:23:21 AnMaster: harps are not jazz instruments. 21:23:23 lament, but well, there was no other discussion going on 21:23:28 lament, I never claimed that 21:23:32 Actually, I think we're mostly talking about instruments now. 21:23:33 lament, it was hiato who did 21:23:40 AnMaster: from the xkcd forums, someone beats you to someting 21:23:50 hiato, ah... 21:23:52 lament: harp -> harmonica 21:24:00 hiato, xkcd jumped the shark long ago 21:24:00 yes, harmonicas are not jazz instruments 21:24:06 harp -> harmonica confused me for years 21:24:16 harp is harp 21:24:18 nothing else to me 21:24:23 http://goatkcd.com/120/sfw 21:24:26 Yes, because blues is not jazz. 21:24:52 lament, nsfw! 21:25:03 well some people play chromatic harmonicas in a jazz setting 21:25:18 but when people say harp they usually mean diatonic 21:25:21 btw, has anyone invoked rule 34 on rule 34? 21:25:44 AnMaster: jumped the shark? 21:25:49 lament, I also heard Vivaldi's summer on electric guitar 21:25:49 And, FWIW, I don't really like harmonica. 21:25:53 what about rule 42 on rule 34? 21:25:56 lament, go figure 21:26:05 (I didn't like it at all) 21:26:14 Glass harmonicas are much cooler. 21:26:17 lament: ok, fair enough, but my original claim was that organs can be 21:26:25 cpressey: most people play harmonicas really badly 21:26:36 hiato, http://tvtropes.org/pmwiki/pmwiki.php/Main/JumpingTheShark 21:26:51 (sorry for that!) 21:27:03 http://www.youtube.com/watch?v=_XPfoFZYso8 <-- Glass harmonica. Maybe AnMaster will forgive that it sounds kind of like an organ? 21:27:11 (be aware of that tvtroupes is highly addictive!) 21:27:18 After all, harmonica = "mouth organ" 21:27:45 cpressey, How does it work? 21:28:03 AnMaster: Water. 21:28:06 cpressey, but it gave me half a headache I feel 21:28:17 * hiato head will explode, as he cannot debug+chat+chat+irc 21:28:21 cpressey, why is it spinning? 21:28:32 hiato, irc is chat 21:28:35 there is no other chat 21:28:36 well 21:28:38 (never mind blink and breath) 21:28:41 talk 21:28:44 but that is dead 21:28:47 sadly so 21:28:47 haha 21:28:53 I still know some people who use talk 21:28:58 yes seriously! 21:29:05 What? No! 21:29:11 hiato, not only 21:29:12 Surely thou jesteth! 21:29:13 they use irc too 21:29:17 talk, not ntalk? 21:29:22 or gtalk? 21:29:28 cpressey, ntalk? 21:29:32 I'm not sure 21:29:40 like ncurses except for talk, not curses 21:29:41 it uses xinetd I know 21:29:43 i guess 21:29:52 n prolly stood for 'new' 21:29:56 -!- Gracenotes has quit (Ping timeout: 246 seconds). 21:29:59 cpressey, ah ytalk was the program talking the talk protocol I think 21:30:05 oh yeah, ytalk 21:30:15 cpressey, what about ntalk then? 21:30:26 cpressey, and glass harmonica is *technically* impressive 21:30:29 well, the name popped into my head 21:30:34 i don't remember where its from 21:30:34 sound is less so 21:30:45 AnMaster: agreed. it's not the prettiest sound. 21:31:07 what has the prettiest sound? 21:31:13 lament, violin 21:31:14 by far 21:31:15 * lament votes cello 21:31:21 violins are high-pitched screechy things 21:31:27 skreeech 21:31:27 lament, they are not 21:31:35 skreeeEEEEEEEEEEEEEEEAAURGH 21:31:37 they are vibrantly wonderful harmonics! 21:31:43 s/are/have/ 21:31:52 they're too high pitched 21:31:56 lament, I disagree 21:31:58 Yet, violas sound like violins with a chest cold. 21:31:58 -!- dev_squid has quit (Ping timeout: 264 seconds). 21:32:09 violas are too high pitched! 21:32:13 that I agree with 21:32:18 violins are wonderful 21:32:31 lament, but do you hate that range on other instruments? 21:32:42 My vote is either flute or french horn. 21:32:49 I think. 21:33:08 Sax! 21:33:14 (and that's not a typo) 21:33:15 hiato: Which one? 21:33:19 hiato, no that is just silly 21:33:28 hiato, also sure if that is sv:sax 21:33:28 :D 21:33:41 which is en:scissors 21:33:53 I would have to say, of saxophones, probably alto 21:33:53 how do you play music on scissors? 21:33:59 is it like musical bow? 21:34:26 Soprano is too whiny, tenor too throaty, baritone OK except bass clarinet is better 21:34:37 cpressey, but wait, aren't viola's lower pitch than violins? 21:34:42 yet violins sounds better? 21:34:48 AnMaster: yes, they are. 21:34:52 AnMaster: yes, they do. 21:34:56 It's not just about pitch 21:35:03 cpressey, they why do I find violas annoying but violins awesome? 21:35:12 and cello quite okay 21:35:30 of saxophones, definitely baritone 21:35:31 Because violas are fail, I guess 21:35:35 baritone sax is my favourite instrument 21:35:39 sorry! 21:35:40 i mean tenor 21:35:41 AnMaster: heh, I turn my head for two minutes and you go from salto sax -> scissors 21:35:42 not barintone 21:35:42 duh 21:35:44 tisk tisk 21:35:52 tenor sax. best instrument. 21:35:56 other than cello of course. 21:35:59 naah, alto 21:36:05 alto - too high pitched and boring 21:36:10 alto pwns ur vilin n00blar 21:36:11 it lacks character 21:36:18 hiato, :P 21:36:20 only losers play alto 21:36:23 all ur vilin belong to us 21:36:42 stop mixing up two memes -_- 21:36:44 lament: we clearly have different taste 21:36:52 no 21:36:55 have you listened to 50's rock? 21:37:02 have you listened to 30's rock? 21:37:02 hiato, *shudder* 21:37:17 next you are going to say you like rap or country western! 21:37:50 what's a good place to temporarily upload an mp3? 21:37:53 AnMaster: I do like some rap 21:37:58 lament: 30's? No 21:38:00 without creating an account? 21:38:03 I'm talking Fats Domino here 21:38:12 hiato, and yet rap is even worse than country western. And country western is horrible 21:38:15 what was it, er, filehost.rg? 21:38:23 AnMaster: an open mind is key 21:38:25 lament, filebin? 21:38:29 lament, .ca that is 21:38:32 that's it 21:38:36 isn't that one infected by some worm? 21:38:41 lament, is it? 21:38:44 dunno 21:38:59 AnMaster: im so eclectic in my tastes its not even funny, taht is to say, it was never funny to begin with 21:39:04 lament, I thought it was quite a okay one. ais used it for enigma levels iirc 21:39:13 hiato, ? 21:39:40 AnMaster: http://filebin.ca/ducjyo/elise2.mp3 21:40:11 lament, wgetted 21:40:30 lament, how should I put it 21:40:45 hiato: Which rap would that be? 21:40:49 AnMaster: I like everything from hardstyle, house and rap to all the composers above and even square waves and 8bit music 21:40:56 lament, _interesting_ arrangement 21:41:03 lament, quite okay though 21:41:07 Now we're in completely different territory and my tastes are completely different. 21:41:19 There is some rap I like but it is very rare. 21:41:20 cpressey: I like some on eminems work, as well as some israeli groups and some tupac 21:41:27 rap is just unacceptable 21:41:27 cpressey: http://filebin.ca/ducjyo/elise2.mp3 21:41:30 to me 21:41:33 it isn't even music 21:41:34 at all 21:41:43 it should be classified as noise 21:41:57 and a health and safety issue 21:42:31 heh 21:42:33 cute 21:42:44 cpressey, what about "god wrote the world in lisp"? I like it because of it's lyrics only 21:42:56 AnMaster: *never* heard of that :) 21:42:58 but, I hate pop 21:43:07 i hate you :( 21:43:09 songs with words suck, unless they are rap 21:43:27 cpressey, http://www.youtube.com/watch?v=5-OjTPj7K54&fmt=18 21:43:28 Along the lines of modern-but-still-"art/chamber", anyone like Penguin Cafe Orchestra? 21:43:40 hiato, you too 21:43:46 even so, I have found maybe five rap songs out of aa good three hundred that I like 21:43:47 hiato, and that is because of lyrics 21:43:51 not because of the music 21:43:58 cpressey: love penguin cafe 21:44:15 AnMaster: lyrics are part of it duh 21:44:19 hiato: Ha! Suspected so. 21:44:21 lament, yes 21:44:23 lament, ... 21:44:24 http://www.youtube.com/watch?v=FvbCV6E0Wro <-- PCO 21:44:26 cpressey: really? 21:44:33 lament, I said I only liked it because of it's lyrics 21:44:36 AnMaster: wiat, me too what? 21:44:40 hiato: Taste intersection :) 21:44:50 hiato, the link I gave just amove it 21:44:52 above* 21:44:53 i only like bach because of its melody 21:44:57 lolwut! 21:45:10 cpressey: it would seem so :) 21:45:19 AnMaster: I see, youtubing now 21:45:49 cpressey: ever heard of apocalyptica? 21:46:02 -!- coppro has joined. 21:46:39 hiato: I don't think so... 21:46:45 it's four celloists, but they play connected to apms and so 21:46:48 it's brilliant 21:47:00 cpressey, so what do you think about it? 21:47:08 hiato: Do they do covers of Metallica? 21:47:10 heh, catchy tune :P 21:47:13 YES! 21:47:23 so you have heard of them 21:47:28 apocalyptica are awesome :) 21:47:34 hiato, cpressey ^ 21:47:35 ... 21:47:42 hiato: I think I've maybe heard recordings *by* them, but didn't know anything about the group 21:47:43 Asztal: !! 21:47:56 AnMaster: It's queued up, one sec :) 21:48:12 cpressey, you will actually "lol" I think 21:48:13 apocalyptica is the worst shit ever seriously 21:48:18 AnMaster ? It's a catchy tune, but fits rignt into the "I hate men with guiatars category" though the lyrics made me smile 21:48:21 what a retarded bunch of losers 21:48:21 lament ..... 21:48:24 cpressey, and I'm one of those who try to use it correctly 21:48:29 they should strange each other with their strings 21:48:35 Oh god this is horrible 21:48:45 cpressey, the lyrics are fun though 21:49:02 lament: Steve would probably love this 21:49:03 apocalyptica is an injoke, you need to be a metalhead and a cellist to appreciate it and it's still only mildly funny 21:49:18 :D 21:49:26 cpressey, so why did you call it horrible? 21:49:28 lament, er, right, still sounds good to me 21:49:35 well 21:49:43 AnMaster: CHEESY 21:49:44 say some apocalyptica cover of metallica 21:49:44 cpressey, I assume it was that lisp one? 21:49:46 MIGHT sound okay 21:49:48 hiato: you see *lament* is an injoke 21:49:51 but the original sounds better 21:49:54 AnMaster: YES 21:49:56 cpressey, define that 21:49:59 * cpressey is drowning in cheese 21:50:02 so all apocalyptica achieved is to make a piece of music worse 21:50:05 oklokok: it's all starting to make sense :P 21:50:11 cpressey: probably, judging by the title, but i can't listen at work 21:50:12 * AnMaster looks for a dictionary 21:50:33 -!- dougx has joined. 21:50:36 I never bother to look up what "cheesy" meant except in a culinary context 21:50:51 cpressey, since I'm unable to locate a dictionary atm could you explain it 21:51:32 AnMaster: http://www.youtube.com/watch?v=FTD2lKew4iI&feature=related 21:52:21 (oh god it's long, too. six minutes of programming language-based filk is wayyyy too much.) 21:52:38 Um, lessee. Define "cheesy". Well.. 21:52:41 hiato, what an overly dramatic video. also 21:52:44 WHAT THE HELLL 21:52:57 hiato, it is a complete disaster after 00:33 or so 21:53:02 a complete and utter disaster 21:53:03 AnMaster: yes, video sucks 21:53:14 hiato, I have never heard anything this bad 21:53:20 * AnMaster stops playing it 21:53:27 I can not stand listening to the end of it 21:53:35 AnMaster: your taste .[asarsarsars], my taste .{7283748923794} -> longest common subsequence = . 21:54:07 hiato, didn't we both like Grieg? 21:54:18 yep :P that dot was griep 21:54:21 *grieg 21:54:25 ah 21:54:32 but, for example, have you heard flanders and swann? 21:54:43 hiato, US? 21:54:46 Man, "cheesy" is hard to define 21:54:52 hiato, the names are not familiar at all 21:54:53 UK! 21:54:59 hiato, well I live in Sweden so... 21:55:01 "of poor quality through being overdramatic, excessively emotional or clichéd, trite, contrived, shoddy" (wiktionary) 21:55:05 hiato, when did they live? 21:55:07 yeah, sixties-ish entertainers 21:55:08 uk 21:55:09 But that doesn't capture it 21:55:11 oh 21:55:14 that explains it 21:55:32 hiato, I do like Tom Leherer (spelling?) though 21:55:35 American 21:55:46 hiato, both nice music and nice lyrics 21:55:47 Yeah, Lehrer 21:55:52 brialliant 21:55:55 hiato, indeed 21:56:11 whoever posted http://www.youtube.com/watch?v=FvbCV6E0Wro 21:56:11 you'll probably like flanders an swann 21:56:15 that one wasn't too bad 21:56:18 relatively speaking 21:56:18 they came up with the hippo song 21:56:22 so far at least 21:56:31 well it gets worse a bit in 21:56:39 sounds like percussion? 21:56:48 AnMaster: have you seen funny bones? 21:56:53 http://www.youtube.com/watch?v=2N_tmH6y7ng <-- there's some more cheese, but instrumental. 21:57:06 which really doesn't have anything to do in music except the occasional bong in Ravel's Bolero or such 21:57:15 hiato, never heard about it 21:57:30 cpressey, queued 21:57:36 cpressey, also did you like the lyrics or not? 21:57:45 related videos (from perpetuum mobile) -> how to build hover shoes 21:57:53 hiato, ^_^ 21:58:05 hiato, but what is that music btw? 21:58:15 which, that harmonium thing? 21:58:21 or funnybones? 21:58:36 ... 21:58:43 "perpetuum mobile" 21:58:44 er? 21:58:45 ... 21:58:48 Wow, wait, we're still talking about music? 21:58:50 what is it? 21:59:12 Gregor: well there's at least 1000 years to get through 21:59:17 :P 21:59:35 whoever posted http://www.youtube.com/watch?v=UZXzuIsxb64 : quite nice so far 21:59:58 AnMaster: I will say they are the most intensely programming-language-related lyrics I have heard yet. 22:00:03 harpsichord? 22:00:08 thttp://www.youtube.com/watch?v=UZXzuIsxb64 <- YUGH! 22:00:10 it doesn't sound like piano 22:00:22 yeah 22:00:25 cpressey, I remember some about qbasic btw 22:00:26 or honky-tonk 22:00:32 Of course, my main point of comparison is Guy Steele's "Lambda Bound" (to the tune of "Homeward Bound") 22:00:33 hiato, it was quite a nice sound 22:00:35 IMO 22:00:37 hiato, :) 22:00:44 hiato, in fact wonderful sound 22:00:49 I like harpsichord 22:01:01 this trumps all: http://www.youtube.com/watch?v=Ht96HJ01SE4&feature=player_embedded# 22:01:31 -!- MigoMipo has quit (Remote host closed the connection). 22:02:11 hiato, cpressey, lament, Gregor: http://www.youtube.com/watch?v=BpH0QnVQi0A&fmt=18 22:02:12 -!- MigoMipo has joined. 22:02:17 not the best recording 22:02:23 also the C sharp minor version is better yet 22:02:26 hiato: Yes, it probably does. 22:02:26 AnMaster: watch my last one damnit! 22:02:29 but couldn't find it on youtube 22:02:31 hiato, queued 22:02:31 cpressey: :D 22:02:39 THIS MUSIC IS SO PRETENTIOUS 22:02:44 * Gregor runs 22:02:46 Gregor, what one? 22:02:49 I invoke ajump 22:02:56 Oh yeah, I've heard this. 22:03:00 It's very ... classical. 22:03:04 Gregor, :) 22:03:05 whose? 22:03:07 wonderful isn't it? 22:03:16 if it is the one I linked last 22:03:18 not watching youtube at work, what is it? 22:03:24 Too bad you can't actually queue youtube videos (in a simple way) 22:03:26 Frankly I'm not much of a classical guy, I much prefer the romantic era. 22:03:27 lament, Joseph Martin Kraus 22:03:41 oh 22:03:54 cpressey, you can. Open in separate tabs. Copy the urls to youtube-dl -b command 22:04:02 cpressey, since you don't have flash installed 22:04:03 :P 22:04:43 cpressey, hiato Gregor: oi! This contains both C minor and C# minor versions after each other: http://www.youtube.com/watch?v=QbhA7NRZTZ0 22:04:46 so you can compare 22:04:56 remember to add &fmt=18 to that of course 22:04:58 AnMaster: I must say, it's pleasant, but not my style 22:05:01 That one I listened to the last time you linked it :P 22:05:07 Gregor, the comparing one? 22:05:09 hm maybe 22:05:31 Ok, listening to Kraus now, and... 22:05:37 AnMaster: Now take the two versions and overlay them. 22:06:15 Gregor, sound quality is better in http://www.youtube.com/watch?v=QbhA7NRZTZ0&fmt=35 22:06:20 that is the best version of it 22:06:21 :) 22:06:27 it seems 22:06:29 AnMaster: That's not both versions too, is it? 22:06:38 Gregor, that is both versions separately yes 22:06:48 Does everybody play both versions? :P 22:06:50 Gregor, I just forget to add &fmt=35 to it 22:06:54 Oh, that's the same link, durp 22:06:54 -_- 22:07:41 AnMaster: to put things back in perspective: http://www.youtube.com/watch?v=Z_hOR50u7ek one of my all time fvourites 22:07:58 cpressey listened to that "cheesy" one, don't get what you mean at all 22:08:01 It's pretty good. But it's hard to see how it would not be called equally "pompous" when say Tschiakovsky would 22:08:28 "It sounds less ... gay than Tchaikovsky" 22:08:49 Gregor, everything does 22:09:01 I take offense 22:09:06 your mom is less way than tchaikovsky 22:09:19 AnMaster: programming language are not something to sing about 22:09:25 Is "way" some crazy Finnish ... way ... to say "gay"? 22:09:30 Marche slave is brilliant, the 1812 is fantiastic, swan lake is unrivaled 22:09:38 this trumps all: http://www.youtube.com/watch?v=Ht96HJ01SE4&feature=player_embedded# <-- on instrument awesomeness yes 22:09:42 but what is the music 22:09:45 i typoed it and realized it was better that way 22:09:53 Queen, bohemian rhapsody 22:10:17 hiato: I take offense to the fact that you assume I meant "gay" negatively, and not simply that all of his music is imbued with his gayness :P 22:10:27 Bahahaah! 22:10:32 I actually laughed out loud 22:10:39 hiato, and what is that instrument in that video? 22:10:43 at, whatever it is here, er, ten past 10 22:10:52 *12 22:11:00 AnMaster: it's a scanner 22:11:06 and a floppy disk drive 22:11:07 hiato, old one indeed 22:11:20 hiato, also some other instruments I suspect? 22:11:31 well, the oscilliscope buzzes 22:11:38 and the tape drive sort of clicks 22:11:57 and then there's that static melody sound from the waveform gen I assume 22:12:25 hiato, heck that digital scope looks very similar to the ones we have at university 22:12:34 just looks ours is one or two models after it 22:12:49 and now, without further adue, and before I offend the possibly homo Gregor again, I must leave, got an early morning tomorrow 22:12:52 (or they didn't change much) 22:12:54 but cheers all, twas fun 22:13:00 AnMaster: ooooh, that sucks :P 22:13:06 hiato, oh? 22:13:12 hiato, it was the digital ones at least 22:13:13 ! 22:13:23 hiato, also introductory course 22:13:32 tomorrow i'll sleep till noon and never wake up! 22:13:32 I think there are other ones as well 22:13:36 heh, digital >= 1921 (invention of transistor) 22:13:42 -!- alise has joined. 22:13:44 08:09:23 it seems like every ten seconds it parks itself, then pops up a little dialog box to let you know it parked 22:13:46 hiato, I meant the one with the square display 22:13:48 I disabled the dialog box. 22:13:56 wow, delay 22:13:58 anyway, cheers 22:14:02 hiato, cia 22:14:04 cya* 22:14:08 -_- 22:14:10 Hi alise, would you like to talk about music? 22:14:17 -!- hiato has quit (Quit: leaving). 22:14:37 Um... sure? For what particular reason? 22:15:13 Past ~3 hrs, that's all the channel has been talking about. 22:15:36 And some people seemed annoyed by this. 22:15:39 alise, hiato posted this: http://www.youtube.com/watch?v=Ht96HJ01SE4 22:15:40 So it was kind of an in-joke. 22:15:41 awesome 22:15:53 cpressey, so what did you think about Kraus btw? 22:16:12 what kind of musical discussion? 22:16:29 alise, pre-1900 mostly with a few more modern mentions 22:16:46 Since you said that, I'll take it to mean "contemporary pop music". 22:16:49 alise, very music "which is the best (vulgar sense) classical composer" 22:16:54 AnMaster: He's OK. Like I said, he seems almost as "pompous" as any romantic, Russian composer to me. 22:17:00 "Best" is such a vulgar word. 22:17:21 cpressey, hardly. Well that recording maybe. I suggest you listen to the recording I have at home 22:17:32 cpressey, which was performed by chamber "orchestra" 22:17:36 cpressey, sounds much better 22:17:41 Allow me to inject some true vulgarity into the discussion: Autechre have a new album out. 22:17:56 alise, yeargh 22:18:11 cpressey, look what you done. alise is the one who likes *really* weird music 22:18:17 Eat bleeps and die, AnMaster! 22:18:26 Hey, cpressey mentioned KFDforgotten the rest of the name. 22:18:32 So we're only seven lightyears apart. 22:18:33 alise, you admitted that yourself a bit before 22:18:35 well 22:18:39 quite some time ago 22:18:43 From my position you're not even in the observable universe 22:19:32 If you want to get into modern music, yes, I like KMFDM. And Rage Against the Machine. And Bad Religion. And Rammstein. 22:19:44 Which is sort of a paradigm shift away from "classical" 22:20:03 I don't think I've ever heard of Autechre 22:20:12 Mwah, a bot-tweet: "About NetHack: slay, a long sword is not a number! i am. xander: let go of frodo, and of knowledge, including mit and stanford, and he..." Yes, a long sword and a number indeed have some crucial differences. 22:21:21 -!- dougx has left (?). 22:21:22 fizzie: Is that fungot, or is there another twitterbot out there somewhere that fungot is having a conversation with? 22:22:19 It was fungot. Or, well, the same babbling-algorithm, anyway; it's not exactly the same script that's doing the tweeting. 22:23:09 But a twitter account called "theirctrout" had slapped fungot a bit with a large trout, for some reason; possibly because it mentioned the word IRC in there. 22:23:20 fizzie, is the script written in befunge? 22:23:55 Twungot actually replies to all mentions of its name, so it said "@theirctrout should be called when the tracer tries to write moving code? hah. foxfire, throw is broken. c supports it however you want" as a reply. 22:23:55 Autechre is basically the result of catting /dev/random to /dev/audio. 22:24:01 Well, the later stuff, at least. 22:24:25 Autechre is basically the result of catting /dev/random to /dev/audio. <-- see, I said you preferred the weird music 22:24:27 alise: It does sound a little random, to me. 22:24:43 AnMaster: Not (yet). I was tempted by the easiness of doing the Twitter API bits with a normal language. Maybe I'll Funge-98 it later. 22:24:53 I'm promoting Penguin Cafe Orchestra, here. 22:25:06 cpressey, what is that? 22:25:06 Listening to a 30 second snippet sort of defeats the point of seeing all the motifs being randomly shuffled about. 22:25:14 But then you have to be crazy anyway. 22:25:50 AnMaster: http://www.youtube.com/watch?v=FvbCV6E0Wro <-- you might like them, it's sort of modern chamber music. 22:26:07 cpressey, if that was the one you linked before? 22:26:09 then yes 22:26:12 I liked it 22:26:14 Yes. 22:26:20 Hail. 22:26:26 cpressey, a bit too much hits of percussion though 22:27:17 this one's weirder: http://www.youtube.com/watch?v=ZygIVDql8Bk 22:27:38 cpressey, well yeah. I don't really like that one 22:28:14 cpressey, also very weird video 22:28:41 Yyyyyyyes. 22:28:51 cpressey, but the music alone is weird 22:30:33 cpressey, anything good by them apart from the first one? 22:32:25 http://www.youtube.com/watch?v=aqpBs8q9iZQ is OK 22:32:45 Has an organ in it though (well, a harmonium) 22:33:19 I like this one! http://www.youtube.com/watch?v=hqBHWOzNBU8 22:33:28 One must be gay to not use "gay" as an insult? Hm. 22:33:55 cpressey, this one is pretty wtf (the movie): http://www.youtube.com/watch?v=ZLQYnyvN6fA 22:34:16 Using the word "gay" in an entirely appropriate and non-pejorative manner makes me quite gay. 22:34:49 pikhq: it also makes you quite ay. 22:34:51 gay. 22:35:03 I think I'm in love with Ruby's throw/catch 22:35:14 ive never used it 22:35:16 Sgeo: nobody uses it. also it's different from begin/rescue for no reason 22:35:44 I imagine that throw/catch would be used for non-exceptional flow 22:35:51 And begin/rescue for dealing with errors 22:35:55 I didn't know it even had throw/catch :/ 22:36:27 If I'm in the middle of a loop asking for user input, I can see myself using it for when the user does a quit thing 22:36:27 http://www.youtube.com/watch?v=aqpBs8q9iZQ is OK <-- well, too much pop somehow 22:36:32 cpressey, maybe it is the clear beat 22:37:01 cpressey, the type of music I prefer don't use percussion to mark the beat 22:37:17 Sgeo: nobody uses it 22:37:20 also: "break" 22:37:38 Suppose it's in a nested loop, and I want to directly leave the inner one, then 22:37:46 erm, leave both 22:38:57 * cpressey goes back to Mendelssohn 22:39:24 Also, I love Ruby's Fibers 22:39:39 fibers? 22:39:56 cpressey, Kraus ftw. With proper chamber orchestra 22:44:56 09:50:17 I wonder which language Swiss reduces to 'ch' in ... 22:44:59 latin 22:45:03 confederico (sp) helvetica 22:45:07 no swiss language 22:45:09 alise: That was answered a long time ago :P 22:45:11 well maybe an old one 22:45:13 Gregor: :P 22:47:22 cpressey, this was one good recording of vivaldi's summer (last movement) btw http://www.youtube.com/watch?v=u12_M4I2KxE&fmt=18 22:48:24 http://www.youtube.com/watch?v=Y7F4z8FV6ME <-- my absolute favourite of Beethoven. 22:48:43 cpressey, queued! 22:49:10 AnMaster: likewise 22:49:49 cpressey, the recording of vivaldi's summer that I prefer is different 22:49:53 have the cd next to me 22:49:58 it isn't even naxos 22:52:16 -!- alise has quit (Ping timeout: 252 seconds). 22:52:50 cpressey, http://musicbrainz.org/release/d875de37-cb74-4c2b-8218-399cd64cfa4f.html 22:53:27 cpressey, this cd it seems http://www.arkivmusic.com/classical/album.jsp?album_id=169771 22:55:07 -!- kar8nga has quit (Remote host closed the connection). 22:55:28 cpressey, that is the best recording of the four seasons I have yet heard 22:55:40 cpressey, as for your Beethoven link. Meh 22:55:47 cpressey, nice bg music 22:56:01 but not something I will remember 2 minutes after 22:56:17 Annoyance: There are two Ruby channels 22:56:26 Sgeo, oh? are there? 22:56:36 we need to add one more then 22:56:39 The only distinctions are the people in them and the name. And one is "official", but that doesn't make it more active 22:56:45 #ruby and #ruby-lang 22:57:01 let's make #ruby-real 22:57:08 315 in #ruby 317 in #ruby-lang 22:57:15 AnMaster: this is a rather violent rendition of "Summer" 22:58:48 -!- oerjan has joined. 22:59:18 cpressey, indeed! 22:59:24 cpressey, but I love it 22:59:48 cpressey, the one "best recording" is somewhere in between the normal tempo and that "violent" one 22:59:53 * cpressey goes back to his "background" music 23:02:35 http://codu.org/music/vg/zee5.ogg Background music! 23:02:36 -!- MigoMipo has quit (Remote host closed the connection). 23:03:02 -!- augur has quit (Ping timeout: 246 seconds). 23:04:05 cpressey, I agree that Kraus youtube video is somewhat pompous yes. I really should dcc you the flac I have of it locally! 23:04:07 :/ 23:05:59 * cpressey never knows what to make of Gregor's compositions 23:06:13 Gregor, I think I've heard that before 23:06:20 Is that the one you were using to test that thing? 23:06:41 Sgeo: Yeah. 23:06:49 cpressey, I love some of them 23:07:39 * AnMaster listen to this last one 23:07:53 Gregor, square wave?! 23:07:59 Sawtooth. 23:08:07 Gregor, :(((((((((((((((( 23:08:20 This is supposed to be pseudo-retro-video-game music. 23:08:20 Gregor, sine wave is the only correct shape for music! 23:08:27 Poor horns :P 23:08:28 I keep seeing dancers in trenchcoats and fedoras on an elevated stage 23:08:40 Gregor, and yes okay in that capacity... 23:08:48 lol 23:08:51 Gregor, but then it should be more beepy 23:08:56 Someone linked somewhere.. osgeo.org 23:09:02 It must be the finger snaps 23:09:02 AnMaster: Hence "pseudo" 23:09:09 Gregor, all all of it should be such 23:10:03 And it's something I'm not necessarily opposed to! 23:10:05 Try a different style and everybody just complains :P 23:10:11 [Sgeo also stands for Sacred Geometry] 23:10:18 How 'bout http://codu.org/music/vg/zee3.ogg 23:10:19 * cpressey wasn't complaining 23:10:35 * cpressey was hallucinating mildly, is all 23:10:39 lol 23:11:00 Gregor, I just dislike non-sine :( 23:11:28 Sine wave is so DULL. 23:11:32 No friggin' overtones. 23:11:34 Gregor, I accept cos too! 23:11:54 How 'bout http://codu.org/music/vg/zee3.ogg <-- nice 23:12:44 May or may not be playable on a real accordion :P 23:13:02 Well, whatever the reason, Gregor's music makes me hallucinate 23:13:07 Gregor, heh 23:13:19 cpressey, what do you see? 23:13:39 -!- tombom_ has quit (Quit: Leaving). 23:13:46 A log cabin in the woods 23:13:55 Gregor, what about real instruments? they get overtones? 23:14:00 Gregor, why isn't op12 listed on codu.org/music? 23:14:07 AnMaster: Uhhh, yes? 23:14:12 Sgeo: It's not finished, that's a work in progress preview. 23:14:16 Gregor, and why can't you get that on sine? 23:14:27 AnMaster: The mathematical properties of sine waves. 23:14:40 AnMaster, how do you know about Sine waves? 23:14:41 Their perfection is their imperfection. 23:14:42 erm, Sine? 23:14:51 Sgeo: Stop being an idiot :P 23:14:52 Gregor, so do something closer to real instruments then? 23:14:59 OK, I'll go with ... a sawtooth wave. 23:15:01 Gregor, I'm allowed to be silly 23:15:06 Sgeo, I know about sine too btw 23:15:21 I see no reason this couldn't be played on a real accordion (not that I can play accordion) 23:15:28 Sgeo, the issue is we can't detect when you are genuinely idiotic or when you are just silly 23:15:49 How often am I genuinely idiotic? :( 23:15:54 cpressey: There's the issue, I have no idea what the limits of a real accordion are :P 23:16:11 * AnMaster gets the other zee*.ogg 23:16:24 Eh, the rest are less good than those two. 23:16:31 Gregor, too late 23:16:36 Gregor, ooh I like zee1! 23:16:54 Gregor, but what is that "weird" instrument 23:17:01 Gregor: Well, it's basically a keyboard with a 2- to 3- octave range, I believe. The buttons add "pre-programmed" chords iirc. 23:17:01 "Ice rain", it's a synth effect. 23:17:05 Gregor, ah 23:17:34 Gregor, low quality sound fount for zee1? 23:17:43 cpressey: Yes, but the pre-programmed chords available vary, to my knowledge, from instrument to instrument. They certainly include a fifth, major and minor thirds, sevenths and augmented sevenths, but beyond that, Idonno. 23:17:44 or meant to be that way? 23:18:10 AnMaster: For which instrument? I actually downgraded the piano intentionally, the accordion is good, the others were the best I could find. 23:18:23 Gregor, piano mainly 23:18:31 but okay 23:18:37 Yeah, the piano I downgraded because the others were OK-ish but not great, and the piano stood out too much ;P 23:18:43 The .. pacing of a bit of zee1 is a bit off-putting, but other than that, it's a bit nice 23:18:50 Gregor, all needs to be perfect piano level 23:18:53 Gregor, kind of 23:19:20 Sgeo, how is the pacing "off-putting" 23:19:29 what is off-putting is that it ends in the middle of a tone 23:19:41 AnMaster: zee* loop 23:19:45 Hm, it's been a hell of a long time since I've written any music. Most of my compositions are lost due to various forms of data loss. 23:19:48 Gregor, aha! 23:19:50 It's just.. awkward, somehow 23:19:59 Sgeo, no it is not 23:20:10 it is perfect except for needing higher quality samples 23:20:13 Maybe not pacing, but I keep getting the impression that bits are not aligned with other bits temporally, or something 23:20:18 Gregor, zee2 is interesting 23:20:35 Gregor, what are the instruments in zee2? Does it include xylophone? 23:21:03 Marimba. 23:21:11 Gregor, is that something similar? 23:21:21 Half the things I wrote were saved in a proprietary format for a software package that doesn't even install properly on any windows since Windows 95. 23:21:25 IIRC, a marimba is basically identical to a xylophone except that it has resonators. 23:21:37 ah 23:21:39 At least, the means by which it produces a tone is basically identical, the layout is a bit different. 23:22:15 Also, marimba tends to be played with felt-covered mallets, iirc 23:22:33 Oh wait, so does xylo. 23:22:36 I was thinking glock. 23:22:44 Metal against metal 23:22:49 Very pretty. 23:22:50 cpressey: The marimba is to the xylophone as the vibraphone is to the glockenspiel. 23:23:13 Conversely, the marimba is to the vibraphone as the xylophone is to the glockenspiel. 23:23:42 Percussion instrument homomorphisms 23:23:54 Gregor, zee4 is interesting 23:24:11 Gregor, zee2 was a bit nervous if you see what I mea 23:24:12 mean* 23:24:20 I haven't a clue :P 23:24:22 Gregor, zee1 was best IMO 23:24:23 AnMaster, you passed zee3. I take it that zee3 isn't particularly interesting? 23:24:33 Sgeo, we went over that one first didn't we? 23:24:38 Oh, right 23:24:55 Ayy zee1 now I'm in Eastern Europe somewhere, possibly Prague 23:25:05 oh? 23:25:09 I didn't feel that 23:25:13 Someone is trying to sell me a watch! 23:25:18 but zee1 with better samples = total win 23:25:43 Gregor, zee4: Wait, why are we playing Perfect Dark in an n64 emulator? 23:25:46 :P 23:25:50 ? 23:25:57 Gregor, it makes me think of that game 23:26:10 Gregor, never played it? 23:26:12 Nope 23:26:20 Did its music too use a heartbeat as a percussive instrument? 23:26:26 Gregor, some levels have some music in the same style 23:26:29 Gregor, no 23:26:35 but other parts of it 23:26:41 was similar 23:27:06 Gregor, or it *MIGHT* have. I don't know 23:27:54 Apparently, asking in ruby why the channel exists is a Frequently Asked Question, considering how someone said "We need an FAQ" 23:28:08 Gregor, so total ordering: zee1 (needs better samples) > zee4 > the rest 23:28:52 Gee, my favorites didn't even make the list :P 23:29:06 Gregor, not my fault :P 23:30:19 Gregor, I think zee3 was at the bottom 23:30:23 zee5 just above it 23:30:27 Wow X-D 23:30:30 so that leaves zee2 in between 23:30:44 * Sgeo finds it somewhat difficult to form opinions sometimes 23:30:52 -!- coppro has quit (Read error: Operation timed out). 23:31:16 Gregor, and zee2 felt towards the end like the performer had nervous reactions or something 23:31:40 Gregor, I think it is the fast paced playing on Marimba that does it 23:31:52 Gregor, apart from that zee2 is quite nice 23:32:48 Gregor, oh and I don't really like accordion 23:32:55 Bahaha 23:33:00 But there's accordion in zee1 :P 23:33:10 Gregor, well, not as noticable 23:33:24 Because it's not playing like an accordion. 23:33:31 In zee3 it's actually playing like an accordion. 23:33:33 Gregor, that explains it! 23:35:32 Gregor, zee5 could raise a lot of you could get a nicer wave form but keep the electronic feel 23:35:53 Gregor, or maybe just fuzz out it or something 23:36:07 so it didn't poke you in the ear basically 23:37:12 night → 23:39:24 zee5 > zee3 > zee1 > zee2 > zee4 23:42:56 -!- jcp has quit (Remote host closed the connection). 23:44:53 Sorry, I can't even get to the end of zee4. 23:45:06 They took call/cc out of Ruby :( 23:45:34 Sgeo: I thought someone told me here the other day they decided to put it back in 23:45:59 o.O? 23:46:00 -!- jcp has joined. 23:46:10 They will be removing and re-adding it to every other version from now on. 23:47:34 hey, I can't blame them, I waffle plenty on my own designs 23:51:01 call/cc, though. 23:53:06 I can imagine the arguments that must go on about it, on their mailing list. 23:53:40 "No one uses that!" "I do!" "It's hard to implement efficiently on the JVM!" "That shouldn't be a consideration!" etc 23:53:47 "call/cc is hard!" 23:53:54 basically, yes. 23:53:56 "LOL USE LISP" 23:53:59 "I'll call/cc your MOM hard!" 23:54:00 continuations make the baby jesus cry 23:54:13 cpressey: That's quite ridiculous. 23:54:19 Baby Jesus invented continuations. 23:54:40 pikhq: Sorry, I missed quote marks on that one. 23:54:46 And it was an actual quote, too 23:54:52 Ah. 23:55:14 Continuations are, like, the ultimate form of flow control. 23:55:33 Anonymous feedback from a classmate from when I took a programming languages class a few years ago 23:56:05 You take classes in which they teach continuations? 23:56:08 * Sgeo is jealous 23:57:05 Yes, it was nice of them. They *almost* managed to teach us monads in that cirriculum, too. 23:57:07 *Almost*. 2010-03-06: 00:09:03 -!- jcp has quit (Read error: Connection reset by peer). 00:10:12 -!- jcp has joined. 00:16:14 We got continuations on the second half of our Scheme course; and the course was dropped pretty much immediately after I had done it. They arranged it as a summer special once, but it might well be that we currently don't have any courses with continuations in them. 00:22:29 -!- alise has joined. 00:22:31 10:42:18 Lambdas in C? Coincidentally, I have just discovered a marvellous little proof that no god can exist, written in CLambda, which this magin is too narrow to contain 00:22:35 ssh -- pikhq is a christian 00:22:43 he'll /maul/ you 00:23:06 He's Maulutheran. 00:23:22 10:47:38 ah, so this is one of those places that hg >> bza >> svn >> cvs == True 00:23:27 no, that is just anmaster. 00:24:12 alise: That was discussing *my code* you know. :P 00:24:22 that was my point 00:24:31 Ah. 00:24:46 I freely admit my C lambda macros are an affront to all that is good in the world. 00:24:46 it's like using the cross to molest a baby: only kosher if you're simultaneously catholic and jewish (otherwise you don't care about kosherosity) 00:24:49 :P 00:26:03 * Sgeo wonders what #esoteric 's opinion on git is. I kind of like the existance of GitHub 00:26:22 i don't see what github has to do with git 00:26:29 * cpressey is a distributed version control luddite 00:26:30 there could easily be svnhub or whatever.. 00:26:44 Git is rather user-unfriendly, but it sucks less than non-distributed version control things, so. *shrug* 00:26:58 If there are multiple repos, why are there still multiple branches? 00:27:34 The multiple repos I've got checked out on my filesystem are 96+% identical -- why aren't they sharing their data? 00:27:43 MissPiggy, but there isn't, is there? 00:27:57 cpressey: Because filesystems suck. 00:28:06 Oh sorry, I mean, I've got *cloned* 00:28:11 I'm just saying that there needn't be any 'git' in github 00:28:20 I agree that it's a good site though 00:28:27 pikhq: That's no reason for hg to not understand the concept though 00:28:42 Uhhh 00:28:43 cpressey: File systems make data sharing difficult. 00:28:44 It knows its data is immutable 00:28:46 They are hardlinked in hg 00:28:53 -!- dev_squid has joined. 00:28:53 UNIX ones less so than most others. 00:29:01 And Gregor says hg does hardlinks, so. 00:29:17 The .hg directory's contents are hardlinked when you hg clone. 00:29:40 Gregor: Ah. I see. I need to be cloning from a local repo in order for it to do that. 00:29:43 * pikhq notes that COW is a good idea for any sort of on-hard disk serialisation scheme to have. 00:29:50 cpressey: ... uhh, yes? 00:29:54 How else could it possibly work? 00:29:55 I'm cloning multiple copies of the same remote repo 00:30:00 Ahhhhh 00:30:02 It should still be able to figure that out :) 00:30:03 Well, it's not psychic. 00:30:12 cpressey: ... It's not going to magically figure out that you're doing data sharing. 00:30:14 psychics 00:30:14 Well, it should have a way for me to tell it 00:30:16 psychic control system 00:30:26 cpressey: see this is just the kind of thing you need my OS for :P 00:30:28 Clone from your clones. 00:30:31 cpressey: There's a very simple way: Clone the remote one once, then clone that multiple times. 00:30:39 cpressey: That tells it exactly what you want to tell it. 00:30:47 Or use ehirdOS. 00:31:01 Yay complexity. 00:31:08 ... 00:31:23 Well, I'll try it, and see if it makes my life any easier. 00:32:07 But now the argument for supporting branches is even weaker :) 00:32:24 Uh, no? 00:33:02 What advantage to branches have over just forking a clone? 00:33:12 *do 00:33:39 ehirdOS certainly makes your life easier, as long as you have no attachment to existing software suites whatsoever :P 00:33:42 Or interfaces... 00:33:50 Or languages, or APIs. 00:34:17 A branch notes that the branch was made, allows you to merge things more readily, and... Yeah. 00:34:37 12:11:39 the vulgar sense of "classical" music 00:34:49 12:11:44 I call "art music" 00:35:14 I'm pretty sure that's called "concert music". 00:35:16 ...and makes my life hell during merges, is all I'm sayin' :) 00:35:31 -!- alise_ has joined. 00:35:33 pikhq: ... no. 00:35:42 Gregor: No? Okay then. 00:35:56 "Art music" is really a rather arrogant phrase. Particularly since... Other music is (or at least can be) an art. 00:36:23 Orchestral music, maybe? Although there's orchestral rock, even. 00:36:34 Let's just call it composer music, because composers are the only ones who listen to it :) 00:36:49 alise_: Definitely no on both counts. 00:36:54 why not call it classical music? 00:36:59 what's wrong with that? 00:37:10 Because that's music from a specific period with a very specific style. 00:37:15 no 00:37:19 lament: Because AnMaster is a pretentious fuck who lives in the 1800s who is also a gigantic prescriptivist. 00:37:22 Because classical is an era. By calling all music of the form classical music, you've removed the name from that era. 00:37:26 (An era and a style) 00:37:28 that's a *different* meaning of the word "classical" 00:37:34 Yay 00:37:39 'Night folks. Have a good weekend. 00:37:45 -!- cpressey has left (?). 00:37:55 it's ok to have multiple meanings if there's no confusion 00:37:58 and there's no confusion 00:38:01 There is MUCH confusion. 00:38:13 which is why people call classical music classical music, and they call classical music classical music, and nobody is confused. 00:38:18 Only amongst yourselves. 00:38:25 Just call it the classical period. 00:38:30 Classical period music. 00:38:31 everybody knows that "classical music" means two different things 00:38:44 "classical" refers to ancient greece anyway 00:38:49 so there're at least 3 meanings 00:38:50 Classical music is the style of music from the classical period, classical music does not need to be from the classical period. 00:39:20 -!- alise has quit (Ping timeout: 252 seconds). 00:39:30 The problem is there's not a term for the music in question here. 00:39:36 I suggest ucodnawg. 00:41:20 You're the man now, ucodnawg 00:41:31 Gregor: Shaddap 00:41:47 also, it turns out windows 7 ships with something genuinely interesting 00:41:52 (As opposed to morbidly curious) 00:42:23 what's more, it's programming-related 00:43:00 Oh? 00:44:08 Yes. PowerShell, in particular. Take, for instance, the seemingly-trivial "type | ls". 00:44:26 Dealiased, Get-Content | Get-SubItem. 00:44:32 But what happens when you run it? 00:44:53 Erm. Failure, because I made a mistake X-D 00:45:05 Take "echo | ls". 00:45:20 That is, Write-Output | Get-SubItem. 00:45:24 When run: 00:45:57 cmdlet Write-Output at command pipeline position 1 00:46:15 Supply values for the following parameters: 00:46:27 InputObject[0]: . 00:46:38 InputObject[1]: Music 00:46:39 Ah. PowerShell -- damned verbose shell, but flexible. 00:46:43 InputObject[2]: 00:46:48 [humdrum dir listing] 00:46:57 The interesting thing is the flexibility. 00:47:07 echo doesn't just print some strings to standard output. 00:47:23 It uses a generalised object input mechanism - command-line or interactive - and sends those objects along the pipeline. 00:47:38 Get-SubItem actually takes a legitimate resource, not just a path name, and lists its subitems. Not just directories, either. 00:47:56 It strikes me as similar to concatenative languages. 00:48:58 -!- dev_squid has quit (Ping timeout: 248 seconds). 00:49:01 ChildItem, not SubItem. 00:49:24 -!- Gracenotes has joined. 00:49:59 In fact the input/output UI + behind the scenes, rich objects idea is tempting for my OS. 00:50:17 interfaces are composable because they're just functions with seasoning 00:50:33 (and even unannotated functions get simple "default" UIs) 00:54:55 13:25:21 btw, has anyone invoked rule 34 on rule 34? 00:55:03 yes; was fulfilled with wolfram elementary automation 34 00:55:29 13:27:11 (be aware of that tvtroupes is highly addictive!) 00:55:29 Tropes. 00:57:47 -!- oerjan has quit (Quit: Later). 00:59:46 GUILTY! 01:03:27 Meggricxshienneh. 01:07:56 Welcome to the Tableauic Home of the Emigrants. 01:09:18 -!- oklokok has quit (Remote host closed the connection). 01:09:42 -!- oklokok has joined. 01:10:21 yo oklokok 01:10:45 I should stop worrying about ehird 01:12:34 -!- BeholdMyGlory has quit (Remote host closed the connection). 01:12:41 Worry about okloCOCK instead. 01:13:06 MissPiggy: why? 01:13:41 okloCOCK taught me something awesome 01:16:02 And that is? 01:16:20 Gregor, kind of like combinator logic excep they don't reduce 01:16:37 this word problem stuff which I had never actaully encountered 01:16:56 it feels a little bit like diophantine equations too 01:18:06 ; 01:18:39 I tried reading the Diophante book once 01:18:46 The notation is pretty old school 01:18:46 -!- angstrom_ has changed nick to angstrom. 01:18:53 -!- oklokok has quit (Read error: Operation timed out). 01:25:59 -!- oklokok has joined. 01:26:02 THE diophantine book? 01:27:30 Yeah 01:27:34 Arithmetica 01:33:07 -!- oklokok has quit (Read error: Operation timed out). 01:33:44 -!- oklokok has joined. 01:35:54 ohh 01:35:57 Gauss? 01:36:24 oh it's by Diophantus 01:36:25 okay 01:36:30 Id not heard of this somehow 01:36:38 is it wort reading? 01:37:12 x 01:37:25 Well, I only found a version in greek with a latin translation 01:37:30 So it's a bit hard to follow 01:37:35 heh 01:37:42 I can read the equations now, but not much else 01:38:44 I tried making this : http://esolangs.org/wiki/User:Slereah/Arithmetica 01:39:34 cool 01:42:05 `translate Ang. plass til barnevogner: 01:42:18 Regarding space for prams: 01:42:26 `swedish Ang. plass til barnevogner: 01:42:27 Ung. pless teel bernefugner: 01:42:33 `translate Tro meg, plassen er et betraktelig større problem enn å få vognen inn og ut. 01:42:35 Believe me, the place is a considerably larger problem than to get the cart in and out. 01:42:51 `translate Nå har riktignok mange kvinner kommet frem til en eller annen "vedtatt sannhet" om at det ikke er mulig å bære en liten vogn opp tre trappetrinn alene, selv når det gjelder små triller som man lett får grep på, men det er et forsvinnende problem ettersom de aller fleste nyere busser her er trappeløse. 01:42:53 because the vast majority of newer buses here are step-less. 01:43:24 I wish somebody who was totally not me would fix translatefromto and translateto :P 01:43:35 We just need to make a copy of Gregor. 01:43:41 Hmm... 01:43:46 Gregor, I would like to be a copy of you. 01:43:46 That person would not be "totally not me" 01:43:50 That person would be "mostly me" 01:44:00 You may commence sending yourself. 01:48:00 A truly set language would be fun. 01:48:35 { {x,{x,x}} | x <- a } is id 01:49:18 { {x,{x,{{y,{y,y}}}}} | x <- a, y <- b } is K 01:49:45 where (x,y) = {x,{x,y}} and \x.y is {{x',y'},...} for all values 01:51:13 alis lool enjoy your russles paradox 01:51:14 { {n} U n | n <- a } is succ (U=union, I probably got it the wrong way around again :)) 01:51:34 MissPiggy: uh you can have inductively defined sets without russel's paradox, idiot 01:51:36 *Russell 01:51:50 (1) fuck you 01:51:53 (2) learn set theory 01:53:43 I'll fuck set theory right into your skull? 01:55:58 -!- alise_ has quit (Ping timeout: 252 seconds). 01:57:19 (3) realize lisp is really just analogous to all that was just said 01:59:13 (4) fuck lisp right into your skull 02:01:56 I'd love that 02:02:01 nice curvy forms 02:02:10 D-8 02:02:33 nice sexp character 02:03:08 * Sgeo should learn Scheme, probably 02:03:13 But I'm still on a Ruby high 02:03:46 Sgeo: Ugh dump that shit and learn scheme 02:03:59 Ugh dump that shit and love you some Haskell. 02:04:11 No, don't listen to pikhq's fanboyism 02:04:18 All haskelletons are the same 02:04:35 ... Morphisms on the category Hask? 02:04:38 Fuck it, I'll learn PHP. You all lose. 02:04:52 Sgeo: No, only you lose in this case. 02:04:55 (With me included in "you all", obviously) 02:04:57 ... Lose all remaining humanity, that is. 02:05:10 (see zzo38) 02:05:54 "There will be no in-depth pedagogy; no dwelling on the semantic appeal of Scheme; no metacircular interpreters; no discussion of the underlying implementation; and no evangelizing about Scheme's virtues" 02:06:04 Hm, maybe I should skip this tutorial 02:08:35 Sgeo LERN PYTHIN 02:08:47 :x 02:09:07 Learn MIPS assembly 02:09:29 Python is my main languag 02:09:33 *language 02:09:46 that was quick 02:10:48 lol 02:10:49 -!- MissPiggy has quit (Quit: Lost terminal). 02:11:37 -!- Asztal has quit (Ping timeout: 264 seconds). 02:26:52 Hm, should I use PLT-Scheme? 02:28:55 NOOOOOES 02:29:08 -!- dev_squid has joined. 02:29:48 More so than any other Scheme, PLT stands for Pretentious Little Troglodytes 02:29:58 -!- MizardX has quit (Ping timeout: 276 seconds). 02:30:15 ?? 02:30:37 Sorry, I've had ... dealings ... with some of the major PLT Scheme folks. 02:30:57 Yeah, um, right now I'm more focused on the language than the communuty 02:31:08 Definitely MIPS. 02:31:17 * Sgeo has already downloaded PLT 02:31:30 I'm not referring to the community, I'm referring to the developers. 02:51:45 -!- angstrom has left (?). 03:06:13 -!- augur has joined. 03:31:33 Sgeo: NO 03:31:35 Not plt 03:31:42 Gregor is right 03:31:44 Quadrescence, why not? 03:32:01 And I have the authority to say this since I am on both Scheme standards committees 03:32:13 Pretentious Little Troglodytes ... 03:32:25 Yeah 03:32:40 So the people suck. Who cares? 03:32:47 Sgeo: Go with Chicken Scheme or Chibi Scheme if you want more or less friendly, general purpose use 03:32:59 Ikarus or Larceny for fast-code-generating compilers 03:34:08 Is there a reason other to, other than the devs being obnoxious? 03:43:02 Well, Chicken Scheme has a very cool implementation. 03:48:25 Howso? 03:49:08 Ok, is this infix convention a PLT thing, or a Scheme thing? 03:50:03 It compiles everything using continuation-passing style into C (without TCO), and uses the C stack as a generation in the Scheme heap. 03:50:52 When the C stack is about to overflow, it longjmps to the trampoline, which copies live objects on the stack into the heap, and then goes back to the Scheme program in process. 03:53:05 Sgeo: Yes there are reasons 03:53:47 Sgeo: Anyway I'm sure you just love the gui of dr scheme or something and that's the reason you're not motivated to change 03:56:43 Quadrescence, ok, what are these reasons? 03:57:12 TOO EVIL TO MENTION 03:57:36 Sgeo: I don't really feel like justifying it to you 03:57:51 You can either take the money I'm giving you, or continue to question if the money is real and not take it. 03:58:16 This seems... familiar 03:58:43 I couldn't explain to you because you don't know scheme. 03:58:47 Are you going to supposedly torture me if I don't take the "money"? 03:58:49 You don't know its idioms. 03:59:02 You don't know how compiling it works, you don't know how interpreting it works. 03:59:14 You don't know what macro expansion is, you probably don't even know the evaluation semantics 03:59:33 -!- oklokok has quit (Remote host closed the connection). 03:59:51 So why should I bother taking 384 hours explaining the faults of PLT Scheme to you relative to the language at hand when you don't know anything about it except it uses a fuckton of parentheses? 04:03:59 -!- oerjan has joined. 04:05:58 The notation is pretty old school 04:06:15 understatement of the year? (no i've never seen it, i think) 04:10:06 -!- oklokok has joined. 04:11:36 18:04:18 All haskelletons are the same 04:11:36 18:04:35 ... Morphisms on the category Hask? 04:11:46 on the skeleton category of Hask, naturally 04:11:54 Well, of course. 04:13:00 With a pullback on the foreskin of my cock lifted into YourAss hole monad 04:13:51 Are keywords a Scheme thing or a PLT thing? 04:14:05 Quadrescence: that's a really remarkable combination of offense and category theory 04:14:09 Sgeo: PLT thing surely 04:14:40 Sgeo: I told you to not use it, because now you're turning stupider and stupider about scheme 04:14:44 also a common lisp thing iirc 04:14:54 they are not keywords 04:15:53 Keywords? Scheme? 04:16:06 What craziness is this? 04:16:11 PLT's 04:16:18 -!- augur has quit (Ping timeout: 245 seconds). 04:16:20 But Sgeo insists on PLT 04:20:55 -!- oklokok has quit (Read error: Operation timed out). 04:21:41 -!- oklokok has joined. 05:51:46 -!- augur has joined. 06:04:54 sp bitches 06:13:43 -!- oerjan has quit (Quit: leaving). 06:14:33 -!- lifthrasiir has quit (Ping timeout: 240 seconds). 06:17:19 Quadrescence: people who hate PLT 06:19:58 -!- dev_squid has quit (Ping timeout: 264 seconds). 06:20:28 Quadrescence, if I switch DrScheme to R5RS, will we both be happy? 06:21:19 I'm happy. I won't feel bad for you being attached to the GUI and Fisher Price My First Programming Language tutorials. 06:22:31 i like drscheme 06:22:50 Quadrescence: you seem quite attached to Fisher Price My First Metaphors 06:22:58 Yeah I am 06:23:00 Two channels so far 06:23:09 Third time'll be the charm 06:23:21 also, people who hate PLT 06:23:32 are the same people who don't shower 06:23:44 -!- dev_squid has joined. 06:23:53 and who stab babies 06:23:57 -!- lifthrasiir has joined. 06:24:13 lament: yeh 06:25:58 for example, this guy clearly hates PLT, just look at his printer: http://www.gearfuse.com/wp-content/uploads/2007/10/nerd.jpg 06:27:08 Also UNIX beards. 06:27:14 * pikhq strokes his UNIX beard 06:27:37 It's both a fashion accessory *and* a way of detracting ladies! 06:29:20 * Gregor strokes his lack of facial hair. 06:40:33 -!- coppro has joined. 07:02:42 -!- Asztal has joined. 07:09:40 (procedure? procedure?) 07:12:44 -!- oklokok has quit (Read error: Operation timed out). 07:13:44 PROC 07:13:45 PROC 07:17:23 -!- oklokok has joined. 07:24:50 According to R5RS, "w" is a semivowel 07:26:52 Oo 07:26:59 why does that matter? (I know nothing of Scheme) 07:27:39 It doesn't. It was just in an example 07:27:43 ah 07:27:48 anyways, maybe they're Welsh? 07:33:33 "w" is to "oo" (as in tool) as "t" is to "s" 07:34:12 Being effectively a plosive makes it usable only as a consonant (it can't be held like a vowel), but it is fundamentally produced as a vowel sound. 07:37:12 HAY GUYS 07:37:18 WANNA KNOW ABOUT A COOL GRAMMAR FORMALISM? 07:37:19 8D 07:37:35 also, w is indeed a semi vowel. 07:37:43 semivowel is another word for glide. 07:38:02 Yeah, you lost me 07:38:06 linguistics is not a long suit 07:39:59 -!- jcp has quit (Quit: I will do anything (almost) for a new router.). 07:40:06 "glide" is the word I couldn't find there. 07:40:45 Glides are to vowels as plosives are to fricatives. 07:40:51 (Roughly speaking) 07:45:48 yeah, only one of those words carries any meaning to me 07:47:54 Poor pooppy :P 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:02:02 -!- cheater2 has quit (Read error: Connection reset by peer). 08:02:28 -!- cheater2 has joined. 08:09:16 -!- dev_squid has quit (Ping timeout: 276 seconds). 08:19:34 -!- coppro has quit (Ping timeout: 268 seconds). 08:20:20 so Gregor 08:20:26 about these range concatenation grammars 08:20:36 they're basically a bunch of prolog predicates, in many ways 08:20:51 only instead of having the values true or false, or whatever 08:20:57 they have string values 08:21:08 where "true" is the empty string 08:24:19 -!- MigoMipo has joined. 08:26:16 -!- coppro has joined. 08:27:06 hey coppro 08:27:14 wanna learn about range concatenation grammars? :D 08:38:23 -!- kar8nga has joined. 08:47:42 (display "Good night all") 08:50:24 night you 09:00:29 -!- MigoMipo has quit (Remote host closed the connection). 09:03:18 -!- MigoMipo has joined. 09:07:33 -!- tombom has joined. 09:59:05 -!- kar8nga has quit (Remote host closed the connection). 10:24:13 -!- oklokok has quit (Ping timeout: 264 seconds). 10:39:58 [02:26.50] wanna learn about range concatenation grammars? :D 10:39:59 hahaha 10:52:53 -!- alise has joined. 10:53:08 yo 10:56:05 19:32:01 And I have the authority to say this since I am on both Scheme standards committees 10:56:10 including r6rs? 10:56:17 you are a horrible person 10:56:22 No, the current standards 10:56:55 The small scheme and big scheme, in development 10:57:25 you are still a horrible person :p 10:57:54 -!- oklokok has joined. 10:57:55 Why? 10:59:58 i am typing while walking down srfarirs 11:00:30 HD got parked for ages 11:00:49 what 11:01:01 -!- alise_ has joined. 11:01:11 Quadrescence: cuz I'm an r5rs fanboi 11:01:35 Me too 11:01:48 Which is why the plan is to ditch r6rs entirely 11:02:30 yeah, but "big scheme" is still a fundamental misunderstanding 11:02:32 imo :P 11:02:40 but then I'm even worse than a haskell fag, I'm a dependent-types fag 11:03:19 I get to be holier-than-thou in both programming (to... everyone else) and logic (to everyone (well I think there's about 3 other constructivists in the world so)) 11:03:44 alise_: Actually I am a dependent type fag too 11:03:52 Sweet! Let's procreate. 11:04:00 wow okay are you hot? 11:04:06 (Note: I am actually male.) 11:04:20 (If you have been mislead, this was entirely intentional. Have a nice day!) 11:04:22 (me too, doesn't mean we can't procreate, right?) 11:04:23 -!- MigoMipo has quit (Quit: When two people dream the same dream, it ceases to be an illusion. KVIrc 3.4.2 Shiny http://www.kvirc.net). 11:04:49 (is it technically procreation?) 11:04:52 -!- alise has quit (Ping timeout: 252 seconds). 11:05:16 (depends on how procreation occurs) 11:05:28 I appear to be fulfilling my prophecy that once I obtain a laptop, I will never turn it off while moving. 11:05:29 NEVER 11:05:36 Admittedly it turns out the 3G reception is pretty shitty in taxis 11:06:16 wait now quad is here? 11:06:36 Quadrescence: ok then maybe you'll hate me more for the fact that I'm an everything-in-computing-is-broken-and-my-system-that-breaks-every-existing-thing-will-make-it-right charlatan 11:06:43 oklokok: I made this channel 11:07:03 alise_: i don't get it 11:07:36 Quadrescence: now I'm doubting whether you're actually on the committee :) 11:07:47 alise_: My name is Robert Smith 11:07:50 Go look it up 11:08:44 now that depends on me trusting your claim "My name is Robert Smith", which amounts to exactly the same trust issue :) 11:08:48 also, what bit don't you get? 11:08:54 the whole thing 11:09:22 ok, what error message did your mind spit back? 11:09:32 this is like "I tried (f x2) and it didn't work" 11:09:52 are you saying all current systems are not optimal for computing? 11:10:00 systems => programming languages 11:10:05 computing => programming 11:10:31 system = language/OS/interface/everything 11:10:35 they're broken at every level 11:10:49 Theoretically or practically? 11:11:16 If you say theoretically, this conversation will have become uninteresting 11:11:37 `well, theoretically yes, but practically mostly 11:11:41 No output. 11:12:03 Quadrescence: i.e. some things I've invested theoretically 11:12:05 but the motivation is wholly practical means 11:12:23 not that the resulting system is /practical/ since its sheer novelty means that... nothing existing works pretty much 11:12:46 Okay, so do you think there can be a much, much better programming language? 11:12:53 (let us not talk about OSes and stuff) 11:13:13 Well, that's the thing: I make no distinction between the running language environment (think Smalltalk) and the OS. 11:13:24 But if you mean the actual little snippets of code at the bottom... 11:13:29 "Maybe". Much, much better than C? Hell yes. 11:13:33 Than Scheme? Sure. 11:13:58 Than Fagskell? 11:13:59 Than Agda, say (although it has many foibles) or Epigram? Not much, much, *much* better. Not for humans, at least. 11:14:01 That's all speculation though and I'll probably be proved wrong. 11:14:10 Quadrescence: Well let's not get into that :P 11:14:16 You will be proved wrong 11:14:30 yes, likely 11:14:34 what i'm trying to say is 11:14:35 Certainly 11:14:43 i cannot /imagine/ a much, much, *much* better language than those 11:14:45 much, much better sure 11:14:48 I can. 11:14:49 imagine but not specify ofc 11:14:53 And I mean that seriously. 11:14:58 what is it, Forth? :-) 11:15:02 Hahaha 11:15:05 No. 11:15:11 I am in the process of designing it now. 11:15:14 INTERCAL? 11:15:20 Quadrescence: oh R7RS? 11:15:23 No 11:15:25 Definitely not 11:15:32 what, then? 11:15:36 This is my own project. 11:15:49 let me just say that I'm doubtful your language designing skills so greatly exceeds those of every other language designer in the history of the universe :P 11:16:05 *exceed 11:16:07 That's fine. 11:16:18 also, IRCing in a taxi, doo doo doo. god dammit a corner, doo doo AAAAAAAAAH 11:16:20 But if I stand on their shoulders, then I can still reach higher 11:16:30 i guess this is why people use the suspend feature on laptops 11:16:34 Quadrescence: okay fine 11:16:44 Quadrescence: you probably still want it stored as utf-8 text in files on posix though 11:16:44 but I still see what you mean 11:16:48 FOR WHICH YOU ARE ABOMINABLE 11:16:58 what 11:17:04 what what? 11:17:09 The language is being specified purely theoretically first. 11:17:21 Yes, with a syntax based on streams of characters. 11:17:40 And as running-as-a-process rather than living-environment (think Smalltalk in the 70s when it was actually the OS) 11:18:09 (Note: Most "AST editing nao! ASCII code sux!" people are blowhards without a coherent idea for a good interface. Please do not count me among them, lest I be sad.) 11:18:09 what? It can run as an environment 11:18:28 Quadrescence: ok, so you don't define "program"? as in a cmplete "module" of code? 11:18:45 in an environment I guess you could say all values are part of one gigantic program, but... 11:18:48 *complete 11:18:57 (module not as in module system) 11:18:58 I know the distinction you're making 11:19:01 I know 11:19:08 alright 11:19:22 "Quadrescence: Okay, so do you think there can be a much, much better programming language?" <<< have you heard of clue? 11:19:33 Yes 11:19:34 oklokok: no, oklotalk! 11:19:36 oklotalkclue 11:19:44 oh you have 11:19:50 oh hmm right 11:19:51 you've abandoned oklotalk and this makes me ensaddened 11:19:58 EN 11:20:00 SADD 11:20:00 ENED 11:20:09 i'm sorry, it got out of hand 11:20:18 that's what she said 11:20:22 in bed 11:20:33 was she holding my cock but it slipped 11:21:06 oklokok: precisely 11:21:09 because it's so small you understand 11:21:21 note: using laptops in cars makes you carsick 11:21:26 or, me, at least 11:21:28 no it doesn't 11:21:46 does for me 11:21:54 cpressey: File systems make data sharing difficult. <-- if I understood that convo correctly, cpressy was saying that hg can't share common data between branches? That seems strange. bzr for example is fully capable to do so if you want it. 11:21:57 i am living proof right now 11:21:58 ONLY WEAKLINGS GET CARSICK 11:22:14 hm hardlinks only work within a single file system 11:22:26 bzr doesn't depend on that for it to work 11:23:20 and yes bzr can if you use a "shared repo" for the branches figure out that thing when cloning related (or the same) remote branch 11:23:24 -!- alise has joined. 11:23:31 3G -> enter city -> GPRS 11:23:36 Civilisation! 11:23:41 alise, that seems backwards indeed! 11:23:51 and nowdays you don't need a shared repo for data sharing when doing local clones 11:24:13 can someone link me directly to today's log, it'll take me ages to get there 11:24:19 oh! 11:24:21 finally, nm 11:24:27 http://tunes.org/~nef/logs/esoteric/10.03.06 11:24:36 lol we hit a bump when I was cpoying 11:24:40 so I bashed the keys randomly 11:24:42 *copying 11:24:54 (you need to provide some option to bzr branch for that to happen for the latter situation) 11:25:10 see you guys for a bit 11:25:19 alise, cya 11:25:35 alise, also, doesn't roaming work between 3G and GPRS? 11:25:48 seems backwards if it doesn't hm 11:26:11 in my dream, two people told me almost the same thing in pm almost simultaneously, and i tried to cp it to both of them to ask for their explanations, but accidentally cp's a thousand lines of o's on one query window, and couldn't see my keyboard anymore, so i couldn't stop it. what a horrible nightmare. 11:26:27 *cp'd 11:26:30 -!- alise_ has quit (Ping timeout: 252 seconds). 11:29:26 -!- alise has quit (Ping timeout: 252 seconds). 11:32:03 o 11:32:03 o 11:32:04 o 11:32:04 o 11:32:04 o 11:32:04 o 11:32:04 o 11:32:04 o 11:32:05 o 11:32:06 o 11:32:06 o 11:32:06 o 11:32:22 ^ a small-scale version of what it'd look like 11:59:40 -!- BeholdMyGlory has joined. 12:04:16 oklokok, strange one 12:45:19 -!- oerjan has joined. 12:51:50 -!- zzo38 has joined. 12:52:36 -!- zzo38 has quit (Remote host closed the connection). 13:09:34 -!- kar8nga has joined. 13:22:42 -!- MigoMipo has joined. 13:25:32 -!- MizardX has joined. 13:33:18 when i was a kid i always thought i'd be in big trouble if i dropped into a well or something, because crying for help would be so cliche i couldn't do it 13:34:18 just as well you never realized breathing is a cliche 13:34:31 *whoops*... 13:35:25 i'd play dead but it'd take weeks on irc, so i'll just say "luckily people don't notice it so it doesn't matter" 13:35:41 oh well 13:37:46 now i kinda wish i'd played dead. 13:37:53 that would've been so cool 13:38:38 dead people are generally cool. it's that lack of metabolism. 13:41:15 -!- kar8nga has quit (Remote host closed the connection). 13:41:26 :D 13:41:36 seriously man 13:43:06 i'm serious. it's a very grave matter. 13:43:54 no i mean you're seriously funny, or maybe i'm just abnormally high on life today 13:44:17 tbh it feels like an awesome idea to jump out of the window naked 13:44:20 just second floor 13:45:00 pro tip: make sure the door isn't locked first 13:45:19 :D 13:45:28 well i could put the keys in my meat pockets 13:45:59 running outside naked is awesome, but i'm too chicken to ever actually do it 13:45:59 ...in which it is revealed that oklokok is actually a kangaroo. 13:46:09 ! 14:14:38 freecell is a fun game 14:14:39 -!- scarf has joined. 14:17:07 i was just told i'm the preferred candidate for a summer job about cellular automata, but i will probably not be chosen because of bureaucratical reasons :) 14:28:18 heh, seems typical 14:29:44 actually not even just bureaucratical, but also political reasons 14:31:22 cellular automata are communist! 14:31:41 they usually take people who are currently doing their master's degree, which i only start @ fall, and the prof X whose position this is will probably take another prof Y's student, because Y took X's student last year 14:33:32 i'm so unlucky, first the cellular automata, formal languages, graph theory and tilings and patterns (tm's in tiles) courses are all given just before i realize i should switch to math, and then the CA prof takes a student for a summer job just before i start my master's :< 14:34:15 if only i'd born on a different year of the cycle 14:34:19 beenm 14:34:22 *been 14:34:22 oklokok: What was your BS in? 14:34:47 i haven't finished it yet, but it's in the it dep and it's about fully polynomial approximations to knapsack 14:35:01 PM me 14:35:31 that's another thing, i'm not officially a math student yet 14:36:49 actually now i'm wondering what BS is short for exactly 14:36:56 bachelor's ...? 14:40:37 Bachelor of Science 14:46:33 oh! 14:46:48 maybe i should've known 15:19:03 -!- jcp has joined. 15:43:41 -!- FireFly[DS] has joined. 15:52:33 `define cajole 15:52:39 * wheedle: influence or urge by gentle urging, caressing, or flattering; "He palavered her into going along" \ [13]wordnetweb.princeton.edu/perl/webwn \ * To encourage or persuade by effort; to coax 16:36:47 -!- FireyFly[DS] has joined. 16:36:50 -!- FireFly[DS] has quit (Read error: Connection reset by peer). 16:39:37 -!- FireyFly[DS] has quit (Client Quit). 16:54:34 -!- sebbu2 has joined. 16:55:17 -!- sebbu has quit (Ping timeout: 260 seconds). 16:55:17 -!- sebbu2 has changed nick to sebbu. 17:19:28 -!- oerjan has quit (Quit: Good night). 17:56:44 This exists: "Mooix: Where unix is the MOO." 17:56:55 This does not exist: "InterMOO: Where the Internet is the MOO." 17:57:39 So, I might change that. 17:58:01 uorygl, is that based on some meme? 17:58:26 uorygl, also should be moonet 17:58:26 It's not a snowclone as far as I know. 17:58:43 uorygl, snowclone? 17:59:01 A snowclone is a meme based on a phrase. 17:59:12 Like "X is the new Y". 18:01:34 Calling it Moonet would continue the Mooix pattern, but I don't want to do that. 18:02:04 "Internet" was originally an adjective meaning "between the nets"; we can pretend "InterMOO" was originally an adjective meaning "between the MOOs". 18:03:34 an internet is a network of network 18:03:35 *networks 18:03:43 and contrary to popular belief, there is more than one internt 18:03:46 *internet 18:03:50 just, only one of them is big and famous 18:04:01 and that's the one that's called "the Internet" 18:04:23 Arguably, there are two of them that are called the Internet: the Internet version 4 and the Internet version 6. 18:04:34 "inert net". 18:04:58 A net made out of glass would be a pretty inert net. 18:05:47 uorygl: umm, IPv4 is "Internet Protocol version 4" 18:06:05 and the bits of the Internet that use version 4 and version 6 of the protocol are definitely connected togetgher 18:06:07 *together 18:06:09 so form one internet 18:06:45 Intern-net 18:07:05 (If Clinton had invented it instead of Gore) 18:07:16 So, if the Internet Protocol was developed to transfer data between the nets, does that mean that a protocol developed to transfer stuff between the Internet version 4 and the Internet version 6 is an Interinternet Protocol? :P 18:07:22 AnMaster: Your comments on the FRTH fingerprint made me want to write something in Forth. You should be ashamed of yourself. 18:09:00 Anyway, an InterMOO protocol would be based on an RPC protocol. 18:09:20 uorygl: IPv4 Internet and IPv6 Internet are linked. 18:09:25 Thus, what we have is an InterInternet. 18:10:14 (IIRC, they're linked through various forms of tunneling, as well as hosts being on both) 18:10:26 Hmm, maybe an RPC protocol is actually the sole thing we need. 18:10:30 The tunneling is only possible due to the hosts that are on both :P 18:11:13 Thank goodness for 192.88.99.1! 18:12:06 And what's that one DNS server anycast address? 4.3.2.1? 18:14:04 4.2.2.1 18:14:22 What about 8.8.8.8 ? 18:14:27 different servers 18:15:56 fizzie, hah 18:29:29 uorygl: How much MOO would a moo-cow moo if a moo-cow would moo MOO? 18:29:59 If it's my MOO, then about a hundred megabytes of it. 19:12:26 -!- jcp has quit (Read error: Connection reset by peer). 19:13:33 -!- jcp has joined. 19:16:05 -!- MizardX- has joined. 19:18:09 -!- MizardX has quit (Ping timeout: 260 seconds). 19:18:34 -!- MizardX- has changed nick to MizardX. 19:23:31 I want to like Scheme 19:25:07 that's a strange thing to say 19:25:31 o-qo-do.oo-qp-oo.ob-op-o 19:26:50 `yes 19:26:51 y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y 19:27:16 `no 19:27:17 No output. 19:27:26 `No output. 19:27:27 No output. 19:27:30 `cool 19:27:32 No output. 19:27:33 Almost a quine. 19:27:43 `` 19:27:45 No output. 19:28:29 hm 19:28:42 `ls 19:28:44 bin \ cube2.base64 \ cube2.jpg \ hack_gregor \ hello.txt \ help.txt \ huh \ netcat-0.7.1 \ netcat-0.7.1.tar.gz \ paste \ poetry.txt \ quotes \ share \ test.sh \ tmpdir.16443 \ wunderbar_emporium \ wunderbar_emporium-3.tgz \ wunderbar_emporium-3.tgz.1 19:28:50 uorygl, does that explain it ;P 19:29:04 huh 19:29:10 `file wun* 19:29:12 wun*: ERROR: cannot open `wun*' (No such file or directory) 19:29:13 hm 19:29:15 `run file wun* 19:29:16 wunderbar_emporium: directory \ wunderbar_emporium-3.tgz: gzip compressed data, from Unix, last modified: Fri Aug 14 14:01:51 2009 \ wunderbar_emporium-3.tgz.1: gzip compressed data, from Unix, last modified: Fri Aug 14 14:01:51 2009 19:29:22 `help 19:29:23 Runs arbitrary code in GNU/Linux. Type "`", or "`run " for full shell commands. "`fetch " downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert " can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/ 19:29:46 `run tar tf wunderbar_emporium-3.tgz 19:29:47 wunderbar_emporium/ \ wunderbar_emporium/pwnkernel.c \ wunderbar_emporium/tzameti.avi \ wunderbar_emporium/wunderbar_emporium.sh \ wunderbar_emporium/exploit.c 19:29:52 huh 19:30:42 `echo `echo 19:30:43 `echo 19:30:50 So a quine is possible. 19:30:58 it is? 19:31:05 Yep. 19:31:13 at least there's a sequence of programs that approaches a quine 19:31:55 -!- kar8nga has joined. 19:32:21 `yes `echo 19:32:22 `echo \ `echo \ `echo \ `echo \ `echo \ `echo \ `echo \ `echo \ `echo \ `echo \ `echo \ `echo \ `echo \ `echo \ `echo \ `echo \ `echo \ `echo \ `echo \ `echo \ `echo \ `echo \ `echo \ `echo \ `echo \ `echo \ `echo \ `echo \ `echo \ `echo \ `echo \ `echo \ `echo \ `echo \ `echo \ `echo \ `echo \ `echo \ `echo \ `echo \ `echo 19:32:35 `yes `yes 19:32:36 `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes \ `yes 19:32:50 That's not going to work. 19:33:03 `yes \ `yes 19:33:04 \ `yes \ \ `yes \ \ `yes \ \ `yes \ \ `yes \ \ `yes \ \ `yes \ \ `yes \ \ `yes \ \ `yes \ \ `yes \ \ `yes \ \ `yes \ \ `yes \ \ `yes \ \ `yes \ \ `yes \ \ `yes \ \ `yes \ \ `yes \ \ `yes \ \ `yes \ \ `yes \ \ `yes \ \ `yes \ \ `yes \ \ `yes \ \ `yes \ \ `yes \ \ `yes \ \ `yes \ \ `yes \ \ `yes \ \ `yes \ \ `yes \ \ `yes \ 19:33:12 what's `yes 19:33:22 man 1 yes 19:33:34 `yes is a command that outputs its input forever. 19:33:35 is a command that outputs its input forever. \ is a command that outputs its input forever. \ is a command that outputs its input forever. \ is a command that outputs its input forever. \ is a command that outputs its input forever. \ is a command that outputs its input forever. \ is a command that outputs its input forever. 19:33:44 So if it weren't for those darn line breaks... 19:34:19 If it wasn't for those darn line breaks then what ...? 19:34:32 `run yes is a command that outputs its input forever. | head -n1 19:34:33 is a command that outputs its input forever. 19:34:36 hm 19:34:38 Never mind. 19:34:42 uorygl, any bash quine should work 19:34:54 if you can add `run to the start of it 19:35:03 `run echo "$0" 19:35:05 /bin/bash 19:35:10 `run echo "$@" 19:35:11 No output. 19:35:14 `run :(){ echo blah }; :; :; : 19:35:15 No output. 19:35:26 Gregor, how is bash invoked for `run? 19:35:26 Oi. 19:35:43 AnMaster: IIRC, it's just that the run shell script does "$@" 19:35:46 `run foo(){ echo blah}; foo 19:35:47 No output. 19:35:56 Gregor, huh? 19:36:04 Gregor, does it use bash -c or what? 19:36:09 `run foo(){ echo foo }; foo; echo bar 19:36:11 No output. 19:36:11 Why not it work? 19:36:11 AnMaster: run is a bash script 19:36:14 AnMaster: It just does "$@" 19:36:16 `type run 19:36:18 No output. 19:36:21 `run type run 19:36:22 No output. 19:36:26 `run dog run 19:36:27 No output. 19:36:27 `run ls */*run* 19:36:29 bin/runfor 19:36:30 `run 'foo(){ echo foo }; foo; echo bar' 19:36:32 No output. 19:36:41 Gregor, where is the script? 19:36:46 Built in to HackEgo. 19:36:49 -_- 19:44:03 I suppose, in retrospect, that there is no reason for run to be built in. 19:44:23 Gregor, except that it would be a pain of someone overwrote that file 19:44:31 True 19:44:47 Anywho, it's in the HackBot hg repo 19:45:04 Gregor, that is a different repo than in `help? 19:45:11 Presumably not 19:45:38 Gregor, http://codu.org/projects/hackbot/fshg/ ? 19:45:45 * AnMaster can't find it run there 19:45:51 No, that's the filesystem in HackBot, not HackBot itself. 19:45:53 Remove "fs" 19:45:57 ah 19:46:00 well I didn't know 19:46:08 and the fs one is the one in `help 19:47:01 `ls .hg 19:47:02 No output. 19:47:08 `mkdir .hg 19:47:10 No output. 19:47:10 Invalid .hg directory found. 19:47:13 heh 19:47:18 Gregor, damn you ;P 19:47:25 `ls .hg 19:47:27 No output. 19:47:44 .hg is moved elsewhere to prevent tampering. 19:47:55 `ls 19:47:56 bin \ cube2.base64 \ cube2.jpg \ hack_gregor \ hello.txt \ help.txt \ huh \ netcat-0.7.1 \ netcat-0.7.1.tar.gz \ paste \ poetry.txt \ quotes \ share \ test.sh \ tmpdir.18069 \ wunderbar_emporium \ wunderbar_emporium-3.tgz \ wunderbar_emporium-3.tgz.1 19:47:58 `ls -a 19:47:59 bin \ cube2.base64 \ cube2.jpg \ hack_gregor \ hello.txt \ help.txt \ huh \ netcat-0.7.1 \ netcat-0.7.1.tar.gz \ paste \ poetry.txt \ quotes \ share \ test.sh \ tmpdir.18110 \ wunderbar_emporium \ wunderbar_emporium-3.tgz \ wunderbar_emporium-3.tgz.1 19:48:08 Gregor, where is elsewhere? 19:48:31 Why would I make it accessible if it was moved to PREVENT TAMPERING >_< 19:48:41 Gregor, oh btw googling suggests "wunderbar_emporium" is some old exploit for pre-2.6.29 kernels or such 19:48:49 Uhhh, OK? 19:49:03 I was just confused by the name of it before 19:49:12 Why do I care? 19:49:34 seems asi 19:49:50 asiekierka 19:49:51 s/$/ is behind it/ 19:49:57 Why do I care? 19:49:57 as in 19:50:06 behind it being in egobot 19:50:13 i prefer caused 19:50:14 So? 19:50:25 AFAIK it hasn't worked, so why do I care? 19:50:27 Gregor, I presume you have a new enough kernel? 19:50:31 `uname -a 19:50:32 Linux codu.org 2.6.26-1-xen-amd64 #1 SMP Sat Jan 10 20:39:26 UTC 2009 x86_64 GNU/Linux 19:50:40 hrrm 19:51:04 Don't you think Codu would have been a little bit more ... pwned if it worked inside of plash? :P 19:51:20 Gregor, I have no idea if it worked, but considering it uses a bug in a system call.. 19:51:28 I don't think plash helps against that 19:51:40 of course, one can hope the kernel is patched 19:51:57 looks like the sock_sendpage root exploit 19:52:38 hm... "Versions prior to the Linux kernel 2.4.37.5 and 2.6.31-rc6 are vulnerable." 19:52:49 Gregor, I suggests you investigate this, just in case 19:53:36 It hands you root. 19:53:52 Which in Plash gets you nowhere. 19:54:06 pikhq, afaik if you have root you can break out of chroot still 19:54:19 pikhq, you are aware of the double chroot I assume? 19:54:42 AnMaster: ... *If you have commands*. 19:54:52 pikhq, it is enough to have syscalls 19:54:57 Plash runs in an empty chroot. 19:55:01 pikhq, since that is all those commands use 19:55:03 Completely. And utterly. Empty. 19:55:05 pikhq, sure, so mkdir as root 19:55:09 pikhq, using syscalls 19:55:12 perfectly possible 19:55:16 then double chroot using that 19:55:16 Mmm. 19:55:42 It is sufficient to have syscalls, as root. 19:55:45 pikhq, my point is that if you have root inside a chroot on linux you can always break out 19:55:48 I still doubt highly that this worked. 19:55:58 Gregor, I hope that is the case 19:56:45 Of course, I don't know what the result was supposed to be :P 19:57:08 Clearly the Plash chroot should be on a read-only filesystem. 19:57:38 pikhq, even so you can circumvent that as root 19:58:02 pikhq, I'm pretty sure remounting would be possible as root even with no access to any sort of /dev 19:58:15 Don't even need to, just mount a tmpfs somewhere. 19:58:29 Gregor: Requires a mountpoint. 19:58:44 AnMaster: Requires a filesystem that is capable of being mounted r/w. 19:58:47 pikhq, like /? 19:58:50 inside the chroot 19:58:57 is already mounted. 19:58:59 that is a valid mount point afaik 19:59:00 Erm. 19:59:06 pikhq, you can mount something on top can't you? 19:59:11 / is already mounted. 19:59:19 pikhq, I once managed to mount /dev on / on a freebsd system 19:59:22 had to reboot it 19:59:56 I just got a spiffy idea. 20:00:01 Hrm. You can in fact mount on top of a mount. 20:00:05 pikhq, yep 20:00:24 pikhq, you need kernel patches to prevent this if you want to do that 20:00:29 RawLinux: a program where you simply type system calls in base64, and it tells you the results in base64. 20:02:22 uorygl, hm? 20:03:03 That's my spiffy idea. 20:03:26 pikhq, just accept that plash depend on there being no local root exploits 20:03:54 uorygl, that would be somewhat messy due to system calls that take pointers and so on 20:04:02 Yes, plash does of course depend on that, it would be silly to think you could work around the possibility of root exploits :P 20:04:09 AnMaster: What about the PtraceJail? 20:04:23 So, Plash works by putting something in an empty chroot, and giving it alternative file system accessors? 20:04:28 uorygl, you would need a way to pointers to structs and so on 20:04:31 uorygl: Yeah. 20:04:32 uorygl: Basically. 20:04:35 It replaces libc. 20:04:55 AnMaster: are there any system calls that use pointers for anything other than taking variable-size input and providing variable-size output? 20:04:58 uorygl, it uses IPC to talk through the chroot with a process that handles file system for it and so on 20:05:01 iirc 20:05:07 AnMaster: What about the PtraceJail? <-- I don't know 20:05:16 but I guess there could be exploits for that as well 20:05:34 There could always be exploits. 20:05:41 No matter how many layers you put between. 20:05:42 Plash could hypothetically monitor *all* the system calls. 20:05:56 Which would leave the exploits being issues in Ptrace. 20:05:58 pikhq: Then it would just take a bug in plash *shrugs* 20:06:03 Or ptrace 20:06:11 Yeah. 20:06:58 or in a system call allowed by plash 20:07:47 (it need to allow some, like those for growing the stack or heap) 20:08:03 (or mmaping anonymous memory or whatever) 20:08:25 Gregor, I wonder how plash emulates mmap()ing of files 20:08:37 Donno 20:08:45 I mean, it needs to actually be mapped into the process for it to have the correct semantics 20:08:59 How does memory mapping files work at all? 20:09:06 uorygl: Satan's magic. 20:09:09 uorygl, using mmap()? 20:09:35 so spider solitaire, can you get good in it? looks pretty luck-based to me 20:09:37 How does mmap() work? 20:09:39 uorygl, but point is, if two processes mmap() the same file, they should see updates 20:09:54 uorygl, black magic 20:09:59 i used to play freecell but after 300 games it's sort of hard to find challenge in it 20:10:06 uorygl, or rather, go read glibc and kernel sources 20:10:14 mostly kernel sources 20:11:00 oklocock: You should get some friends and play Hydra! 20:11:20 Does it copy the file into memory and then copy it back when it's done? Does it trap memory access and replace it with filesystem access? 20:11:44 What's Hydra? Is it that game where you try to grow as many heads as possible before time's up? 20:12:01 uorygl: Well, sort of :P 20:12:10 http://codu.org/wiki/Hydra 20:14:02 uorygl, it reads file in during page faults 20:14:12 uorygl, meaning, it won't actually read the data in until you try to read it 20:14:47 play poker instead 20:14:51 you'll go broke, it's fun 20:14:52 uorygl, if you changed the file, it is written back when the file is either unmapped or when the (underlying physical) page is unmapped by the vm 20:14:56 Strip poker! 20:14:58 iirc 20:15:01 That way, you'll just go naked. 20:15:04 -!- oklokok has quit (Read error: Operation timed out). 20:15:43 -!- Azstal has joined. 20:15:52 strip poker is a very asymmetric game for the men and women involved 20:16:00 uorygl, oh and if several processes mapped the same file, the same page is mapped into both processes 20:16:09 uorygl, so it can be used for IPC 20:16:16 * uorygl nods. 20:16:40 uorygl, I won't promise it works for futexes or such because that is even more black magic than mmaping 20:17:00 it might need something else 20:17:16 (and no that wasn't a typo for mutexes) 20:17:33 -!- Asztal has quit (Ping timeout: 245 seconds). 20:18:11 uorygl, oh and I think there is some call similar to fflush() for mmaped pages too 20:18:16 to force writing any changes 20:18:24 I don't remember how you did that though 20:18:26 What's a futex? 20:18:37 Can you do mutexes with mmaping? 20:19:26 uorygl, something the linux kernel provides and that glibc pthreads and such then uses to implement mutexes, semaphores and most (all?) of the other pthreads sync thingies 20:19:34 that is what a futex is 20:19:43 uorygl, see man 2 futex 20:19:57 uorygl, oh and man 7 futex too 20:20:08 the latter seems more like an introduction to the concept 20:20:35 uorygl, of course now we are linux specific. These details can and does vary widely between different OSes 20:20:57 though the mmap is probably implemented in a similar manner on most *nix 20:21:04 s/the // 20:21:43 -!- cal153 has quit (Ping timeout: 256 seconds). 20:22:04 * uorygl ponders running Cygwin under Wine under Cygwin under Wine. 20:22:13 why on earth 20:22:27 uorygl, also these mmap semantics are probably *not* valid for cygwin 20:22:29 The same reason we create esoteric programming languages. 20:22:45 uorygl, also iirc it doesn't work 20:22:47 as in 20:22:54 cygwin doesn't run properly under wine 20:23:07 I would expect running Cygwin under Wine to be the easy part. 20:23:21 uorygl, well it might have changed since last time I heard someone try it 20:23:24 (in here too iirc) 20:23:29 maybe was a year or so ago? 20:23:46 Wouldn't it just be a bunch of executables and libraries? 20:23:47 -!- FireFly[DS] has joined. 20:23:52 (that's a guesstimate) 20:24:00 uorygl, ? 20:24:14 FireFly[DS], hi there, long time no c? 20:24:28 Isn't that pretty much what Cygwin is? 20:24:40 uorygl, except it does some weird stuff 20:24:45 uorygl, like it's fork() semantics 20:24:49 I assume you read about them 20:25:33 I know very little about Cygwin. 20:25:43 -!- cal153 has joined. 20:26:40 Cygwin implements UNIX semantics on Windows. 20:26:47 uorygl, to emulate fork it does something like: "start new process, make parent wait on mutex, child wakes up parent and waits on mutex, most of the address space (except read only stuff from the binary) is copied to the child, both processes are resumed" 20:26:49 To do this, it has to do some *very* weird stuff. 20:26:59 -!- FireFly[DS] has quit (Read error: Connection reset by peer). 20:27:00 iirc it was slightly more complex than that 20:27:03 but you get the idea 20:27:06 Fork is probably the weirdest. 20:27:18 pikhq, I suspect mmap would also be very weird 20:27:27 unless it can map it fairly straight to some windows system call 20:27:49 -!- FireFly[DS] has joined. 20:27:55 FireFly[DS], wb! 20:28:07 FireFly[DS], haven't seen you for ages 20:28:25 Hello 20:28:32 AnMaster: Windows has the ability to map files into memory. 20:28:41 Ages, as in what, three days? 20:28:43 pikhq, sure, but what are the semantics for that? 20:28:50 FireFly[DS], hm? maybe I misremember then 20:28:58 Complex, but possible to wrap sanely. 20:29:01 I think so :P 20:29:13 FireFly[DS], why on DS? 20:29:35 Because I'm on a DS, not at home 20:29:44 holiday stuff, skiing 20:29:55 What sort of DS is this? 20:30:09 the Nintendo sort 20:30:14 * uorygl nods. 20:30:20 You "create a file mapping object", which is kinda like fopen, and you then "create a file view", which actually sticks the section of the file you want into virtual memory. 20:30:36 wow, man 7 futex is interesting 20:30:43 The phat nintendo sort, even 20:30:47 it is brilliant and clever 20:30:53 (how it works) 20:31:21 uorygl, is there any DS except Nintendo? 20:31:24 well 20:31:29 that one could possibly IRC from I mean 20:31:39 Doesn't give you odder things like anonymous mappings, but that's not needed for straight POSIX semantics. 20:32:08 I think I've heard of other DSs in the past. 20:32:10 pikhq, are changes reflected in other processes that mapped the same file? 20:32:28 -!- oklokok has joined. 20:32:44 AnMaster: Yes. 20:32:58 pikhq, well it seems okay I guess 20:33:02 then* 20:33:16 pikhq, but aren't anon mappings POSIX? 20:33:24 No. 20:33:40 Anonymous mappings are a common extension. 20:34:44 Oh, whaddya know. There's a way to get anonymous mappings in Win32, too. 20:35:11 You attempt to map an INVALID_HANDLE_VALUE, and voila. 20:35:23 indeed, can't find it in POSIX.1-2008 even 20:35:44 pikhq, that seems like a messy way to do it 20:36:13 It's Win32. 20:37:54 true 20:37:55 but still 20:42:57 * AnMaster wonders if it is possible to make a balanced tree that can be updated concurrently without locking things 20:43:07 and, without causing a huge overhead 20:44:00 read and update should be lockless, and it should be fast in case of no collision between multiple threads 20:44:37 balacing I guess might pose some problems... But preferably not 20:45:07 Make it immutable and all your problems go away. 20:48:43 pikhq, well that would be annoying since the use case would be ATHR when porting to a non-erlang befunge implementation 20:48:55 pikhq, such as might happen at some point in the future 20:49:07 pikhq, the tree needs to be modified a lot if it represents funge space 20:49:24 alternative is a hash table, but that sounds even worse to update without locks 20:49:45 plus hash tables has a worse worst-case 20:50:07 -!- Oranjer has joined. 20:50:58 pikhq, perhaps a RCU implementation? 20:51:18 hm not a good idea 20:51:27 read is cheap, write is not 20:56:21 -!- kar8nga has quit (Remote host closed the connection). 21:06:08 -!- dougx has joined. 21:13:02 -!- dougx has left (?). 21:13:21 -!- coppro has quit (Ping timeout: 260 seconds). 21:20:09 now the question is, are all prime numbers balloon? 21:20:13 *balloons 21:20:22 oklokok, define balloon 21:20:48 a number n is a balloon iff in every set of 2n-1 numbers there are n that sum to 0 (mod n) 21:21:08 it's simple to show balloons are closed under multiplication, but what's less simple is to show primes are 21:21:19 hm interesting 21:21:43 oklokok, and this has not yet been solved? 21:21:45 1, 2, 3 and 5 are easily shown to be balloons 21:21:51 no, not by me 21:21:55 by anyone? 21:21:59 in fact i didn't even show they are closed under multiplication 21:22:08 -!- Oranjer has left (?). 21:22:15 that was MissPiggy's work, or at least she used that idea in her proof of a special case 21:22:43 oklokok, is there any prize attached to this question? 21:22:45 she asked me whether 100 is a balloon, i couldn't solve it (should've) 21:22:50 and did anyone else solve it? 21:23:04 i wonder where you got the impression this is even a hard problem 21:23:26 oklokok, well, otherwise you would just have consulted a text book to figure out how to prove it 21:23:29 rather than asking us 21:23:48 i just wanted to ask that out loud because it sounded crazy. 21:24:37 oklokok, oh? 21:24:38 easy enough to show they're closed under multiplication, but i wonder if it's possible to show they are closed under addition (that is, "can we prove all n are balloons by induction") 21:24:51 oklokok, why are they called balloons btw? 21:25:49 usually when you say you're proving a property of naturals by induction, you mean P(n) => P(s(n)), but you can also do induction on multiplication, the problem is you have an infinite number of base cases.... 21:26:13 AnMaster: i asked mp what the problem was about, and she said "it has applications in hot air ballooning" 21:26:14 :P 21:26:20 i have no idea what that meant 21:26:24 oklokok, it does? 21:26:27 so i named them balloons. 21:26:43 it would've been an in-joke for her, i wasn't actually going to start talking about this here. 21:26:59 "it does?"= 21:27:01 *? 21:27:09 oh err 21:27:11 right the problem 21:27:16 sorry about being slow 21:27:17 oklokok, I fail to see how it is useful for building or flying heated air balloons 21:27:17 ... 21:27:45 i have no idea what applications it has, if it has applications there, i just quoted, and followed with "i have no idea what that meant". 21:28:01 who cares what it's used for 21:28:02 oklokok, and I'm somewhat of an aerodynamics geek. Though admittedly I'm more interested in non-LTA aircrafts 21:28:08 oh 21:28:08 cool 21:28:13 do you fly planes? 21:28:16 (LTA = lighter than air) 21:28:22 oklokok, only in simulator alas 21:28:34 flying a plane would be awesome 21:28:35 oklokok, a flight certificate is frigging expensive 21:28:41 yeah prolly 21:28:45 how expensive? 21:28:46 much more than a driving license 21:29:01 oklokok, well, depends on what type of aircraft 21:29:19 oklokok, for a small sports plane, 90 000 SEK or so a year ago when I checked 21:29:54 oh well i wouldn't call that "frigging" expensive if you have a job 21:29:59 oklokok, excluding fuel cost and so on 21:30:19 90 000 Swedish kronor = 9 293.20938 Euros 21:30:24 says google 21:30:26 oh well if you wanna fly a plane multiple times 21:30:32 oklokok, hm? 21:30:34 ;) 21:30:38 yeah i know how much a sek is 21:31:00 oklokok, oh you need to fly a minimum distance every year to not loose your certificate after you finally have it 21:31:11 forgot what said distance was 21:31:18 makes sense 21:31:39 oklokok, they should do the same for driving licences 21:32:17 oh btw 2n-1 isn't just a random number, in fact all numbers have the property that there are 2n-2 numbers that don't have a subset summing to 0 mod n 21:32:25 which makes it sort of fascinating 21:33:08 oklokok, thank you for reminding me why I took CS instead of math ;) 21:33:14 -!- Oranjer has joined. 21:33:26 yeah, my friend has lost most of his sight after getting a driver's licence, and doesn't use glasses 21:33:41 oklokok, "oops" 21:33:47 but is still allowed to drive 21:34:11 oklokok, also bi-yearly eye check or such for driving licenses would be a good idea 21:34:16 or maybe every 5 years or such 21:34:39 would have to find a reasonable interval to make it feasible yet actually be useful 21:36:08 -!- coppro has joined. 21:37:06 They have this student-association-thing for people interested in flying planes here; I think they have some sort of special dealie so that you can get the certification a bit cheaper, though not by much. 21:37:31 so... why did you take cs instead of math? 21:38:43 i mean math is prettier 21:38:45 Apparently "4700 - 6600 €" for the thing with a motor on it; and I think that includes fuel costs. (At least it says that fluctuation in fuel prices will affect that price.) 21:39:30 * FireFly[DS] wants unicode support in his client 21:39:47 fizzie, what was that after "6600"? 21:40:03 FireFly[DS]: Probably the euro sign. 21:40:07 Ah 21:40:25 Showed up as å comma not-sign her.. 21:40:33 here* 21:40:37 There's also a glider aircraft course for "1500 - 2200" eur, plus "miscellaneous costs (beer, sausages etc.)". 21:41:08 Too bad the joke in the description doesn't really translate. 21:41:39 why can't the university of turku be in helsinki :< 21:41:56 you have such a cool university there 21:41:56 so... why did you take cs instead of math? <-- math people say thing like " oh btw 2n-1 isn't just a random number, in fact all numbers have the property that there are 2n-2 numbers that don't have a subset summing to 0 mod n which makes it sort of fascinating" 21:42:06 an interest which I don't share 21:42:21 i would be near it 21:42:51 Too bad the joke in the description doesn't really translate. <-- what is that joke? 21:43:00 Well, it doesn't translate. :p 21:43:08 I can try, of course. 21:43:13 fizzie, you could explain it 21:43:48 It's not much of a joke, really. But, here goes. 21:43:55 "Opintojakson tavoitteena on oppia lentämään laitteella, jossa ei ole purjetta, eikä myöskään konetta. Laitetta kutsutaan siitä huolimatta purjelentokoneeksi, sillä sen siipi toimii kuin purje." 21:43:57 Translated, that says: "The goal of the course is to learn fly a device, that does not have a sail, and neither does it have an engine. The device is still called sail-air-engine [literal translation of the components of the Finnish word for sailplane/glider aircraft], as its wing works like a sail." 21:44:24 heh 21:44:56 fizzie, combining sail and engine in one word is quite weird :) 21:45:23 I guess sail-flight-engine would've been more literal. 21:45:41 -!- FireFly[DS] has quit (Read error: Connection reset by peer). 21:46:01 The fi:lentokone (literally "flight-engine" or "flight-machine", but the joke works better with "-engine") is the general term for aircraft, they've just added fi:purje ("sail") in front. 21:46:43 fi:kone is quite a generic word; it can be en:engine, or en:machine, or en:device, or whatever. 21:47:14 "kone s 1 engine, apparatus, appliance 2 contrivance 3 machine" says the dictionary. 21:47:26 finnish is so weird 21:47:33 -!- cal153 has quit (Ping timeout: 240 seconds). 21:47:42 -!- cal153 has joined. 21:47:50 lament, indeed 21:48:00 AnMaster: well interesting is a bit of a technical term :P i say 2n-1 is interesting because 2n-2 isn't, there's a reason to choose just that particular number 21:48:10 it doesn't actually mean this is interesting mathematics 21:48:27 uhu 21:48:34 oklokok, you said it was fascinating even 21:50:17 oh right. true, that's not a technical term, that just means i really think the problem is interesting 21:50:22 most because i've been working on it 21:50:25 *mostly 21:50:58 oklokok, wait, is "interesting" actually a well defined rigorous mathematical term? 21:51:05 :P 21:51:14 no. 21:51:19 oh 21:51:44 oklokok, I always found it funny that "almost all" is actually rigorously defined 21:52:11 ah yeah kinda like "group" is rigorously defined 21:52:21 oklokok, oh? 21:52:31 oh you don't know what a group is 21:52:31 oklokok, I can't see why "group" is funny 21:52:39 Almost all integers between 1 and 1,000,000,000 are prime. 21:52:57 uorygl, I have no idea if that is true or not 21:53:11 uorygl: why would you use the lebesque measure on integers? 21:53:18 Well, "almost all", applied to discrete things, means "all but finitely many", aye? 21:53:21 you wouldn't 21:53:53 uorygl, that is true for composites too! 21:53:58 you would use cardinality as the measure, and it would not be true that almost all elements in that set are prime. 21:54:11 What would you say "almost all" means in that context? 21:55:16 almost all x \in S have property P w.r.t. measure m always means m({x \in S | P(x)}) = 0 21:55:19 eh 21:55:33 *almost all x \in S have property P w.r.t. measure m always means m({x \in S | not P(x)}) = 0 21:56:07 Wikipedia says that "almost all" sometimes means "all but finitely many". 21:56:10 if you leave the measure implicit with integers, it's cardinality, because the restriction of the lebesque measure is identically zero 21:57:13 okay so we'd be using a metric m s.t. m(S) = 0 iff S is finite 21:57:24 *measure 21:57:25 sorry 21:58:08 i don't know such measures 21:58:20 (this is not exactly area) 21:58:32 Are there any restrictions on what's a measure? 21:58:58 If not, m(S) = 0 when S is finite, m(S) = 1 when S is infinite 21:59:09 Maybe the disjoint union of finitely many sets must be the sum. 21:59:17 it has to be additive, if you have two sets with empty intersection, then their union's measure is the sum of their measures 21:59:17 Modulo saying that right. 21:59:32 But it doesn't have to give a measure to every set, right? 21:59:46 m(S) = 0 when S is finite, m(S) is undefined otherwise. :P 21:59:53 no, in a measure space we have a subset of measurable sets, usually 22:00:27 yeah that works, that's probably called the trivial measure 22:00:27 Better: m(S) is the limit as n approaches infinity of (the cardinality of the intersection of S with [-n..n])/(2n) 22:00:39 yeah i actually thought that might be a nice definition 22:00:42 make that lim sup 22:00:52 i think that's additivie 22:00:55 *additive 22:01:05 Hmm, I'm sure I could make it non-additive. 22:01:09 oh well i guess you could just say sets are measurable iff the limit exists 22:01:18 well it has to be additive 22:01:21 to be a measure 22:01:30 I mean if it's lim sup, I'm sure I could find where it's not additive. 22:01:51 also the measure of the empty set needs to be 0, but that's all we require about a measure, i think 22:01:53 ah 22:01:56 Take the set S of all integers n where sin(ln n) > 0, and its complement. 22:02:28 err 22:02:35 first of all what's that set? 22:02:47 okay somethign random 22:02:49 *something 22:02:54 Er, make that sin(ln |n|). 22:03:03 yeah okay you're right 22:03:06 needs to be lim 22:03:23 You've figured out what that set is? 22:03:24 or wait... blergh 22:03:32 maybe tell me why that's a counterexample 22:03:42 Well, do you know what that set looks like? 22:03:49 no 22:03:59 Graph sin(ln n); it's the set of all integers that are below it. 22:04:19 sin(ln |n|), even. 22:05:22 A mental graph will probably work better than an actual one. :P 22:05:40 It's a set where if you zoom out, it still looks pretty much the same. 22:05:53 i think that's additivie <-- read that as "addictive" first time XD 22:06:21 * Sgeo uses Wolfram Alpha 22:06:24 So the thing you're taking the limit of fluctuates between some number and some other number. 22:06:48 What isi it supposed to be? 22:07:16 ah true 22:07:36 The complement of the set will likewise fluctuate, but out of phase; add the two, and you get something that is less than the sum of its parts. 22:07:42 yeah i realized lim sup might not work because of that, i now realize why sin ln works 22:07:50 yep 22:08:02 Sgeo: it's supposed to be what it is, and it is pretty much what it looks like. 22:08:24 It looks like female..>.> 22:08:33 And it looks like this: http://en.wikipedia.org/wiki/File:Topologist%27s_sine_curve.svg 22:15:59 Graph sin(ln n); <-- was that supposed to be CAS code for some CAS? 22:16:19 No. 22:16:23 hm 22:16:34 Though I wouldn't be surprised if it were valid CAS code for some CAS. 22:17:06 uorygl, why is sin(ln x) interesting? 22:17:11 it's valid wolframalpha code 22:17:23 oklokok, it isn't valid mathematica code I know 22:17:38 * AnMaster plots the function on his calculator 22:17:47 because it's a nice way to explain why lim sup is not a good measure 22:17:55 *-good 22:18:03 AnMaster: because it's involved in a counterexample to oklokok's claim that using the limit superior in a certain place results in a measure. 22:18:06 who said anything about mathematica 22:18:13 uorygl, oh 22:18:28 uorygl, how does "limit superior" differ from "limit"? 22:18:31 it would make all sets measurable 22:18:38 oklokok, well iirc w|a is based on that syntax? 22:18:46 but it clearly isn't a measure 22:19:10 What's a measure? 22:19:11 AnMaster: the limit superior of sin(x) as x approaches infinity is 1. 22:19:36 uorygl, oh. 22:19:46 AnMaster: essentially, it's the highest value that a function exceeds repeatedly forever. 22:19:47 uorygl, how is limit superior defined then? 22:20:12 * Sgeo needs a tutorial for math :/ 22:20:26 uorygl, what about limsup y=x x→+inf ? 22:20:34 the lim sup of a sequence of numbers is the lim of sups of {xi | i = n,n+1,...} as n goes to infinity 22:20:39 same as normal limit? 22:20:50 AnMaster: I would say that that is positive infinity. 22:21:01 uorygl, same as normal limit then 22:21:06 Yep. 22:21:06 -!- Oranjer has left (?). 22:21:29 for sin you'd take the limit as x goes to infinity of the sups of the sets {sin(y) | y >= x} 22:21:30 This is bound to have some definitions: http://en.wikipedia.org/wiki/Limit_superior 22:22:03 uorygl, and this sin log thing? 22:22:14 what is it's limit superior? 22:22:27 it's obviously 1 22:22:34 the normal limit I *suspect* would approach 0 22:22:40 i mean on reals 22:22:53 it's not obvious that it's 1 on integers 22:23:36 AnMaster: there's no normal limit for it 22:23:36 The normal limit exists iff the limit superior equals the limit inferior. 22:23:39 oklokok, are there cases where limsup is not defined? 22:23:56 oklokok, hm. for sin(x) there indeed isn't 22:24:09 The limit superior as something approaches infinity is always defined, as long as the function is defined everywhere. 22:24:10 but hm 22:24:27 okay i was gonna say earlier that lim sup and lim inf always exist on reals and lim exists iff lim sup = lim inf, but thought AnMaster wouldn't be interested 22:24:44 oklokok, ah 22:24:46 interesting! 22:24:57 Heck, if the function isn't defined everywhere, you might say that the limit superior is negative infinity. I don't really know. 22:25:20 ah 22:25:21 oh well right they always exist in the extended reals 22:25:35 oklokok, you mean the function must all be completely defined then? 22:25:42 -!- coppro has quit (Quit: I'd love to discuss this, but matters press. Onwards!). 22:25:44 all functions are completely defined 22:25:45 or at least, it might not work if it isn't 22:25:58 oklokok, what is limsup tan(x) x->+inf? 22:26:33 tan is a partial function 22:26:43 oklokok, you mean it isn 22:26:50 isn't* well defined everywhere 22:26:56 ? 22:27:07 but if we skip the parts where it's not defined, then still arbitrarily far away you can find arbitrarily big values 22:27:11 so lim sup = infinity 22:27:35 The Warrigal function isn't completely defined! 22:27:50 AnMaster: that's not what well-defined means, tan just isn't defined there. 22:28:06 oklokok, you just said " all functions are completely defined" 22:28:37 which isn't actually correct it seems, at least not with the definition of function that I heard 22:28:41 well-defined is when we have a definition, but it's wrong, tan's domain is just not the whole R 22:28:43 like ln(x) is not defined for x<0 22:28:56 just like it isn't defined if x is an apple 22:28:57 oklokok, well I was confused by that line " all functions are completely defined" 22:29:00 !! 22:29:20 every function is completely defined *on its domain* 22:29:27 otherwise it's a partial function. 22:30:05 sometimes we call these functions too, and just say "oh it's actually not defined here", i just don't happen to like that 22:30:29 oklokok, to me "function" includes both partial ones and normal ones 22:30:31 if that is wrong 22:30:36 then what is a word for both 22:30:46 it has to be pretty concise 22:30:56 "uorygl: Heck, if the function is ..." <<< obviously you'd define the lim sup of a partial function as the lim sup of the function's restriction on the part of its domain where it's defined. 22:30:56 "functions and partial functions" is not an acceptable answer 22:31:25 Call it an MPF, for maybe-partial function. :P 22:31:34 uorygl, that's silly 22:31:38 but sure 22:31:41 we don't need a word for functions and partial functions, because one is the subset of the other 22:31:42 ... 22:31:44 as silly as oklokok is 22:31:55 oklokok, if one is the subset of the other 22:32:03 oklokok, then " all functions are completely defined" 22:32:04 is false 22:32:10 if you have a function that might be partial, say it's a partial function 22:32:27 oklokok, or do you mean the reverse? 22:32:29 So the sine function is a partial function? 22:32:31 -!- scarf has quit. 22:32:34 that functions are a subset of partial functions? 22:32:42 uorygl, yes. and y=x is too! 22:32:43 no it's not, because it's functions that's a subset of partial functions, it's the subset containing functions that are completely defined on their domain 22:33:02 -!- ais523 has joined. 22:33:09 uorygl, now you see why I took CS instead of math! 22:33:19 uorygl: of course it's a partial function, it's just not a proper partial function ;) 22:33:21 uorygl, we don't do silly things like that 22:33:22 Eh, all this is terminology. 22:33:27 oklokok: ah, of course. 22:33:31 nick changed back by popular demand! 22:33:40 ais523, yay! 22:33:54 ais523, except someone is bound to ask "where is scarf" soon 22:33:55 if I have three different communities of people all yelling at me, what else can I do? 22:33:58 AnMaster: haha 22:34:12 * uorygl decides to be silly by saying that 0 is a positive number and a negative number, but not a proper positive number or a proper negative number. 22:34:24 :D 22:34:29 i like that 22:34:48 uorygl, ooh better idea: a point is a triangle, but not a proper one 22:34:55 (all three corners in the same point) 22:35:07 All real numbers are irrational numbers, but some of them are not proper irrational numbers. 22:35:24 hmm 22:35:27 Hmm. The opposite of "proper" is "degenerate", I believe. 22:35:34 So a point is in fact a degenerate triangle, as is a line segment. 22:35:53 uorygl, now if we just could say that "all integers are negative, but some are not proper negative" :/ 22:36:11 Alas, my intuition says that integers are a closed set. 22:36:24 in the topological sense? 22:36:25 (In fact, they are a closed set. Yay for intuition!) 22:36:32 No, in the intuitive sense. 22:36:48 i don't have an intuition, closed under what operation? 22:37:00 In the intuitive version of the topological sense. 22:37:06 :P 22:37:07 okay 22:37:28 Let's say that for all concepts "blah", "degenerate blah" is the boundary of "blah" and "proper blah" is the interior of "blah". 22:37:39 So every blah is either a degenerate blah or a proper blah. 22:37:45 All integers are degenerate integers. 22:38:48 All tall people are proper tall people, except for the shortest possible person X such that only tall people are taller than X, who is a degenerate tall person. 22:40:17 The surface of a drop of liquid consists of degenerate liquid. 22:40:57 what does closed mean in the topological sense? 22:41:07 AnMaster: the complement is open 22:41:17 oklokok, I don't know that either 22:41:27 assume I know next to nothing about topology 22:41:31 in topology, we just call some subsets open. 22:41:37 All ice is freezing cold, and most ice is proper freezing cold, but ice at its melting point is degenerate freezing cold. Some liquid water is degenerate freezing cold, but none of it is proper freezing cold. 22:41:46 (except that a coffee cup and a doughnut are equivalent) 22:41:52 we have a space containing points, and we say some arbitrary subsets are open 22:42:04 Intuitively speaking, a set is open if it contains none of its boundary. 22:42:05 oklokok, what makes a given subset open? 22:42:11 And a set is closed if it contains all of its boundary. 22:42:12 oh 22:42:18 like (0,4)? 22:42:28 (as opposed to [0,4]) 22:42:34 if so, why didn't you just say it 22:42:37 Right. (0,4) is open and [0,4] is closed. 22:42:47 uorygl, is that all there is to it? 22:42:52 No, not really. 22:42:52 AnMaster: nothing, we can define anything to be open 22:42:59 oklokok, -_- 22:43:10 oklokok, I define closed to be open! 22:43:39 There are, in fact, topological spaces where something is closed if and only if it is open. 22:43:42 * AnMaster leaves cleaning up the mess that caused to oklokok 22:44:05 uorygl, paradox? 22:44:07 In the topological space of integers, every set is both closed and open. 22:44:28 It happens that "closed" and "open" aren't opposites at all in the topological sense. 22:44:56 mhm 22:45:13 uorygl, on the reals I find this hard.. 22:45:36 the natural topology of reals does have nice properties 22:45:47 oklokok, oh? 22:45:48 Another "definition" of openness: a set is open if for every point within the set, that point has a neighborhood that is also within the set. 22:45:51 the same properties the natural topology of every metric space has 22:46:03 uorygl, define neighborhood 22:46:14 uorygl, (that term makes me think of GOL) 22:46:27 Intuitively, a neighborhood is a set containing a point and its immediate surroundings. 22:46:41 in the natural topology of a metric space, a set is closed iff it contains its own boundary 22:47:08 Formally, a neighborhood is a superset of an open set containing a point. 22:47:10 in a general topological space, boundary becomes meaningless 22:47:32 Can't you generally define the boundary as the difference between the interior and the closure? 22:48:11 the boundary is the thing that's not in the interior of the set or the interior of its complement 22:48:12 so yeah 22:48:21 that's how we define it 22:48:34 AnMaster: now, you may notice that every time we try to define openness, we then define the terms we used in terms of openness. Fundamentally, openness is whatever the topological space defines it to be; different topological spaces are different ways of defining openness on a set. 22:48:42 uorygl, I noticed that 22:49:25 uorygl, at least it isn't like the circle being a specific conical section, but when you think about it, a cone is defined in terms of a circle 22:49:25 all the intuition uorygl gave you about topologies is actually just properties the natural topology of a metric space has 22:49:43 (unless there are other ways to define cones that I don't know about) 22:49:51 because in general those need not be true 22:50:05 Really? 22:50:11 I thought they were always true. 22:50:19 well obviously you can just permute the reals and take the topology of the permuted version 22:50:57 oh 22:51:01 Well, if you use one topology for one part of the intuition and another topology for other parts of it, sure. 22:51:19 well umm, "immediate surroundings", that doesn't really mean much 22:51:27 True. 22:51:51 In the real numbers, a point does not have even one surrounding that is immediate. :P 22:51:58 AoC => a set is open iff all its points have an open set around them 22:52:06 what about complex numbers 22:52:09 Seriously? 22:52:12 how is open and closed defined on those? 22:52:25 AnMaster: same way as in R^2, as the product topology of R and R 22:52:41 oklokok, I don't know how open is defined in R² 22:52:54 A set of complex numbers is open if and only if all its vertical and horizontal cross sections are open. 22:52:56 R is a metric space, so we define the natural topology by taking the open balls as a base for the topology 22:53:03 wow ^2 produced ²!!! (^ is a dead key here) 22:53:19 whatever program ensured that happened: I love it 22:53:23 well okay i guess you could also say R^2 is a metric space so we can do the ball thing there too 22:53:28 ais523, ^ 22:53:42 only works for numbers 22:54:20 oh and +- ⁺⁻ 22:57:38 -!- Oranjer has joined. 23:19:49 Quadrescence: WANNA LEARN ABOUT RANGE CONCATENATION GRAMMARS? 8D 23:20:11 I do! 23:20:19 oh ok 23:20:21 so! 23:20:24 yes! 23:20:29 -!- MigoMipo has quit (Remote host closed the connection). 23:20:50 a range concatenationgrammar is basically a context free grammar, but instead of non-terminal symbols you have pattern-matched "function applications" 23:21:09 so it might be best to give you an example 23:21:30 lets consider the language { a^n b^n : n >= 0 } 23:21:38 we could have the start symbol S 23:21:41 and the following rules: 23:21:47 S(e) -> e 23:22:01 which just says if you apply S to the empty string, you get back the empty string 23:22:09 and the rule 23:22:16 S(aXb) -> S(X) 23:22:35 which says if you apply S to something that looks like aXb, where X is a variable, then you get back S applied to X 23:22:54 e.g. S(amb) => S(m) => fail 23:23:06 why the fail? 23:23:14 because theres no rule for S applied to m 23:23:19 just S(e) and S(aXb) 23:23:22 ahh 23:23:32 or more accurately 23:23:44 success is defined as reducing S(...) to the empty string 23:23:55 oh no 23:23:58 so since theres no rule that reduces S(m) to the empty string, its a faulure. 23:24:07 augur, want to learn about music? 23:24:14 anmaster: yes! 23:24:15 I want to learn about music! 23:24:16 meh 23:24:18 too busy 23:24:22 >:( 23:24:35 so for the sentence aaabbb, you have the steps S(aaabbb) => S(aabb) => S(ab) => S(e) => e 23:24:39 so aaabbb must be an S 23:24:40 just wanted to derail the linguistics 23:24:51 AnMaster: this isnt linguistics this is formal language theory 23:25:01 hey AnMaster, what is tempo 23:25:17 you can also generate the language { a^n b^n c^n : n >= 0 } which is not CF 23:25:22 using the following grammar: 23:25:27 S(e) -> e 23:25:31 Oranjer, number of played notes per time unit. Commonly 1/4 notes per minute 23:25:38 and what is a note 23:25:40 S(aXbYcZ) -> S(XYZ) 23:25:54 Is there any reason that I should be learning Scheme over Common Lisp? 23:25:59 Oranjer, uh. How to explain it? 23:26:06 Sgeo: scheme is more elegant 23:26:10 and it has awesomemacros 23:26:10 Oranjer, I assume you are just being silly 23:26:14 Oranjer, but 23:26:35 And no real "standard library" for practical use. Although I don't know if CL has that or not 23:26:36 silly in that I do not know the definition, but I know how it's used? 23:26:40 Oranjer, know what happens when you press one (1) key on a piano? Well one note is played 23:26:45 as far as i can tell, RCGs are practically, not not exactly, Prolog. lol 23:26:50 Oranjer, I don't know definition either 23:27:02 Sgeo: depends on what you mean by standard library. Scheme has a shittonne of standard stuff. 23:27:02 Oranjer, I do know how to read scores however 23:27:20 hm 23:27:29 wait that sounds wrong. what are they called in English now again 23:27:56 written music <=> scores, I believe 23:28:08 yes 23:28:30 Oranjer, just got confused over language there 23:28:34 also, "<=>" <=> "is analogous to" 23:28:50 but 23:28:51 but 23:28:55 but 23:28:57 Oranjer, no <=> means "is equivalent" 23:28:57 i have to understand <=> before i can understand <=> 23:28:58 D: 23:29:04 I know, augur 23:29:07 that's the thing 23:29:07 D: 23:29:26 i had a funky dream 23:29:35 did it break at the seams? 23:29:42 Oh please, tell us of your funky dream :P 23:29:50 noooo! 23:30:20 augur: "<=>" is analogous to "is analogous to" 23:30:23 hahahaha 23:30:38 that i was playing a video game where i was a guy working on a submarine and in order to get around parts of the sub you had to put on these big suits that would act to keep water out and to provide life support and propulsion 23:31:06 Oranjer, it doesn't actually mean that normally 23:31:13 Oranjer, normally it means "is equivalent with" 23:31:23 or iff 23:31:30 but then iff <=> "<=>" 23:31:33 Oranjer: yes but, is '"is analogous to" is analogous to' analogous to '"<=>" is analogous to' 23:31:41 (except grammatically) 23:31:45 no no <-> is iff 23:31:50 <=> is mutually derives! 23:31:54 augur, what? 23:32:04 iff is a single arrow 23:32:09 <-> 23:32:13 but <=> is a double arrow 23:32:27 augur, <=> "is equivalent with" 23:32:27 double arrows are used for other things, for instance, the derives relation in formal language theory 23:32:38 augur: Sounds like a pretty bad submarine if it's full of water :P 23:32:42 augur, in math I mean 23:32:43 ... 23:32:47 in maths 23:32:47 Gregor: all submarines have water in them 23:32:50 ballast tanks, and such 23:33:07 OK, it sounds like a bad submarine if you had to go through ballasts to get to vital chambers X_X 23:33:09 but this one was presumably on its way towards being fucked 23:33:18 so, AnMaster, in these maths of yours, what is the difference between "=" and "<=>"? 23:33:22 augur, x+2 = 4 <=> x=2 23:33:31 ahhh 23:33:32 i also had a dream of some sort involving aliens 23:33:33 augur, you don't write <-> there 23:33:39 Does <=> mean "less than, equal to or greater than"? :P 23:33:43 Gregor, haha 23:33:49 spaceship! 23:33:51 oh, you Gregor! 23:33:58 Actually, D does have such an operator. 23:34:01 It means "comparable" 23:34:06 Oranjer, anyway, = is "is equal" 23:34:19 Oranjer, and equal is not the same as equivalent 23:34:24 oh man, i need some caffeine 23:34:31 im gonna go buy caffeine 23:34:38 Raw, and snort it. 23:34:42 so why can't I say x + 2 = 4 = x = 2, or x + 2 <=> 4 <=> x <=> 2? 23:34:45 Gregor, :D 23:34:46 oh, I get it now 23:34:48 yay 23:34:49 Gregor: if only! 23:35:23 but what if I said ( x+2=4 ) = ( x=2 ) 23:35:24 Oranjer, because 4 = x = 2 and = has the property that you can reoder around it. Which means you get x = 4 = 2 23:35:32 which means 4=2 23:35:35 which is absurd 23:35:45 ( x+2=4 ) = ( x=2 ) ! 23:35:54 It's true in the right modular arithmetic :P 23:35:57 Oranjer, that has no meaning 23:36:04 Gregor, sure but then you need to write that out! 23:36:33 and my client doesn't support the three-bar equal sign thing anyway 23:36:55 just copy and paste it from wikipedia's excellent list of math operators 23:36:58 what about ( x+2<=>4 )<=>( x = 2 ) ? 23:37:10 Oranjer, again I don't know what that means 23:37:28 -!- oklokok has quit (Ping timeout: 276 seconds). 23:37:39 *oops, the last "=" was supposed to be "<=>" 23:38:00 Oranjer, don't know what it means that way either 23:38:02 well, is x + 2 equivalent to 4? 23:38:11 oh, I get it now 23:38:12 hmmmm 23:38:36 -!- oklokok has joined. 23:38:51 very well, I guess there'd have to be a different symbol for "is equivalent to" and "is equal to" 23:39:07 augur, wikipedia claims both <-> and <=> are used for iff 23:39:10 http://en.wikipedia.org/wiki/If_and_only_if 23:40:14 2 ≡ 4 (mod 2) yay 23:40:16 AnMaster: shut your fast 23:40:19 face 23:40:22 :| 23:40:23 bye 23:40:34 Shut your fast face! 23:40:36 augur, well, I have never seen <-> used for iff before 23:41:14 indeed, does it make sense to have a symmetrical symbol for a directed relation? 23:41:29 er? 23:41:38 Oranjer, how is iff directed? 23:41:52 it has a condition, and the result, right? 23:42:38 Oranjer, but if the condition is true then the result is. And if the condition is false, so is the result 23:42:47 thus you could just as well turn it around 23:43:03 in fact <-> makes kind of sense. Since → is implies 23:43:22 and iff <=> → in both directions 23:45:08 so in that latter statement, you're using "<=>" as "is equivalent to"? 23:45:16 Oranjer, yes 23:45:21 okay 23:45:40 it's just a wee bit confusing for me, as I always use it as "is analogous to" 23:45:50 Oranjer, but iff => <=> iirc 23:46:04 and "=>" <=> ? 23:46:21 Oranjer, ? 23:46:33 what does "=>" mean? 23:46:44 forgot the name for it, let me look it up. 23:47:42 Oranjer, taking an example might be best 23:47:49 sure 23:48:00 x = 2 => x^2 = 4 23:48:04 the reverse is not true 23:48:07 -!- tombom has quit (Quit: Leaving). 23:48:10 that is 23:48:26 x^2 = 4 => x = 2 is false 23:48:32 since x could be equal to -2 23:48:43 explicitly one-directional equivalence 23:49:14 Oranjer, yes, in the case above I used it because I got confused over if you could always replace <=> with iff (but the reverse should work) 23:49:35 Oranjer, don't the math teachers at your university use these kind of symbols all the time? 23:49:45 they use iff, not <=> 23:50:17 when I started using "<=>" to mean "is analogous to", I just assumed it was a free (or at least obscurely-used) symbol 23:50:24 Oranjer, mine use omm or <=> (omm "om och endast om", no I'm not sure how that phrase ends up with that abbrev either!) 23:50:31 (and that is Swedish btw) 23:50:53 endast ==(English)==> only? 23:51:01 `translate endast 23:51:07 Oranjer, yes 23:51:11 okay 23:51:11 only 23:51:26 Oranjer, or my irc notation of that would be: sv:endast = en:only 23:51:33 ah, okay 23:51:38 Oranjer, which I don 23:51:45 don't* think is used for anything else 23:51:47 ;P 23:52:00 I guess I should have made aware the originating language 23:52:16 endast ==(Swedish --> English)==> only 23:52:56 Oranjer, oh and <=> as "is equivalent" seems to generally be used between equations 23:53:13 especially when writing them on one line 23:53:44 see? my college has enough paper to not have to do that, ha 23:54:05 Oranjer, big enough whiteboards? 23:54:16 Oranjer, also is college <=> university? 23:54:37 and ~ seems to be used for row equivalence by at least one teacher 23:54:37 basically, yeah 23:54:48 "row equivalence"? 23:55:01 Oranjer, he teaches linear algebra 23:55:03 guess 23:55:10 hmmm 23:55:14 -!- kar8nga has joined. 23:55:14 nope, nothing's coming to me 23:55:43 Oranjer, http://en.wikipedia.org/wiki/Table_of_mathematical_symbols lists it as "row equivalence" amongst other things 23:56:04 that link redirects to an article that doesn't mention that word explicitly 23:56:22 Oranjer, but on that meaning I'm somewhat confused. Generally it is used when row reducing a matrix 23:56:36 but wikipedia says 23:56:38 "A~B means that B can be generated by using a series of elementary row operations on A" 2010-03-07: 00:10:51 -!- ais523 has quit (Remote host closed the connection). 00:12:46 -!- BeholdMyGlory has quit (Remote host closed the connection). 00:25:48 -!- coppro has joined. 00:37:35 o hai 00:38:07 oerjan, yet iff symbolically is merely <-> 00:38:15 a single-lined double arrow 00:39:49 also 00:39:51 CAFFEINE! :D 00:44:48 who was it that suggested lo carb monster 00:48:26 oh, noone here 00:50:33 -!- kar8nga has quit (Remote host closed the connection). 01:05:24 -!- lament has quit (Ping timeout: 276 seconds). 01:06:52 augur: (ノ゚ο゚)ノミ★゜・。。・゜゜・。。・゜☆゜・。。・゜゜・。。・゜ 01:07:07 -!- lament has joined. 01:07:11 hahahahaha 01:10:33 wtf is that 01:10:54 beats me, I can't see it 01:11:02 Quadrescence: なぜ絵文字を使いますか。 01:11:21 shiiiiiiit 01:11:42 何? 01:12:02 I have no idea what you're saying. 01:12:39 Japanese-script-using failure. 01:13:07 Fortunately I don't know Japanese. 01:17:23 Then why are you using 01:17:29 JIS art? 01:17:30 :P 01:17:43 -!- MizardX has quit (Ping timeout: 268 seconds). 01:25:20 pikhq: because i speak japanese 01:25:32 Quadrescence: 本当に? 01:25:38 yes 01:26:47 でも、「絵文字」を知らない。 01:27:46 Hrm. ... Emoji is wrong word. JIS art. 01:31:05 -!- oerjan has joined. 01:50:26 Hm, alise isn't here? 02:05:02 So, keywords do exist in Common Lisp 02:07:22 -!- benuphoenix has joined. 02:07:51 Not ATM. 02:10:30 -!- zzo38 has joined. 02:13:08 -!- benuphoenix has quit (Quit: leaving). 02:22:53 Do you know how to make hypervisor mode in ARM-based computer? 02:51:34 -!- zzo38 has quit (Remote host closed the connection). 03:07:36 -!- lament has quit (Ping timeout: 276 seconds). 03:11:06 -!- lament has joined. 03:21:23 -!- adu has joined. 03:35:12 -!- oerjan has quit (Quit: leaving). 04:57:22 -!- Khazar has joined. 05:15:46 goodnight! 05:15:48 -!- Oranjer has left (?). 05:17:45 It is time to put those Haitian jigaboos in their place! No matter how many times the civilized world donates money, opens schools, rebuilds their nation, and holds their little monkey paws, the damn niggers can never get it right. They never will! The same goes for New Orleans! Cancun in Mexico suffered few fatalities after their major hurricane, and the rebuilding is already completed. Wha 05:17:45 t have the niggers in New Orleans done? If you are sick of this, join Chimpout Forum! http://www.chimpout.com/forum We welcome all races except for NIGGGGGGGERS! We are not white supremacists, just negro inferiorists! http://www.chimpout.com/forum 05:19:41 lament: Art thou awake? 05:20:27 Khazar: 馬鹿ね。 05:27:24 -!- Azstal has quit (Ping timeout: 256 seconds). 05:53:19 -!- adu has quit (Quit: adu). 05:59:56 ... wow. 06:00:01 Good ol' fashioned spam I guess. 06:00:12 Not all that "good ol' fashioned". 06:00:21 If it were that, Khazar would be giving the GNAA spiel. 06:00:30 Rarely has "good ol' fashioned" meant "good" :P 06:01:44 Heheh. 06:02:17 Curious, I would expect a spambot to join various channels, but Khazar is only on #esoteric. 06:02:35 Curious. 06:02:55 Probably more of a *troll* than a spambot, then. 06:05:01 -!- lament has quit (Ping timeout: 264 seconds). 06:06:07 Naw, a troll would be responsive, I assume. 06:06:10 Just a moron. 06:09:01 -!- lament has joined. 06:09:15 Mmm. 06:10:22 lament: Can has kickban on Khazar plz kthx 06:13:44 Alternatively, can have access +o on Gregor? :P 06:15:15 it isn't spam 06:15:22 where did I mention viagra or porn? 06:15:54 You opted form "chimpout" instead. 06:15:57 Erm. For. 06:16:06 Oh wow, it is a "human". 06:16:07 Shocking. 06:16:29 If nothing else, your racist idiocy has no relevance to this channel and is unsolicited, making it spam. 06:16:40 we have discovered that on Freenode, it is wiser to be more lowkey 06:16:42 Advertising a site that is offensive to many and sought out by few is generally considered spam. 06:16:45 precluding the usage of bots 06:16:48 it is more profitable 06:16:57 if you are interested in such a job in irc marketing 06:17:06 That would be because people on Freenode are, in general, more intelligent than turnips. 06:17:10 email recursoshumanos@telvista.com.mx 06:17:20 Whereas the target audience for your site is in the 0.25-to-0.75 turnips intelligence range. 06:17:34 People on Freenode are more likely to be offended by marketing in general, you know. 06:17:40 Which would place them just a tad below intelligent design advocates, and roughly on par with flat-Earth-theorists. 06:18:13 (... Particularly here. Have you *seen* the crazy shit we write?) 06:18:46 i once knew a nigger named esoteric 06:18:54 It's too bad that "recursos" means "resources" instead of "recursive", "recursive humans" == an awesome concept :P 06:19:02 he had a sister named shaquanda 06:19:16 New idea: let's all /ignore 06:19:23 3, 2, 1, go 06:19:26 Khazar: Would you please be so kind as to inform us of the reasons for your opinion? 06:19:44 pikhq: Oh dear :P 06:19:50 I am certain that they are detailed, profound, and may well be enlightening as to certain aspects of the human condition. 06:20:23 Average Human IQ 100 Average Nigger IQ 80 Of course there are negroes that have normal IQs, but you are much more likely to run into a feral ape 06:20:28 than a magic negro 06:20:42 many who don't see this have been isolated from the bulk of the nigger population 06:20:49 and just know a few magic ones in the workplace 06:20:55 Well, with such "compelling" evidence as that, I'm sure convinced haw haw X-D 06:21:16 -!- Khazar has quit (Quit: Haiti=Mierda). 06:21:21 Daaaamn :P 06:21:28 Magic ones are OK I guess. 06:21:29 Alas. 06:21:33 I know a few magic ones. 06:21:56 I guess we need to sprinkle some pixy dust on everyone. 06:22:02 Thus making magical negroes. 06:22:09 Sounds about right to me. 06:22:19 (*Everyone* to allow for the possibility of racial mixes, of course.) 06:22:26 Naturalismo. 06:22:38 Now, let us discuss recursive humans. 06:22:53 I think something along the lines of Russian nesting dolls. 06:22:57 The idea intrigues me, and I would like to subscribe to relevant newsletters. 06:23:03 -!- coppro has quit (Remote host closed the connection). 06:24:00 -!- coppro has joined. 06:43:24 -!- ElMexicano has joined. 06:43:26 It is time to put those Haitian jigaboos in their place! No matter how many times the civilized world donates money, opens schools, rebuilds their nation, and holds their little monkey paws, the damn niggers can never get it right. They never will! The same goes for New Orleans! Cancun in Mexico suffered few fatalities after their major hurricane, and the rebuilding is already completed. Wha 06:43:26 t have the niggers in New Orleans done? If you are sick of this, join Chimpout Forum! http://www.chimpout.com/forum We welcome all races except for NIGGGGGGGERS! We are not white supremacists, just negro inferiorists! http://www.chimpout.com/forum 06:44:01 ElMexicano: It remains unintelligent here. 06:44:27 OK, the straight-up reappearing and pasting the same thing is bizarre :P 06:44:34 Yeah. 06:45:21 ElMexicano: なぜ、おメキシコ人、それと思うかな。 06:46:02 pikhq: Google translates that as "Why Mexicans us, I think it is." :P 06:46:12 Not the most understandable translation I've ever seen. 06:46:23 Gregor: That's because Japanese is a royal pain to translate. 06:46:30 *Highly* context-dependent. 06:46:44 That is "Why, oh Mexican, do you think that?" 06:47:17 Should've done it in keigo so I could translate it was "Wherefore doth thou think that, most honerable Mexican?" 06:47:48 Could be bots 06:48:21 -ElMexicano- VERSION xchat 2.8.6 Ubuntu 06:48:22 Unfortunately, I can't remember the appropriate verb. 06:48:37 ElMexicano, are you, in fact, a human? Prove it. 06:52:21 Apparently not. 06:52:33 It is time to put those Haitian jigaboos in their place! No matter how many times the civilized world donates money, opens schools, rebuilds their nation, and holds their little monkey paws, the damn niggers can never get it right. They never will! The same goes for New Orleans! Cancun in Mexico suffered few fatalities after their major hurricane, and the rebuilding is already completed. Wha 06:52:33 t have the niggers in New Orleans done? If you are sick of this, join Chimpout Forum! http://www.chimpout.com/forum We welcome all races except for NIGGGGGGGERS! We are not white supremacists, just negro inferiorists! http://www.chimpout.com/forum 06:54:33 -!- ElMexicano has quit (Quit: Haiti=Mierda). 06:54:37 -!- Chazz has joined. 06:54:57 Hey Chazz 06:55:07 -!- werdan7 has joined. 06:55:11 Hai 06:56:18 * Sgeo points to the channel logs 06:57:45 he seems to be using a single hostname 06:58:46 Yeah. 07:10:15 who wants to hear some obnoxious bullshit from contemporary formal semanticists? :D 07:15:58 ALWAYS 07:16:19 Gregor: OK 07:16:47 so apparently these nutballs try to account for the meaning of modal adjectives like, say, "always" 07:16:53 using the following _syntactic_ structures 07:17:40 Transforming the meaning of "always" into something purely syntactic...? 07:17:50 [λs [s [ssh [always [λr [r [John complained]]]]]]] 07:18:07 no, they just try to invent a shit ton of extra syntax so that the syntax maps neatly into logic 07:19:13 -!- Linuxiano has joined. 07:19:25 It is time to put those Haitian jigaboos in their place! No matter how many times the civilized world donates money, opens schools, rebuilds their nation, and holds their little monkey paws, the damn niggers can never get it right. They never will! The same goes for New Orleans! Cancun in Mexico suffered few fatalities after their major hurricane, and the rebuilding is already completed. Wha 07:19:25 t have the niggers in New Orleans done? If you are sick of this, join Chimpout Forum! http://www.chimpout.com/forum We welcome all races except for NIGGGGGGGERS! We are not white supremacists, just negro inferiorists! http://www.chimpout.com/forum 07:20:03 *sigh* 07:20:06 lament! 07:20:50 augur: Just to be clear, that's the sentence "John always complained", yes? 07:20:52 Or something along those lines. 07:20:56 yes. 07:21:19 the best argued syntax for that is at most [always [John complained]] 07:21:44 but typical semanticists add in a whole bunch of other shit because otherwise they cant explain anything 07:22:04 That is the way of formal semantics :P 07:22:16 its not 07:22:22 there are some formal semanticists that dont do that 07:22:31 If I knew the context I could maybe understand what function each additional layer serves, but I'm too tired and need to sleep, so I'll do that instead :P 07:22:39 its just annoying that they stick the shit into the syntax not the semantics 07:22:44 ah well ok 07:22:49 its basically 07:23:18 s, ssh, and r are situation variables 07:23:27 john is just some person value lets say 07:23:46 complained is a function of type Ind -> Sit -> Bool 07:24:02 always is of type (Sit -> Bool) -> Sit -> Sit -> Bool 07:24:52 so if this were in haskellish 07:25:44 ... Sticking semantics into syntax = failure. 07:25:50 \s -> always (\r -> (complained John r)) ssh s 07:26:09 pikhq: its so true. 07:26:31 i mean, its one thing if you map from one to the other relatively transparently or something 07:26:46 but to use your syntax as a place to encode your logical objects 07:26:55 the whole theory just blows up and becomes incredibly complex 07:31:37 It is time to put those Haitian jigaboos in their place! No matter how many times the civilized world donates money, opens schools, rebuilds their nation, and holds their little monkey paws, the damn niggers can never get it right. They never will! The same goes for New Orleans! Cancun in Mexico suffered few fatalities after their major hurricane, and the rebuilding is already completed. Wha 07:31:41 t have the niggers in New Orleans done? If you are sick of this, join Chimpout Forum! http://www.chimpout.com/forum We welcome all races except for NIGGGGGGGERS! We are not white supremacists, just negro inferiorists! http://www.chimpout.com/forum 07:32:29 * Sgeo pokes werdan7 07:36:45 -!- Linuxiano has quit (Quit: Haiti=Mierda). 07:41:27 `translate mierda 07:41:36 crap 07:54:43 `translate No hagas mierda estúpida. 07:54:45 Do not do stupid shit. 07:55:00 Darn these inconsistent translations. 07:55:52 `translate Con voz como John Scott / Ronco, ronco / Formó todos los coros 07:55:55 With a voice like John Scott / snoring, snoring / formed the choirs 07:56:30 `translate Con voz como John Scott / Ronco, ronco / Formó todos los coros / Tocó: Doblo con Mollo, bombo con Moro, / tom tom con Porno, joropo con Tormo, bongó con Don Johnson / Tocó con Toto, los Lobos, los Door, los Moscos / Compró dos vox 07:56:32 the flies / bought two vox 07:56:44 `translate Con voz como John Scott / Ronco, ronco / Formó todos los coros / Tocó: Doblo con Mollo, bombo con Moro, / tom tom con Porno, joropo con Tormo, bongó con Don Johnson 07:56:46 With a voice like John Scott / snoring, snoring / formed the choirs / played: Double Mollo, hype with Moro, / tom tom for Porno, joropo with Tormo, bongo with Don Johnson 07:58:01 `translatefromto en es The others are crazy; I know them; I don't support them. 07:58:03 Los otros son locos, yo los conozco, yo no los admite. 07:59:35 `translatefromto As I eat how I eat, nothing swims at all; nothing swims at all like I eat. 07:59:37 No output. 07:59:43 `translatefromto As I eat how I eat, nothing swims at all. 07:59:45 No output. 07:59:56 `translatefromto en es As I eat how I eat, nothing swims at all; nothing swims at all like I eat. 07:59:58 Como yo como cómo comer, nada nada en absoluto, nada en nada como comer. 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:00:15 `translate Como como como como como como como como. 08:00:17 How how how how how how how how. 08:00:32 `translate Como nada nada como nada como como nada nada como como nada como nada nada como. 08:00:35 As nothing like nothing like nothing like nothing like nothing like nothing like nothing like anything. 08:03:01 `translatefromto en es Whence do I insist that thou beest? 08:03:03 żDe dónde puedo insistir en que beest tú? 08:04:20 o.O 08:04:43 `translate The quick brown fox jumpeth over the lazy dog. 08:04:46 var sl_select, tl_select, web_sl_select, web_tl_select;var ctr, web_ctr, h;var tld = ".com";var sug_lab = "";var sug_thk = "";var sug_exp = "";var dhead = "Dictionary";var dmore = "View detailed dictionary";var tr_in = "Translating...";var isurl = "";var show_roman = "Show romanization";var hide_roman = 08:04:55 `translatefromto en es The quick brown fox jumpeth over the lazy dog. 08:04:57 El rápido jumpeth el saxofón detrás del palenque de paja. 08:06:26 `translatefromto en es The large round potato jumpeth over the square ruse. 08:06:28 La gran jumpeth patata redonda sobre el ardid cuadrados. 08:07:00 `translatefromto en es In computer science, the term type punning referreth to a programming technique that subverteth or circumventeth the type system of a programming language. 08:07:02 En informática, el término tipo referreth juegos de palabras a una técnica de programación que subverteth o circumventeth el sistema de tipo de un lenguaje de programación. 08:10:35 -!- Chazz has quit (Read error: Connection reset by peer). 08:31:47 what what 08:32:12 oh mexicans 08:33:20 -!- ChanServ has set channel mode: +o lament. 08:33:25 -!- lament has set channel mode: +b *!*@*.cable.dyn.cableonline.com.mx. 08:33:29 -!- lament has set channel mode: -o lament. 08:34:07 it's strange that one of his nicks was khazar 08:36:04 * augur shrugs 08:36:08 crazy people 08:37:05 also his platform is silly 08:37:23 "we're not white supremacists, just negro inferiorists" 08:37:33 well its true 08:37:37 if hes mexican, hes not white 08:37:43 well sure 08:37:48 but he still hates black people 08:37:53 but it seems like it would be hard to find support 08:38:00 since if someone hates blacks, he's probably racist 08:38:01 inside the US maybe :p 08:38:08 and so hates other races too 08:38:14 lots of people outside the US are overtly racist 08:38:16 oh yes, this is true 08:54:19 -!- amca has joined. 09:07:07 -!- tombom has joined. 09:24:44 -!- adam_d has joined. 09:41:37 -!- adu has joined. 09:51:33 -!- Leonidas has quit (Remote host closed the connection). 09:51:36 -!- Leonidas has joined. 09:57:13 -!- oerjan has joined. 10:21:47 -!- jcp has quit (Quit: I will do anything (almost) for a new router.). 10:25:20 -!- oerjan has quit (Quit: leaving). 11:11:39 -!- adu has quit (Quit: adu). 11:14:23 -!- amca has quit (Quit: Farewell). 11:30:02 -!- sebbu2 has joined. 11:32:38 -!- sebbu has quit (Ping timeout: 246 seconds). 11:35:24 does anyone know if it is possible on 32-bit x86, to atomically write or read a 64-bit integer from memory? 11:35:35 without mutexes or such I mean 11:36:14 you do have cmpxchg8b 11:36:29 and maybe lock prefixes work for 8-byte accesses 11:36:34 olsner, yes, but that doesn't help for plain read or write 11:36:37 afaik 11:36:53 olsner, what if you want to read without changing the value, but want to do so atomically 11:38:29 olsner, for the use case I consider, any sort of mutexes or such just have way too much overhead 11:39:16 and collisions are extremely likely. 11:42:25 olsner, the use case is async threaded funge. And specifically it's funge space. Assuming we have (part of it) implemented as a static non-sparse array, and the rest of it as a tree structure or hash table, then it should be possible I think to only require locking for the the non-static part 11:42:46 and since most programs operate around origo, this should help quite a bit 11:42:56 the issue is how to handle 64-bit funge on 32-bit systems 11:43:28 looks like you need cmpxchg8b - if you just use the same value for the comparison and the exchange, you'll get the current value read back into edx:eax ... not sure how to do writing easily though (except spinning until you get two consecutive exchanges in between another writer) 11:43:39 hm 11:43:45 *lock cmpxchg8b, that is 11:44:04 sounds somewhat messy but okay 11:44:22 I guess atomically writing or reading the native word size on both x86 and x86_64 should be trivial? 11:44:51 iirc, simple memory transfers in the native word size are always atomic 11:45:28 which could mean that 64-bit access in 32-bit mode *on 64-bit hardware* is also atomic 11:45:36 olsner, how backwards 11:45:48 but what about the actual MMU and system bus and so on 11:45:59 isn't there a possibility of that causing a mess there? 11:46:28 olsner, and can you do 32-bit atomic reads, writes and CAS on x86_64 in 64-bit mode? 11:46:53 that is, without causing it to operate on 32 extra bits you don't want to touch 11:47:13 it does get messy in the rest of the system, but there are synchronization protocols for that, like making sure that only one cpu "owns" memory for write access at any time 11:47:36 olsner, you mean cache coherency and such? 11:47:44 yes, exactly... it also gets extra messy with NUMA, if you want to do atomic stuff to another cpu:s memory 11:47:59 olsner, I don't own a numa system, so I can't test 11:48:10 oh btw, is L1 data cache coherrent? 11:48:37 iirc I read somewhere there are some restrictions on L1 instruction cache, but I have no idea about L1 data cache 11:48:54 iirc, recent AMD multi-core systems are all numa, they split up the memory between the cpu:s 11:50:19 olsner, I have a 64-bit sempron that is not SMP or multicore, plus a core2duo system 11:50:31 so only the latter allows me to test this 11:51:18 olsner, btw, do you happen to know any sort of concurrent-access hash table or balanced tree thingy? 11:51:26 RCU seems to have a high update overhead 11:51:56 testing doesn't prove the absence of bugs though... what you want to do is get to the bottom of which guarantees you actually have according to the x86 specs :) 11:52:11 multiple readers, and preferably "multiple writers-in-different-parts" should be supported 11:52:45 olsner, of course. But testing is required to see that I didn't mess up something 11:53:24 also implementing this won't happen straight away. Consider the current stage early investigation of what possibilities I have for it 11:53:43 -!- MigoMipo has joined. 11:54:57 olsner, also how does out of order execution affect this sort of things 11:55:08 hrrm 11:55:27 well that shouldn't be a problem unless it splits up a single read or write 11:56:50 and the LOCK prefix seems to force a memory barrier according to AMD docs at least 11:57:27 some care will be required, to say the least 11:58:25 olsner, of course 11:58:46 not sure if any of it will cause problems, but you best prove that it won't :P 11:59:27 olsner, also I suspect that 64-bit cells would be faster than 32-bit cells, due to less data being in each cache line -> less chance of two threads fighting over same cache line 12:00:25 for "normal" funge 64-bit cells are somewhat slower than 32-bit cells, on x86_64. Most likely for the same (or rather, opposite) reason 12:00:39 s/for the same/due to the same/ 12:06:04 olsner, it seems LOCK XCHG can be used for stores 12:06:49 I guess to optimise this, the funge *implementation* should self modify to only use it in case of multiple threads 12:06:58 XD 12:07:06 does xchg work for 64-bit words though? 12:08:02 hm good point *opens another pdf* 12:08:59 olsner, there is an 64-bit form 12:09:09 and there is nothing saying that LOCK prefix doesn't work for it 12:09:16 that is on x86-64 though 12:09:24 not sure about 64-bit on 32-bit 12:11:28 -!- MizardX has joined. 12:12:26 olsner, what I can't figure out is if lock xchg is required if you don't care about the data being visible right way 12:12:56 specifically, what if you do a normal write, then another cpu does a normal write to the same cache line, but not to the same specific address 12:13:21 will the first write get lost if it wasn't flushed to main memory yet 12:13:33 I suppose it shouldn't... 12:16:03 AnMaster: I just went and wrote a JSON parser in Forth, because I could not think of anything more sensible. I'm classifying this as your fault too. 12:16:08 I think it's set up so that it won't be cached in more than one place if anyone writes 12:17:10 -!- BeholdMyGlory has joined. 12:20:14 fizzie, ? 12:20:46 fizzie, now write a FORTH-to-JSON serialiser and deserialiser 12:20:57 alternatively, use xml instead of json 12:20:59 -!- MissPiggy has joined. 12:21:10 in both cases the result is something that should never have existed 12:21:34 olsner, hm 12:23:01 I wonder what mmap()ing /dev/mem does 12:23:10 I don't dare test that though 12:24:00 mmap:ing /dev/mem sounds like a sensible way to use it 12:24:11 har 12:24:16 address space is usually larger than the amount of physical memory anyway 12:24:18 olsner, it is a char device, not a block device 12:24:34 which makes me think it can't be used that way 12:24:53 AnMaster: Forth is a bit too low-level for "sensible" serialization to any structured format. There's cells, floating-point values and blocks of memory; that's about it. (And of course no run-time type information anywhere.) I could of course serialize some custom-defined structures into JSON, but... 12:25:16 fizzie, well, write a FORTH interpreter that reads the program fro ma JSON format then! 12:25:28 from a* 12:27:20 What I have now parses JSON into (type, data) pairs, where the types map mostly to JSON types (bool, int, float, string, array, object) and data is two cells (the value 0 or -1 for bool, a signed-integer cell for int, a float for a float, a pointer-length pair for a string, a pointer-length pair for an array and a pointer to unbalanced binary tree "string => json-value" map for an object). 12:28:02 fizzie, I didn't know Forth had pairs 12:28:06 AnMaster: the man page for mem links to mmap :) 12:28:20 olsner, mem(4)? 12:28:21 not here 12:28:35 AnMaster: It's not a native pair, of course; just a memory block the size of three cells. 12:28:40 SEE ALSO 12:28:41 chown(1), mknod(1), ioperm(2) 12:28:42 is all 12:28:53 hmm, probably got a different manpage that, it was mem(7D) 12:29:03 olsner, I don't have mem(7D) 12:29:11 I don't even have 7D at all 12:29:41 olsner, what weird OS is it? 12:29:49 SunOS at least has a 7D section. 12:29:51 (For devices.) 12:29:57 when googling, the only 7D I can find is indeed SunOS 12:30:01 I googled, so that wasn't even linux 12:30:04 ah 12:30:21 but it'd be screwed up not to be able to mmap it :) 12:30:39 olsner, you could use normal fseek and such on it 12:30:57 yeah, but how irksome 12:32:05 You can mmap /dev/mem, according to kernel sources: 12:32:07 * capabilities for /dev/mem, /dev/kmem and similar directly mappable character 12:32:07 * devices 12:32:07 * - permits shared-mmap for read, write and/or exec 12:32:07 * - does not permit private mmap in NOMMU mode (can't do COW) 12:32:07 * - no readahead or I/O queue unplugging required 12:32:40 mhm 12:32:56 fizzie, what file is that from? 12:33:05 fs/char_dev.c 12:33:11 also mmaping a char device seems just backwards to me 12:33:27 and well, I have no clue what the heck readahead would *mean* on /dev/mem 12:34:26 fizzie, also, iirc /dev/mem is restricted these days to only allow BIOS and PCI space or such (needed for X) 12:34:36 well, it's a kernel option 12:34:45 pretty sure I have it turned on 12:34:51 Yes, I seem to remember reading a description like that. 12:35:04 and I don't even have a /dev/kmem 12:35:08 for some unknown reason 12:35:32 further, I wonder what grepping /dev/mem would do 12:35:39 I don't want to actually try that either 12:36:09 man mem says "Examining and patching is likely to lead to unexpected results when read-only or write-only bits are present." 12:36:34 which I guess refers to the page flags 12:37:18 "CONFIG_STRICT_DEVMEM: -- If this option is switched on, the /dev/mem file only allows userspace access to PCI space and the BIOS code and data regions. This is sufficient for dosemu and X and all common users of /dev/mem. If in doubt, say Y." 12:38:48 fizzie, and I presume /dev/kmem can be turned off elsewhere? 12:40:06 Possibly. Or it might be that it's just not generated by default nowadays and you have to manually make the device node if you want it. I'm not sure I want to start source-diving for it. 12:40:47 fizzie, my laptop which is on an older kernel has /dev/kmem 12:40:54 but then it is also on a distro generic kernel 12:40:58 unlike my desktop 12:41:57 I don't seem to have /dev/kmem either on this desktop. 12:43:06 fizzie, strange, om my laptop I also have /dev/oldmem 12:43:17 $ ls -l /dev/*mem 12:43:17 crw-r----- 1 root kmem 1, 2 2009-07-25 23:32 /dev/kmem 12:43:17 crw-r----- 1 root kmem 1, 1 2010-03-05 11:17 /dev/mem 12:43:18 crw-rw---- 1 root root 1, 12 2010-03-05 11:17 /dev/oldmem 12:43:30 whatever that is 12:44:38 grepping sources on there turns up just one hit 12:44:41 ./include/linux/crash_dump.h:extern ssize_t copy_oldmem_page(unsigned long, char *, size_t, 12:44:45 and that doesn't seem relevant 12:44:54 oh wait that is just headers 12:44:55 not sources 12:45:40 hm 12:45:42 #ifdef CONFIG_CRASH_DUMP 12:45:42 [12] = { "oldmem", 0, &oldmem_fops, NULL }, 12:45:42 #endif 12:45:49 from drivers/char/mem.c 12:47:09 There seems to be a CONFIG_DEVKMEM flag, I just didn't notice it in the configura-a-tron. 12:47:26 fizzie, "configura-a-tron"? 12:47:36 make menuconfig, or such. 12:47:41 fizzie, I meant the spelling 12:47:43 not the meaning 12:47:53 -!- oklokok has quit (Remote host closed the connection). 12:47:53 "Say Y here if you want to support the /dev/kmem device. The /dev/kmem device is rarely used, but can be used for certain kind of kernel debugging operations. When in doubt, say "N"." 12:48:08 It's just random irregular spellamatics. 12:48:16 -!- oklokok has joined. 12:48:31 fizzie, I meant the a at the end of the first word should be an e 12:50:38 Not if it's from the word "configurator". 12:50:50 "Welcome to the prerelease of Adobe® Configurator. Configurator is an open source utility that enables the easy creation of panels (palettes) for use in ..." 12:50:53 See, a real word. 12:51:31 heh 12:53:20 I can't find any other JSON libraries for Forth by googling (at least on the first three pages of results). I may have found an untapped market here. 12:55:12 -!- tombom has quit (Ping timeout: 258 seconds). 12:55:53 fizzie, so publish the thing XD 12:56:19 fizzie, now you need to write an XML DOM thingy with xpath support for Forth too! 12:56:35 -!- tombom has joined. 12:59:07 -!- kar8nga has joined. 13:02:33 fizzie, is there any way to list kexec loaded kernels btw? 13:05:44 [85909.348091] sdhci-pci 0000:15:00.2: Will use DMA mode even though HW doesn't fully claim to support it. 13:05:48 how reassuring! 13:05:52 fizzie, ^ 13:07:52 I have about three zillion lines of 13:07:54 ehci_hcd 0000:00:12.2: force halt; handhake ffffc90000072024 0000c000 00000000 -> -110 13:07:57 in my dmesg buffer. 13:08:08 I'm not sure I want to know what "handhake" is. 13:08:13 fizzie, something strange with usb 2.0 it sounds like 13:12:55 fizzie, look for what usb device might cause it 13:13:04 lsusb and look for "0000:00:12.2" perhaps 13:13:23 well, it would be split up there 13:13:33 It's no longer connected; based on timestamps I think that was around when I used that USB sound stick thing. 13:13:48 sound stick? 13:14:07 It sounds stupid to call it a "sound card" when it doesn't resemble a card at all. 13:14:27 aah 13:14:33 did it work well? 13:14:53 Yes, no problems there. 13:15:46 hm 13:15:55 http://www.terratec.net/en/products/Aureon_Dual_USB_9842.html -- got that in order to get optical s/pdif out of the iBook back when I was using it as a TV box. 13:17:40 ah 13:18:23 fizzie, what exactly is wrong with normal copper for audio? 13:19:03 wow, they explicitly support linux 13:19:05 that's unusual 13:20:58 -!- ais523 has joined. 13:21:36 Well, nothing wrong with coaxial s/pdif either, but the iBook only has one 3.5mm headphone plug, no other audio outputs at all. 13:22:09 nothing wrong with 3.5mm headphone plugs 13:22:29 And for some reason or another, the output from that was pretty noisy when connected to the amplifier; whereas with digital output there's of course no noise to speak of. 13:23:42 fizzie, why s/pdif? 13:23:54 ah 13:23:56 well 13:24:07 a good 3.5mm plug should be just as good 13:24:13 of course, a noisy one is rather strange 13:25:33 -!- uorygl has quit (Read error: Connection reset by peer). 13:25:48 -!- uorygl has joined. 13:25:58 I don't know about that; at least with digital connections you get the d/a conversion done at the amplifier, which is a bit more audibly oriented device than a regular PC box. (I'm sure that the outputs from a real sound card would be a different thing.) 13:28:01 Also, I could get multichannel sound out from the iBook through that thing. It's just that with only two speakers connected to the amplifier, the benefits of that are a bit theoretical. 13:39:30 fizzie, does the amplifier beat a sb live? 13:40:26 I have no idea about that, but at least it's bound to be reasonably good, as opposed to the sort of random motherboard-integrated stuff I otherwise have. 13:40:39 I did say that a real sound card might have also helped. 13:40:45 well yes 13:40:55 I was just trying to compare it to my "real soundcard" 13:41:57 I am not aware of any benchmarks, really. 13:42:17 It's a harman/kardon AVR-147; the manufacturer is reasonably well-known. 13:43:03 "A 24-Bit/twin-core Cirrus Logic CS 49510 DSP processor with 32-bit post processor and 192kHz/24-bit D/A conversion", say the marketing hype, but of course you never know. 13:43:42 And given that it's generally just 16-bit 48/44.1 kHz digital stuff that gets sent over the s/pdif link, I'm not sure how much that matters. 13:45:23 heh 13:47:20 I'm not even sure if the S/PDIF link supports all that. The standard sample resolution for s/pdif seems to be 20 bits, and 24-bit samples are a bit of a hack. 13:50:24 heh 13:50:30 only 24 bits? ;P 13:51:23 it should be represented as an accurate physics model of the source using numbers from R or something! 13:52:05 The owner's manual is silent about whether it supports the s/pdif 24-bit thing, but at least the straight 2-channel PCM digital input "only" goes up to 96 kHz sample rates. 13:53:55 It does support decoding the 5.1 surround DTS 96/24 format, which technically speaking is 24 bits and 96 kHz, but that involves some compression, I think. 13:55:20 I am a bit doubtful whether the alsa drivers would know how to stick 96 kHz 24-bit samples out of the pipe anyway, even if it supported that. 13:56:21 fun... http://en.wikipedia.org/wiki/Thread_join redirects to thread, and that doesn't explain what thread join is... 13:58:55 Quick history-browsing seems to suggest that it didn't explain joins back when the redirect was made, either. 13:59:04 indeed 14:20:44 bored 14:21:15 cheater, watch videos about technological singularity: http://www.youtube.com/user/singist 14:22:46 "This would be cleaner in C++ with templates." <-- shudder, this is from a README of a library in C 14:22:57 also I can't imagine how it would be cleaner: 14:23:06 "The cleanest way to use these routines is probably to define the stack node type with an initial AO_t link field, so that the conversion between the link-field pointer and the stack element pointer is just a compile-time cast. But other possibilities exist. (This would be cleaner in C++ with templates.)" 14:23:13 is the full paragraph 14:23:37 oh and this is from libatomic_ops, which is bundled with libgc 14:25:38 lockless two-thread concurrent stack seems fun 14:29:22 -!- oklokok has quit (Ping timeout: 265 seconds). 14:32:47 -!- ais523 has changed nick to ais523|away. 14:33:18 -!- ais523|away has changed nick to ais523. 14:33:22 -!- FireFly has joined. 14:34:02 -!- alise has joined. 14:35:04 -!- augur has quit (Quit: Leaving...). 14:35:39 so I'm trying to define induction on the naturals set-ly 14:35:42 I think it's 14:35:59 define? as an axiom? 14:36:08 well, just formulate 14:36:10 you could look up set theory if you want the answers 14:36:17 i know that 14:36:27 i didn't mean like that 14:36:30 do you take back what you said yesterday 14:36:37 what exactly 14:36:48 when I said enjoy your russles paradox then you called me an idiot 14:37:06 (other than not being able to spell russell) 14:37:08 i mean obviously we state it as intersect(P(0), (forall n. intersect(P(n), P(S(n)))) subset-of (forall n. P(n)) 14:37:13 MissPiggy: no 14:37:26 well, I take back that you're an idiot personally 14:37:29 but your statement was idiotic 14:37:41 you can perfectly well have set builder notation without russell popping in 14:37:50 it's just sugar... 14:38:05 you can't have self application of functions though 14:38:14 (functions defined in the usual way) 14:38:19 well forall n. blah is isomorphic to function from n to blah and I have that so 14:38:36 MissPiggy: yeah i'm gonna have to work out a nice way to combine all this 14:39:29 you can model lambda calculus in set thoery, that's scott domains and such 14:39:49 also, self application as in f(f)? or as in recursion 14:40:38 f(f) 14:41:47 I've no qualm with that. 14:41:58 I don't see f(f) as intuitively well-founded. 14:43:01 yeah because if f : A -> B, then you're saying that A -> B = A but that's a source of problems 14:43:20 Exactly. 14:43:27 Even id(id) is not neccessarily well-founded. 14:43:33 that's what I was TRYING to say the other day :P 14:43:53 So? 14:44:01 It's not Russell's paradox because you don't allow it :P 14:44:04 okay 14:44:13 And I really don't mind id(id) not being possible to be honest 14:44:30 I need to do some study today but I'm really fucking lazy 14:44:58 -!- ais523 has changed nick to ais523|away. 14:45:01 One issue I have is that I don't think !(p&!q) = the regular set of pair sfunction structure 14:45:21 !(p&!q) is classically used for p -> q? 14:45:23 it's ~(p intersect ~q) 14:45:27 MissPiggy: yeah 14:45:44 * MissPiggy never really got why people would do that .. but can't complain because it does work 14:45:48 i just think it's a nice identity :P 14:46:06 i mean it's not like you get many constructivist set theorists so 14:48:00 wait P->Q is actually P superset Q 14:48:01 not subset 14:48:27 I reasoned subset because a->b = x elem a -> x elem b = b superset-of a = a subset-of b 14:49:18 -!- ais523|away has changed nick to ais523. 14:49:55 no longer scarfaic? 14:50:06 -!- hodyna has joined. 14:50:33 yeah P->Q means P <= Q 14:51:46 because false implies everything (ex falso quodlibet) is just saying that bottom is <= anything 14:53:00 yeah 14:53:13 apparently some people write P->Q as P =) Q though 14:53:16 which is weird 14:54:01 set thoery is weird :P 14:55:28 -!- ais523 has changed nick to ais523|away. 14:55:48 -!- ais523|away has changed nick to ais523. 14:57:15 -!- alise_ has joined. 14:57:22 anyway so 14:57:36 -!- alise has quit (Ping timeout: 252 seconds). 14:58:08 I think {E : x <- S, y <- S, ...} is the purest form of set building 14:58:35 but {E : P x, Q x y, ...} is easier to make useful 14:58:41 the latter sucks though because it depends on logic 14:58:44 I think of it as syntactic sugar for the axioms 14:58:46 whereas logic should be defined with sets 15:00:55 also I don't think you can define the naturals with just set building which upsets me 15:01:10 N = {0} union {{n} union n : n <- N} 15:01:17 you don't want me to give it away? 15:01:37 Money? Please do. 15:02:03 I'm rather strange... I know type theory but I don't even know the regular definitions used when implementing mathematics in set theory. 15:02:24 Martin-Lob roolz, ZFC droolz. 15:06:53 S = { (n, {n} union n) | n <- N } 15:06:57 -!- ais523 has changed nick to ais523|away. 15:07:01 S = { {n, {n, {n} union n}} | n <- N } 15:09:08 -!- ais523|away has changed nick to ais523. 15:09:54 I was thinking of having a nice axiom but I've forgotten where it is 15:11:18 i think induction is the coolest thing ever. srsly 15:14:45 yeah 15:15:09 if you have a type 15:15:20 months := January | Feb.... 15:15:24 then induction = case analysis 15:15:40 if you have N := O | S N, induction is the normal idea, with links to recursion 15:15:47 -!- ais523 has changed nick to ais523|away. 15:15:52 but then you get things like O := Z | S O | Lim (N -> O) 15:15:57 it is ubiquitous 15:15:57 where you have transfinite induction 15:16:07 and beyond that you get inductive-recursive definitions 15:16:17 where you simultaneuously define a type and an elimiation on it 15:16:20 even just induction on the naturals though, is so cool 15:16:42 it's like we have a base, and a way to ascend... and then suddenly we ascend to infinity 15:16:51 yes, it's a totally trivial concept 15:16:53 but it's AWESOME 15:17:04 trivial?? 15:17:55 well as in 15:18:08 -!- ais523|away has changed nick to ais523. 15:18:11 it's not like supergroupsetgraphtheory's metacalculus 15:18:30 but it's so general and powerful and simple 15:18:35 -!- ais523 has quit (Remote host closed the connection). 15:21:25 22:16:57 if you are interested in such a job in irc marketing 15:21:26 Surreal. 15:22:38 haha magic negros what 15:22:44 ?? 15:23:39 my biggest problem right now is getting some notes written 15:27:00 grep http://tunes.org/~nef/logs/esoteric/10.03.06 for Khazar and read on 15:27:32 hmm i wish logic was a more common foundation for mathematics than set theory, would be... logical? 15:28:15 logic as a foundation? 15:29:52 sure. hasn't this been done, i heard something about "plural quantification" that basically let logic talk about what set theory talks about 15:31:01 * alise_ ponders: Basing forall on exists or vice versa? 15:31:50 you can implement exists in dependent type theory 15:32:03 -!- oklokok has joined. 15:32:21 -!- alise__ has joined. 15:32:48 forall x. P == ~(exists x. ~P) 15:32:57 exists x. P == ~(forall x. ~P) 15:33:00 erm 15:33:02 forall x. P == ~(exists x. ~P) 15:33:05 exists x. P == ~(forall x. ~P) 15:33:09 forall x. P == ~(exists x. ~P) 15:33:11 dsfsdf 15:33:13 sdfsdf 15:33:16 forall x. P == ~(exists x. ~P) 15:33:20 exists x. P == ~(forall x. ~P) 15:33:39 "For all x, P is true." "There does not exist an x such that P is false." 15:34:05 "There exists an X such that P." "Not for all X, P is false." 15:34:17 that's classical alise 15:34:21 So defining forall in terms of exist is intuitively superior because "Not for all ..." reads horribly. 15:34:23 MissPiggy: Yes, it is. 15:34:31 I'm taking a break from constructivism just to explore. 15:34:55 disgusting. 15:35:07 Like Haskell! 15:35:14 MissPiggy: I presume you're not being entirely serious 15:35:20 http://i.imgur.com/vv9OO.png 15:35:22 -!- alise_ has quit (Ping timeout: 252 seconds). 15:35:25 haskell is grrrrrrreat 15:36:09 I don't like haskell because I'm too stupid to program in it 15:36:55 I write 1/4 of a progarm then get worried about its correctness and give up 15:37:33 http://en.wikipedia.org/wiki/Plural_quantification 15:40:24 -!- oerjan has joined. 15:41:58 -!- alise__ has quit (Ping timeout: 252 seconds). 15:42:53 -!- tombom_ has joined. 15:44:01 -!- tombom has quit (Ping timeout: 276 seconds). 15:44:02 -!- alise has joined. 15:47:44 eq = {(x,x) | true} is not ok in zfc :( 15:53:02 I wonder if I should represent it as eq = { (S, {(x,x) | x <- S}) | S <- * } 15:53:10 Then eq(N) is { (0,0), (1,1), ... } 15:54:58 r2f = { (R, {(x,{(y, xRy) | y <- S}) | x <- S}) | R <- BiRel } 15:55:21 if we take eq to actually mean eq(S) then r2f(eq)(2)(2) = true, r2f(eq)(2)(4) = false 15:55:29 asuming xRy stands for (x,y) in R, which ... it does 15:56:02 of course if we allowed more sugar on top of (x,y) = {{x},{x,y}} we could just say r2f = \(R:BinRel). \(x:S). \(y:S). xRy 15:56:26 -!- ais523 has joined. 15:58:03 hi ais523 15:58:13 hi 15:59:40 ais523: does "eq = { (x,x) | x <- someset }" make you balk? 15:59:50 reminds me of Proud 15:59:51 (the correct answer is no) 15:59:56 whereby = i mean := that is 16:00:00 ais523: but does it make you balk? 16:00:10 no 16:00:22 good 16:00:24 (ZFC doesn't allow it) 16:00:27 although that sort of thing probably works better in uncomputable langs 16:00:46 it's not uncomputable at all 16:00:53 it isn't even infinite if someset isn't infinite 16:01:01 I know 16:01:02 take someset := {1,2,3} 16:01:11 then we get eq = {(1,1), (2,2), (3,3)} 16:01:14 oh, I thought someset included all sets, somehow 16:01:25 yeah that's inconsistent :) 16:01:36 alise: um of course zfc allows { (x,x) | x <- someset } 16:01:46 well yes 16:01:50 but not the combined set for all sets 16:02:02 hmm i wonder if it allows it if you exclude eq from the results 16:02:50 huh? 16:02:52 (x,y) := {{x},{x,y}} 16:02:53 \(x:t).y := { (x,y) | x <- t } 16:02:58 eq := \(S:Set_0). { (x,x) | x <- S} 16:03:01 oerjan: as in 16:03:17 eq := { (x,x) | x <- everything } (except there's no universal set, but) 16:03:32 imagine say forall sets s { (x,x) | x <- s }, except you exclude (eq,eq) from it 16:04:31 no. you cannot have {(x,x) | x is an ordinal} 16:04:40 exactly 16:04:43 but 16:04:55 there is no set of all ordinals 16:05:24 but excluding (eq,eq) won't be enough to exclude those 16:05:30 -!- alise_ has joined. 16:05:37 what did i miss since my last utterance? 16:05:40 but excluding (eq,eq) won't be enough to exclude those 16:05:54 but excluding (eq,eq) won't be enough to exclude those 16:05:56 just one line 16:05:59 yes but 16:06:01 we quantify over sets 16:06:03 and there is no set of all ordinals 16:06:07 so that problem doesn't exist 16:06:35 eq = union-of-forall (x:Set0). { (y,y) | x <- y } 16:06:48 alise: the problem is your eq contains enough members that if it were a set, you could use it to _construct_ the set of all ordinals! 16:07:46 ais523: does "eq = { (x,x) | x <- someset }" make you balk? <-- what do you mean with "<-" here? "element from set"? 16:07:58 AnMaster: it's syntax from a hypothetical lang, I think 16:08:02 well sure 16:08:03 oerjan: ah 16:08:17 oerjan: paramaterising over the set has no problems though, does it? 16:08:18 but I still wonder what it means in this context 16:08:31 obviously if S1 /= S2, then x in S1 /= y in S2 16:08:38 alise_: well no, the diagonal of a set is of course a set 16:08:40 alise_, ^ 16:08:47 so: 16:08:51 eq := \(S:Set_n). { (x,x) | x <- S} 16:08:58 Set_n meaning "work out the damn levels yourself" here ;-) 16:09:08 then eq on two different sets is 16:09:16 given x in S1 and y in S2 16:09:28 -!- alise has quit (Ping timeout: 252 seconds). 16:09:32 (S1 eq S2) & (x eq(S1) y) 16:09:36 *shrug* I guess you aren't going to answer it 16:09:41 AnMaster: huh what 16:09:49 well if you account for subsets then 16:09:50 alise_, " ais523: does "eq = { (x,x) | x <- someset }" make you balk? <-- what do you mean with "<-" here? "element from set"?" 16:09:54 alise_, that 16:09:55 (S1 subset-of S2) & (x eq(S2) y) 16:10:04 AnMaster: set builder notation, look it up 16:10:09 alise_, also (x,x) means what here? tuple construction? 16:10:19 (x,y) is {{x},{x,y}}. 16:10:35 alise_, I have not seen <- in set builder notation 16:10:41 wait then (x,x) is not okay 16:10:44 AnMaster: well it means in 16:10:45 so there :P 16:10:50 (x,x) = {{x},{x,x}} 16:10:55 alise_, why not the e-ish shape for that? 16:11:11 and {x,x} is, well, {x} 16:11:11 or more specifically i'm too lazy 16:11:11 AnMaster: windows loathes unicode input 16:11:21 well, I guess (x,x) = {{x},{x}} is fine actually 16:11:27 except wait 16:11:32 not really 16:11:38 since you can't use the usual definition of second element 16:11:48 AnMaster: it looks like a strange hybrid between set building (with element) and list/monad comprehensions from haskell. of course for the Set monad, <- means the same as element of in set building. 16:12:03 alise_, yeah I had only seen the ∈ notation for it 16:12:07 thus the confusion 16:12:27 oerjan: yeah i'm just using more convenient syntax to type out 16:12:30 <- reminded me of list comprehensions though 16:12:44 hey i can define Ethingy as a relation itself :) 16:12:52 wait, no 16:12:58 oerjan, yeah erlang has <- in list/binary comprehensions too 16:13:05 that results in "x in y" meaning "(x,y) in 'in'" 16:13:18 alise_, yearghs 16:14:03 alise_, I think you need to have some operators that you can not define in terms of other ones 16:14:10 you don't say 16:14:10 that is, they are not syntax sugar 16:14:23 they're called axioms 16:14:25 alise_, captain obvious at your service! 16:14:41 of course i'd have the definition of the 'in' relation be axiomatic but even that doesn't work :) 16:15:51 alise_, what about defining x in S by using {x} ⊆ S ? 16:16:01 not sure if that is completely valid 16:16:06 then i don't need to define the in relation :P 16:16:07 also, it is 16:16:13 well no 16:16:19 because you used strict subset 16:16:21 instead of subset 16:16:22 bad boy 16:16:23 alise_, no I didn't? 16:16:32 alise_, there is a line below it here 16:16:33 or do i have that the other way around 16:16:39 i'm so used just to using ascii notation 16:18:49 oerjan: wait oh dear 16:19:00 eq := \(S:Set_n). { (x,x) | x <- S } 16:19:02 is too large too 16:19:04 because it desugars to 16:19:19 -!- augur has joined. 16:19:27 eq := { (S, { (x,x) | x <- S }) | S <- Set_n } 16:19:30 oerjan: right? 16:19:59 *facepalm* 16:20:21 oerjan: i feel small :P 16:20:51 it's a _subset_ of Set, but not an element, afaict 16:21:23 your contradiction only appears if you think all subsets of Set should be elements 16:21:47 i'm so used just to using ascii notation <-- I don't know what the ascii notation is for that 16:22:09 the math notation is a lot easier to read due to being the way I'm used to seeing it 16:22:13 oerjan: well I have the regular hierarchy Set_1 = {Set_0} 16:22:13 Set_2 = {Set_1} 16:22:14 and so on 16:22:26 Set_0 = everything not in the Set_n hierarchy 16:22:33 by Set_n in eq, just imagine another wrapper function with n 16:22:49 alise_: um shouldn't that be Set_1 = {x | x subset Set_0} ? 16:23:02 etc. 16:23:28 well Set_0 elem Set_1 16:23:30 whereby elem i mean is in 16:23:38 eq = { (n, { (S, { (x,x) | x <- S }) | S <- Set(n) }) | n <- Nat (or some other type for the levels) } 16:23:50 still too big 16:23:53 naturally, but Set_1 would contain many other elements 16:23:53 all our eggs in one set 16:24:02 oerjan: such as? 16:24:29 alise_, what do you mean "too big"? 16:24:34 such as _every_ subclass of Set 16:24:40 alise_, and what language is this in? 16:24:55 AnMaster: too big meaning we can derive the set of all ordinals from it 16:25:06 basically i'm trying to define equality as a relation without causing everything to break 16:25:07 ah 16:25:08 and set theory 16:25:15 alise_: take a look at Von Neumann-Bernays-Godel theory 16:25:19 oerjan: where Set is? Set_0? 16:25:44 alise_, why exactly is that bad? Allows some messy paradox? 16:25:52 anyway, it seems to me that since all my notions are defined in terms of sets, "eq", no matter how paramaterised, is still a fucking gigantic set 16:25:56 although... wait 16:26:27 eq has the cardinality of the natural numbers, eq(n) has the cardinality of Set(n), eq(n)(S) has the cardinality of S 16:26:41 so maybe if we avoid letting people combine all these into one, it's safe? oerjan? 16:29:00 alise_: in NBG theory, eq is a perfectly legal _class_. it is not a set. 16:29:08 alise_, btw you might like this comment from a library that is embedded inside libgc: "This would be cleaner in C++ with templates." 16:29:21 oerjan: yeah 16:29:34 but that sort of defeats the entire point of building everything on sets 16:29:34 NBG only has two levels, but i guess that's easy to generalize 16:29:34 (something I disagree with) 16:29:38 AnMaster: saw, in the logs. 16:29:42 and it's probably right 16:29:51 alise_, right 16:29:52 C is almost unusable due to its lack of parameterised types 16:30:07 oerjan: then isn't class just = Set_1? 16:30:18 which is the set of the set of sets 16:30:18 alise_, well, here all it neded was a pointer to a special field. *shrug* 16:30:29 well i guess "the set of" doesn't make much sense since we're not talking types hrtr 16:30:30 *here 16:30:34 alise_: well possibly 16:30:41 but i mean this is the same way you disallow russell's paradox isn't it? 16:30:51 not allowing sets to contain members "higher" than themselves? 16:30:53 well the traditional way 16:31:38 alise_: as long as you distinguish eq(n) as different levels, i think you should be fine 16:31:57 basically all of this is leading to creating a fun lil' set theoretic esolang (Hyper Set Language is, well, not crappy but zzo38 in that it's... completely and utterly inconsistent in every way) 16:32:04 (in the formal sense of inconsistent) 16:32:15 you wouldn't need an extra S parameter though - just use Set(n) ? 16:32:19 of course i will run into problems in that set theory isn't really constructivist, for instance you won't be able to do the reals 16:32:34 oerjan: hmm really? so eq(n) is the equivalences of every set of level n? 16:32:53 so e.g. eq(0) is all we ever care about really 16:33:01 since it's rare that we'll ever want to compare the Set_1, Set_2 and so on bonanza 16:33:08 alise_, isn't equality a relation on sets already? Isn't it in some areas _defined_ as being the reflexive, symetric, antisymetric, and transitive? 16:33:26 s/\?/ relation?/ 16:33:37 no equality isn't a real relation in zfc because it's too big 16:34:02 alise_, well, I don't remember if it was zfc even I was thinking about 16:34:07 or a more naive set theory 16:34:26 alise_: that's my intuition of it 16:34:36 oerjan: nice 16:34:57 of course, slight issue in that to paramaterise on level we need a function Set 16:35:05 Set : (n:Nat) -> Set (n+1) 16:35:14 there is a bit of a circularity here... 16:35:27 alise_, wait, is eq "equals" or "equivalence"? 16:35:30 thankfully though the result type doesn't matter in set theory 16:35:32 if the latter, then ignore what I said 16:35:34 because values aren't tied to sets 16:35:39 AnMaster: equality 16:35:49 oerjan: complicates the axioms, though 16:36:19 hmm Set(n) is "the value of x in the tuple (n,x) that is in Set" 16:36:31 so we have Set := { (0,Set_0), (1,Set_1), ... } 16:36:39 quiz: what set level can we put Set into? 16:36:49 it contains Set_0, it contains Set_1, ... 16:36:54 so, great 16:36:57 Set_omega contains Set :-) 16:37:06 alise_: if you take that too far i think you're going to get an inconsistency eventually 16:37:15 just a hunch though 16:37:41 a very vague one :D 16:37:43 oerjan: yeah isn't this what principa mathematica set up only to be whooped by godel? 16:37:49 alise_, all this strange ASCII notation for perfectly fine symbols confuse me :( 16:38:01 AnMaster: oh shut up 16:38:55 alise_: hm, i don't really know the PM type system, or how far _up_ it goes 16:39:29 up, up and away! 16:39:57 otoh "large cardinals" in my intuition is much about how to simulate this kind of stuff inside zfc 16:40:32 mm 16:41:45 large cardinals are hilarious 16:41:55 dunno why i just love the huge list of them on wikipedia 16:42:27 what exactly is the point of "const volatile"? No it isn't a pointer. 16:43:00 as in, strongly inaccessible cardinals allow you to put models of ZFC inside each other, http://en.wikipedia.org/wiki/Grothendieck_universe 16:43:02 oh wait, nvm, figured it out 16:43:41 imho zfc is pretty shitty 16:45:40 dunno why i just love the huge list of them on wikipedia <-- link? 16:45:43 i am totally underqualified to hold that position though 16:46:26 -!- benuphoenix has joined. 16:46:35 alise_, since: Large cardinal (Redirected from List of large cardinals) 16:46:41 and that contains no such list 16:46:46 I guess it is elsewhere? 16:47:07 see top of article redirected to 16:47:08 http://en.wikipedia.org/wiki/List_of_large_cardinal_properties 16:47:13 ah 16:47:14 -!- benuphoenix has left (?). 16:50:49 I should formulate my own set theory so that it can be laughed at how horrible it is 16:51:07 Good morrow. 16:51:55 pikhq, intentional typo? 16:51:57 !(exists x. x in {}) seems like a reasonable start 16:52:02 no 16:52:06 intentional untypo 16:52:27 which is 16:52:49 -!- tombom__ has joined. 16:53:01 !(exists x. {x} subset-of {}) 16:53:18 then 16:53:23 forall x. x superset-of {} 16:55:30 AnMaster: actually i think in is more fundamental than subset 16:55:42 -!- tombom_ has quit (Ping timeout: 268 seconds). 16:55:54 x subset-of y := forall z, z in y -> z in x 16:56:21 although that requires implication be something other than subset 16:56:25 otherwise we have a circularity 17:00:21 intentional untypo? 17:00:24 err 17:00:27 <-- ? 17:00:28 I meant 17:00:38 AnMaster: actually i think in is more fundamental than subset <-- what is? equals? 17:00:39 well could be 17:01:09 x subset-of y := forall z, z in y -> z in x <-- ... notation please... 17:01:21 I can't read it 17:01:22 :P 17:01:40 yes, you ca 17:01:42 *can 17:04:05 no 17:04:18 -!- alise has joined. 17:04:23 as i said before i was cut off 17:04:31 and being obstructive in your communication will just result in me... not communicating 17:05:30 -!- tombom__ has quit (Ping timeout: 248 seconds). 17:06:00 -!- tombom__ has joined. 17:06:13 alise, was it ∀z(z ∈ y → z ∈ x) 17:06:14 ? 17:06:28 yes. as you well knew 17:06:40 and it turns out, you know english! 17:06:44 alise, but since you defined <- to be "in", shouldn't -> be "in" the other way? 17:07:12 -!- alise__ has joined. 17:07:23 so, at this point is where i just stop bothering to talk as you do not understand ad hoc notation 17:07:31 alise_, there is xemacs for windows. There is M-x set-input-mode TeX 17:07:34 it does wonders 17:07:49 alise__, I find ad hoc notation confusing and hard to read 17:07:53 *shrug* 17:08:02 bbl 17:08:08 -!- alise_ has quit (Ping timeout: 252 seconds). 17:08:26 as does your mother 17:08:58 alise__, that one doesn't even make sense 17:09:48 I mean, "your mother 'finds ad hoc notation confusing and hard to read'" is not even an insult is it? 17:10:21 that's what she said! 17:10:28 oerjan, :P 17:11:04 -!- alise has quit (Ping timeout: 252 seconds). 17:11:48 considering how bad autoconf code is, I wonder what autoconf itself is like 17:11:52 ais523, any idea? 17:12:06 AnMaster: likewise bad 17:12:18 ais523, shouldn't it be even worse logically? 17:12:27 the code generated by autoconf is much better than the code of autoconf itself 17:12:28 considering it can generate such messy configure output 17:12:34 ais523, whoa 17:13:05 I put 17:13:22 ? 17:13:28 he put 17:13:29 *I put quite a lot of effort into learning how autoconf itself works, to use it properly; it seems GNU didn't 17:13:40 sorry, touchpad error deleted most of my message after I'd already written it 17:13:58 ais523, no undo in your client? 17:14:19 AnMaster: doesn't help after you've already pressed return 17:14:22 race condition 17:14:28 I deleted it /as/ I was pressing return 17:14:46 ah 17:17:53 -!- hodyna has left (?). 17:18:02 -!- alise__ has quit (Ping timeout: 252 seconds). 17:20:28 btw that new "swap as compressed pages in ram" thingy seems really interesting 17:20:44 and quite a lot faster than normal swap with a lot of the benefit 17:21:00 experimental staging driver in 2.6.33 it seems 17:27:41 -!- hiato has joined. 17:40:05 -!- MigoMipo has quit (Remote host closed the connection). 17:47:51 -!- alise has joined. 17:50:55 -!- Wareya has quit (Ping timeout: 265 seconds). 17:52:07 -!- jcp has joined. 17:55:34 -!- MigoMipo has joined. 17:58:16 i love this little machine 17:59:07 -!- Quadrescence has quit (Ping timeout: 265 seconds). 18:00:48 alise, dpi? 18:02:49 the screen is not great. it's very TN (colour distortion is pretty much unavoidable). but 1366x768 @ 13" = 120 ppi 18:03:09 13.6" = 115 ppi, so whatever the exact size it's a good ppi 18:03:44 alise, aren't most monitors TN? 18:03:59 yes. but it's very TN i.e. not a very high quality TN 18:04:04 ah 18:04:15 i.e. if you look at it even slightly off the proper place you get dark to light gradient over the whole thing 18:04:28 and if you look at it a bit too much from above than you should it's all white-washed 18:04:31 alise, I think my desktop is TN but rather high quality TN, while my thinkpad is lower quality TN 18:04:42 but from a good angle - and those are the most common angles to look at a laptop from - it's fine 18:04:44 though, the colour doesn't change that quickly for the laptop 18:04:54 this thing is almost certainly worse than a thinkpad display 18:05:04 but consider, thinkpad costs like a thousand and a bit pounds 18:05:13 this costs something like £475 18:05:22 -!- Asztal has joined. 18:05:35 spoiler: it's not very fast, though; single core 1.2ghz and no virtualisation in sight. well at least i think it's single core 18:05:35 alise, I can see line in supposedly "smooth" gradients on my thinkpad (such as in gimp colour picker). Not so on my desktop 18:05:48 beats an Atom any day 18:05:48 I'm not sure if that is due to the monitor or the intel graphics 18:06:39 alise, also thinkpads are great but the greatness was not spent on the speakers at all, and only a little bit of it on the display 18:07:08 -!- oerjan has quit (Quit: Good night). 18:07:30 alise, iirc thinkpad uses some magnesium cage thingy internally though. And the keyboard has drainage holes (you can see them when looking at the laptop from below 18:07:31 ) 18:07:54 (beats me why they end up right below it, shouldn't that mean it could flow to the battery and fry things badly? 18:07:55 ) 18:10:06 -!- alise has quit (Ping timeout: 252 seconds). 18:10:10 -!- kar8nga has quit (Remote host closed the connection). 18:13:38 -!- alise has joined. 18:13:54 alise, see log 18:14:14 also that connection must be annoying 18:14:17 still in a taxi? 18:14:22 seen the logs 18:14:23 also, no 18:14:30 turns out taxis stop sometimes :( 18:14:35 alise, how boring 18:15:03 it's just that this place has no interwebs 18:15:17 also, there goes my plans for a taxi based perpetum mobile :( 18:17:37 -!- Quadrescence has joined. 18:19:22 alise, this is somewhat amusing to read: http://llvm.org/docs/ReleaseNotes.html#whatsnew 18:19:33 (yeah I know they haven't yet filled it in... but still) 18:19:48 ... is really a popular feature it seems 18:21:29 argh oerjan isn't here any more 18:21:38 alise, why argh? 18:22:08 wanted to quiz him about mathqs :P 18:23:28 alise, lucky him who left 18:25:33 hm... FAUST "Functional AUdio STream"... What are the chances of that name NOT being designed to fit the acronym? 18:25:57 alise, ^ 18:26:09 Low. 18:27:08 So I wrote what I wanted in TeXmacs but it can't copy to Unicode. 18:27:31 alise, TeXmacs? Isn't that some weird type setting thingy that isn't compatible with LaTeX? 18:27:48 I tried it and found it irritating to say the least 18:28:14 It isn't weird and it can export to LaTeX. 18:28:24 true 18:28:33 alise, from what I remember it rendered text blurry when editing 18:28:56 probably perfect for you with your no-hinting mania though 18:29:10 (pdfs never turn out that blurry) 18:29:32 Not blurry, and the PDFs look exactly the same depending on your font settings. 18:29:32 (well, I mean, pdf with text in... pdf with a photo of blurry text could of course) 18:29:45 It looks exactly like the .ps files that TeX generates, in fact. 18:29:57 huh 18:30:32 Also, I use slight hinting on linux 18:30:45 What's the LaTeX for the bold, non-italic set names used as variables> 18:30:46 *variables? 18:30:46 okay 18:30:52 Like \forall x \in X 18:30:56 what do you enclose X in? 18:31:02 alise, hm *tries to remember* 18:31:43 \mathbb N? 18:32:09 alise, I couldn't remember, so I checked what lyx did when I clicked the button for it :P 18:32:12 \mathbb is the doublestruck style, if you want that. 18:32:18 \mathbb{N} 18:32:19 No. 18:32:29 If you just want non-italic bold, that'd be mathbf. 18:32:36 Thanks. 18:32:44 fizzie, bold, set -> blackboard bold in my parser 18:32:48 No, that is italic for single-letter names. 18:32:49 not sure how that happened 18:33:37 alise, what fizzie said produces bold here? 18:33:46 well, in lyx preview at least 18:34:26 Sigh. 18:34:58 alise, I don't know what you want then :/ 18:36:20 Anyway whatever. 18:38:45 -!- Sgeo has quit (Ping timeout: 265 seconds). 18:40:14 -!- kar8nga has joined. 18:40:14 Whatever indeed; though I have to note that for me \mathbf{X} (even for single-letter strings) certainly produces non-italic bold; I had to use amsmath's \boldsymbol{} recently to get some homework answers compatible with the homework questions, which used italic-bold style for vectors and matrices. 18:40:49 Well, the $...$ is in italic-formatted stuff. 18:40:58 alise, ? 18:41:10 you use \mathbf{foo} *inside* $$ 18:41:43 works for me 18:41:51 $$ DESU $$ 18:41:58 MissPiggy, $$? 18:42:14 it was between those that it was supposed to be inserted 18:42:17 not between two of them 18:42:43 anyway, isn't display style different? \[ or something ? 18:43:27 $$ is set apart, $ is not 18:44:01 $$ x $$ is not the recommended way of doing displaymath in LaTeX, though. 18:44:05 It's the older TeX-style. 18:44:12 aha 18:44:17 yeah; amsmath has a bunch of better options 18:44:28 well I'm not old enough to having used TeX directly 18:44:30 only LaTeX 18:44:35 No, I mean, just plain LaTeX has better options; $$ is not even officially part of LaTeX. 18:44:38 \[ .. \] is. 18:44:45 fizzie, indeed 18:45:07 oh, I did not know that 18:45:10 no one in their right mind uses just plain TeX 18:45:44 "While the double dollar sign (still) works in LaTeX, it is not part of the "official" LaTeX command set (in fact, most books on LaTeX don't even mention it) and its use is discouraged. Use the bracket pair "\[", "\]" instead." -- though that's from a guide. I think I saw it in a more reputable source too, though. 18:45:47 (with exception of Knuth and those that implement LaTeX, ConTeXt and such) 18:46:05 fizzie, what is the reason for that though? 18:46:09 -!- user2 has joined. 18:46:20 My guess is that it involves equation numbering or such 18:46:53 -!- hiato has quit (Quit: leaving). 18:47:30 Another guide says that $$ can lead to wrong spacing in "some situations". And yet another says that \[ .. \] is preferred because the ending tag is different, which helps in error checking. It will still do close to the same thing. 18:51:19 fizzie, but then why hasn't $ $ been replaced to help error checking as well? 18:51:49 LaTeX does define \( .. \) as a replacement for $ .. $, but I haven't seen anyone seriously advocate the use of that. 18:52:20 -!- user2 has left (?). 18:53:00 * AnMaster is irritated at llvm.org for not providing a list with all sub projects such as clang and klee 18:53:16 the project using llvm list seems to be "non-llvm.org based projects" 18:57:26 They seem to call those things sub-projects, but there's not much of a list to be seen. 18:57:47 fizzie, I said sub project above yeah 18:57:51 Ah. 18:57:57 fizzie, klee and clang are the two I know about 18:57:58 Well, http://llvm.org/docs/ReleaseNotes.html has a sort of a list in the status update section. 18:58:12 fizzie, yes sure, but I want to see the full list, and any that aren't yet there 18:58:26 also looking at the svn ( http://llvm.org/viewvc/llvm-project/ ) doesn't help much 18:58:32 for example, cfe turns out to be clang 18:59:12 ah http://compiler-rt.llvm.org/ exists at least 18:59:26 fizzie, trying to do a zone transfer on llvm.org didn't work very well either ;) 18:59:43 Yes, that rarely works. 19:00:04 fizzie, no idea if it was on my side or their side it was blocked 19:00:40 -!- Wareya has joined. 19:01:02 poolalloc.llvm.org did not exist for example 19:01:03 Their side, probably. I have a feeling that the current BIND example configs (and defaults for other servers) nowadays allow zone transfers only for explicitly listed secondary nameservers. 19:01:19 fizzie, probably 19:01:23 why though? 19:02:30 To avoid leaking any unnecessary information about the structure of their network, is I guess the official explanation. Not that it should hurt in the usual case, but why go advertise around 1quasi-private things like that if it isn't necessary. 19:03:22 1quasi? 19:03:29 quasi 19:03:46 Deewiant, I think that 1 was intentional 19:04:10 I doubt it. 19:04:18 If it was intentional, I don't recall what the intention was. 19:05:47 heh 19:06:05 this poolalloc thing seems very interesting 19:06:30 Oh, there's another stated reason; AXFR replies are several times larger than any other (usual) DNS messages, so DNS-based ways of doing DDoS attacks (like the usual: send a whole lot of small UDP dns requests with the same spoofed source IP) are made worse by allowing those. 19:07:31 http://www.auscert.org.au/render.html?it=80 for example seems to recommend against it. 19:13:54 the project "safecode" seems fairly interesting too 19:19:01 interesting ones found so far: clang, klee, poolalloc, safecode. Poolalloc seems to be an optimisation pass to automatically detect and rewrite code that would benefit from using a memory pool 19:19:41 -!- tombom_ has joined. 19:21:30 -!- alise_ has joined. 19:23:15 -!- tombom__ has quit (Ping timeout: 276 seconds). 19:23:32 -!- alise__ has joined. 19:23:42 I think that, on balance, laptops were definitely designed by someone without a penis. 19:24:54 -!- alise has quit (Ping timeout: 252 seconds). 19:25:15 alise__, oh? 19:25:22 alise__, is it getting fried? 19:25:53 XD No. 19:26:00 -!- alise_ has quit (Ping timeout: 252 seconds). 19:26:00 It's just not the most comfortable position for a computer 19:26:19 alise__, I was about to suggest "or because you find it so comfortable?" 19:26:22 :P 19:26:26 >_< 19:26:30 Oh; I thought this was some sort of attituditional complaint about laptops lacking some metaphorical BALLS. 19:26:45 Is that an invisible laptop on your lap or are you just happy to see me? 19:26:51 fizzie, yeah they have nipples instead (at least thinkpads does XD) 19:27:18 alise__, hey, did I mention that joke someone told me about modern smart phones being so big? 19:27:47 it went: is that a smartphone in your pocket, or are you just happy to see me? 19:28:01 So a manly laptop with a TrackPoint should be referred to as a hermaphrodite? 19:28:25 alise__, I think you can take a sexual joke too far :P 19:28:28 AnMaster has a laptop from a range that used to be manly and sturdy but is now merely Asian. I hereby refer to it as a ladyboy. 19:28:38 alise__, haha 19:28:53 LadyPad: The laptop that doubles up as a... I'm stopping this right here. 19:28:56 alise__, you know, when I called lenovo support I ended up at IBM 19:28:58 last week 19:29:27 (a small crack in the plastic that makes up the palm rest, went on warranty, user replaceable part) 19:29:39 err wait, it was this week even 19:29:45 still isn't past midnight 19:29:57 should be delivered tomorrow or the day after that I guess 19:38:19 -!- Sgeo has joined. 19:53:08 -!- alise__ has quit (Ping timeout: 252 seconds). 19:54:04 -!- coppro has quit (Quit: I am leaving. You are about to explode.). 20:15:37 -!- Ilari has quit (Ping timeout: 260 seconds). 20:17:51 fizzie, safecode proved useful too 20:17:59 found a wtf in cfunge using it 20:18:14 unlikely to actually cause any harm in practise, but very wrong stiff 20:18:15 -!- Ilari has joined. 20:18:16 still* 20:18:22 * uorygl ponders whether "A is evidence for B" is equivalent to "~A is evidence for ~B" 20:18:26 * AnMaster corrects the order of those free() calls 20:18:30 Defining "A is evidence for B" as P(B|A) > P(B). 20:19:01 wait no 20:19:04 that isn't the issue... 20:20:52 That's perhaps better expressed as P(A and B) > P(A)*P(B). Take the complement, and you get 1 - P(~A or ~B) > (1 - P(~A))(1 - P(~B)). Expand, and you have 1 - P(~A or ~B) > 1 - P(~A) - P(~B) + P(~A)P(~B)... 20:21:18 AnMaster: What'd it find? 20:22:15 Expand some more, and you have 1 - P(A and B) - P(A and ~B) - P(~A and B) > 1 - P(~A and ~B)P(~A and B) - P(~A and ~B)P(A and ~B) + P(~A)P(~B)... 20:22:27 To quote a friend of mine, ow ow ow ow! 20:24:43 Er, I did that wrong. 20:25:11 Expand some more, and you have 1 - P(A and B) - P(A and ~B) - P(~A and B) > 1 - P(~A and ~B) - P(~A and B) - P(~A and ~B) - P(A and ~B) + P(~A)P(~B). Which is much better, as we can now eliminate stuff. 20:25:19 Deewiant, I'm not sure... 20:25:25 Deewiant, looking closer at it it makes no sense 20:25:32 Deewiant, I suspect broken debug info 20:26:01 Deewiant, or something. I added a printf debug thingy before that point, it stopped at same point but the printf message was never output 20:28:35 -!- alise has joined. 20:29:32 -!- ais523 has quit (Remote host closed the connection). 20:30:49 So, -P(A and B) > -2P(~A and ~B) + P(~A)P(~B). Rearrange some: 2P(~A and ~B) > P(A and B) + P(~A)P(~B). 20:32:00 Let a = P(B|A), b = P(B|~A), c = P(A), d = P(B). Now ac + b(1-c) = d. A being evidence for B means that a > d. OTOH, if ~A is not evidence for ~B, 1 - P(B|~A) <= 1 - P(B) => b >= d. Thus, ac + b(1-c) = d > dc + d(1-c) = d. Impossible. 20:32:29 -!- alise_ has joined. 20:33:06 -!- alise has quit (Ping timeout: 252 seconds). 20:33:11 * alise_ ponders the implementation of ⊥-elim : ⊥ → ∀a·a 20:33:52 Orthodoxy defines it as an empty case-analysis of its argument, giving ⊥-elim x := case x {} 20:34:11 But this does not gel if you most commonly do case analysis via pattern matching. 20:34:43 This translates to foo p = q; foo q = e' 20:34:44 So consider foo x := case x {p -> e; q -> e'} 20:34:59 So, for each case, emit the function with the pattern and result in the appropriate place. 20:35:14 This would suggest that the implementation is in fact the null string, and just the type signature should suffice. 20:35:16 But then what of type inferrence? 20:35:23 okay this does indeed make no sense.. 20:35:28 Define this. 20:36:04 alise_, the "bug" the experimental llvm tool sc detected 20:36:16 k 20:36:20 because switching order of two statements make the second error out. And they should not affect each other 20:36:38 freeing two different fields in a struct 20:36:46 (both are pointers) 20:36:49 Agda implements it as "⊥-elim ()". 20:37:04 I assume () is just an empty nesting there, but doing /any/ case analysis on the empty type should be verboten. 20:37:26 Having no right-hand side, meanwhile, basically makes it mandatory that the compiler c 20:37:30 *handles this special case. 20:38:13 Perhaps the empty case analysis is still the best. 20:38:35 Complete: 20:38:45 data ⊥ : Type 20:39:01 * AnMaster tries again with llvm-gcc instead of clang to generate the llvm .bc files 20:39:25 fun that crashes in *yet* another place 20:39:58 -!- alise has joined. 20:40:16 and something likes to strip the debug info down to bare minimum 20:40:24 Fuck this 20:40:33 data ⊥ : Type 20:40:48 alise, 3G stick? 20:41:31 -!- alise__ has joined. 20:41:47 okay, now it reliably crashes in the same place (using llvm-gcc) irrespective of the order of the calls there 20:41:54 \zxdcfghjk 20:42:01 alise__, 3G stick? 20:42:11 data ⊥ : Type 20:42:13 ⊥-elim : ⊥ → ∀a·a 20:42:15 ⊥-elim false := case false {} 20:42:22 hd 20:42:24 yesssssssssss 20:42:26 irejg 20:42:30 i sent it all before disconnecting 20:42:55 oh I think it dislikes me freeing the null pointer 20:42:57 perhaps 20:43:00 -!- alise_ has quit (Ping timeout: 252 seconds). 20:43:02 which should be valid 20:43:14 it's unreliable 20:43:26 alise__, what? free(NULL)? 20:43:41 yes. many systems behave badly 20:43:55 alise__, even C89 says that should be valid 20:44:09 so you don't need to check if everything was allocated in the structure you are freeing up 20:44:21 by having (free NULL ≡ ⊥) 20:44:26 alise__, ..? 20:44:29 AnMaster: tough 20:44:31 it's still unreliable 20:44:33 anyway 20:44:35 then you could do 20:44:40 alise__, examples of systems it fails on? 20:44:44 ⊥-elim (free NULL) 20:44:45 sure I can add an if() 20:44:50 and derive ANYTHING! 20:44:50 -!- alise has quit (Ping timeout: 252 seconds). 20:44:58 AnMaster: mostly old ones, I am not your personal memory bank 20:45:02 but I know it's true 20:45:19 alise__, I doubt llvm targets them though 20:45:32 it's still trying to help you avoid bugs 20:45:34 stop whinging 20:45:42 hm 20:45:44 -!- dougx has joined. 20:46:04 alise__, I take advantage of free(NULL) in cfunge. If so it should be possible to turn that warning off. :/ 20:46:40 It's a bug-finding tool. 20:46:43 It's supposed to annoy you. 20:47:00 alise__, actually sc is supposed to add run time checks to production code for actual bugs 20:47:14 so it detects (with low overhead) out of array bounds access and such 20:47:15 in C code 20:47:41 K 20:47:47 alise__, also it gives error for my call to putchar() 20:47:53 well according to the line number at least 20:48:23 perhaps due to using a VLA in that function. I don't know 20:48:26 As a slightly related thing, ANSI C allows realloc(NULL, x) as equivalent to malloc(x), but at least according to comp.lang.c FAQ "several earlier implementations do not support it, so it may not be fully portable"; they don't list problematic implementations, though. 20:48:42 free(NULL) might be more common than realloc(NULL, x), though.. 20:48:45 fizzie, heh, another thing I made use of somewhere 20:48:56 to just need one code path instead of two 20:50:31 realloc(NULL, x) isn't uncommon at all. 20:51:11 Maybe not, since it's reasonably convenient. 20:51:25 However, it's OK for the same reason as free(NULL), for data structures with e.g. a length and pointer field, where the length is zero if the pointer is NULL. Ignore the length's value, expand, realloc, you're OK. 20:52:17 Gregor, yeah pretty much how I used it iirc 20:52:35 For that sort of thing having a fixed "prevsize*2" rule for the expanding is not a very good idea, though. :p 20:53:13 True :P 20:53:58 also it reports alignment error on calling a function pointer 20:54:00 either that 20:54:19 or on assigning the return value to a bool 20:55:07 * AnMaster wonders whatever is on 0x419d70 20:55:20 well the debug info is mostly stripped somewhere (I don't know where, irritating anyway) 20:55:25 so I can't figure it out really 20:59:05 hm... seems to be the function pointer itself 20:59:09 and I suspect it is wrong here 21:00:59 -!- Guest21507 has joined. 21:01:13 -!- Guest21507 has quit (Client Quit). 21:10:09 alise__, also it seems to dislike calling free() on something you got from strdup() 21:10:28 which the man page explicitly says should be freed using free() 21:10:57 lolwtf 21:11:23 Gregor, well, it is an svn version, and there is no stable version yet 21:11:27 so I'm not *too* surprised 21:11:41 Gregor, you know how it is with llvm projects I assume 21:11:41 ? 21:11:54 Not much of a clue. 21:11:58 -!- alise__ has quit (Ping timeout: 252 seconds). 21:12:07 you are *bound* to get at least two assertion errors on anything non-trivial 21:12:16 that requires some tracking down to figure out what the heck is going on 21:12:44 (in this case I have to force llvm itself to not optimise things into vector stuff using SSE for example) 21:13:18 and they love to use assert(0 && "foo is not implemented yet"); for erroring out 21:14:00 Gregor, clang is now past this phase 21:14:12 and the clang static analyser seems to only crash sometimes nowdays 21:14:19 Sweet 21:14:56 Gregor, it is pretty easy to crash llvm tools in general though. Heck it is easy to make llvm unable to compile itself if even 21:14:59 or used to be at least 21:15:04 -!- dougx has left (?). 21:15:19 was easy in 2.6. 2.7 is to be released on April or May iirc 21:15:37 In a month; the code freeze is in some hours 21:16:05 Deewiant, and the major new hot feature in almost all categories is "..." I see: http://llvm.org/docs/ReleaseNotes.html#whatsnew 21:16:13 ... is the new black or something 21:16:23 Rather, the release notes haven't yet been written 21:16:34 Deewiant, I know, but I prefer my interpretation 21:16:48 Whatever makes you happy 21:17:10 Deewiant, for a start, mine is funnier 21:34:23 -!- adu has joined. 21:38:37 why do people keep asking me to debug PHP scripts 21:40:16 Wareya, no idea. Do you know PHP at all? 21:40:34 barely 21:40:44 well, no idea then 21:41:11 Wareya, but while you are at it, please go formally prove the entire mediawiki codebase will you? ;P 21:41:55 night → 21:42:20 night 21:48:34 -!- alise has joined. 21:48:37 hi 21:48:39 I realised something [obvious] 21:48:43 okay 21:49:17 You don't need special syntax for forall and the like. 21:49:19 e.g. 21:49:21 ∀ : Type → (Type → Type) → Type 21:49:38 then 21:49:40 id : ∀Type (λa. a → a) 21:50:02 Hmm, actually, since forall is implicit arguments I guess it's actually 21:50:47 ∀ : ∀Type (λa. (a → Type) → Type) 21:50:48 Which is, alas, circular. 21:51:04 Also you need to handle the type levels and whatnot 21:51:27 -!- alise_ has joined. 21:52:01 What did I last say? 21:52:38 alise, http://wiki.portal.chalmers.se/agda/pmwiki.php?n=Libraries.RulesForTheStandardSetFormers 21:52:45 scroll to the very bottom, 21:52:46 see: π : (a : U) -> (T a -> U) -> U 21:52:50 T (π a b) = Π (T a) (\x -> T (b x)) 21:53:05 this is an example of an inductive-recursive definition (like I was talking about earlier) 21:54:07 you mean how implementing the obvious type for induction in a dep-type lang gives you recursion? 21:54:07 or is this a separate thing 21:54:40 umm 21:55:17 seems pretty similar from those two lines at least 21:55:36 -!- alise has quit (Ping timeout: 252 seconds). 21:55:55 Hey, actually, I can define forall nonrecursively. 21:56:15 -!- adu has quit (Quit: adu). 21:56:48 ∀-Type : (Type → Type) → Type 21:56:49 ∀ : ∀-Type (λa. (a → Type) → Type) 21:56:59 Of course, the two are still axioms. 22:02:30 http://pastie.org/858677.txt?key=x2vpvu1ou7e3uyjcbd8ybg 22:02:44 (Note: T is merely an unfortunate name, not \top) 22:03:05 * alise_ replaces it with X locally 22:03:50 Actually, \gamma, since it looks like "y" and "y" evokes "mi" evokes "me". 22:10:57 Hmm, my \mu-elim fails to actually let you go through the recursive structure. I should fix that. 22:11:16 (greet "alise") 22:11:39 map : ∀Type (λa. ∀Type (λb. (a → b) → RecList a → RecList b)) 22:11:39 map f := μ-elim (∨-elim (λ_. unit) (∨-elim (λx xs. cons (f x) (map f xs)) (λxs ys. consRec (map f xs) (map f ys)))) 22:11:50 is certainly theoretic, but it's still packed with explicit recursion. 22:11:53 As pretty as it is. 22:15:14 MissPiggy: hmm, with a proper recursion combinator I could easily have my core language be point-free couldn't I? 22:20:08 alise_: Yes, with a fixed-point combinator, point-free-ness is feasible. 22:20:50 pikhq: *structural recursion combinator 22:20:54 fix : (a -> a) -> a is unsound. 22:21:10 consider: 22:21:24 id-specialised : _|_ -> _|_ 22:21:27 fix id-specialised : _|_ 22:21:38 _|_-elim (fix id-specialised) : a 22:21:49 Yay, now we can derive anything. 22:23:24 alise_: Okay, fine. You want Mu, not y. 22:25:49 -!- kar8nga has quit (Remote host closed the connection). 22:26:41 y is even more unsound than the named definition of fix, which is a stunning anti-achievement :P 22:27:08 y is indeed quite unsound. It doesn't work with types. 22:27:41 you can type it in some systems 22:27:41 specifically designed for it 22:27:55 Mmm. 22:27:58 The problem is that structural recursion requires mu (p |) and that bothers me 22:28:08 I already have |-elim, it'd be nice to have an independent mu-elim 22:28:13 but I can't think of a type for it at all 22:28:29 mu-elim : ... -> mu a -> ? 22:28:43 we know that a : * -> * 22:28:54 so we could exploit that somehow to replace the recursive bits with something of our own design 22:28:57 like (), say 22:29:37 for instance that gives for nats () | () 22:29:50 so we can distinguish it in the function given by left/right 22:29:55 but then what of the return value? 22:30:17 we need to somehow "reduce" it 22:30:18 so that we can further eliminate it 22:30:31 so what do we need for structural recursion: a base case, and a step case 22:30:42 but how do we distinguish the two if all we have is mu a where a : * -> *? 22:31:03 alise did you raed it? 22:31:18 * Sgeo should check his KI-mail 22:31:42 MissPiggy: i'm doing so 22:31:58 was just wondering because if you didn't I can try not to link anything to you 22:32:05 which would save me time obviously 22:32:25 you're so happy-go-lucky 22:33:14 MissPiggy: i don't get what you're trying to express with your quotes 22:33:20 that pi is structural recursion there? 22:33:38 every function is defined by structural recursion 22:33:42 pi is syntax for forall 22:33:59 kinda like 22:33:59 21:48 < alise> ∀ : Type → (Type → Type) → Type 22:34:17 ah. right 22:34:56 MissPiggy: is it possible to define mu-elim without having it be (mu (a |)) or similar 22:34:59 instead just being mu a? 22:35:17 mu-elim : (a something -> ?) -> ... -> mu a -> ? 22:36:47 alise, in Coq I can define: 22:36:49 Inductive Mu : Set := roll : list Mu -> Mu. 22:37:01 or 22:37:01 Inductive Mu : Set := roll : (Mu * nat) -> Mu. 22:37:16 or even 22:37:16 Inductive Mu : Set := roll : (nat -> list Mu) -> Mu. 22:37:25 lots of different ones 22:37:32 but I can't defined 22:37:33 Inductive Mu (F : Set -> Set) : Set := roll : F (Mu F) -> Mu F. 22:37:45 that is not valid _unless F is known to be a strictly positive functor_ 22:38:04 supposing F were a SPF, what would the induction scheme for Mu F be? 22:38:16 oh you do it with functors? 22:38:24 MissPiggy: by that question do you mean "implement Mu"? 22:38:36 no 22:38:48 then what 22:38:59 you don't know how to calcuate induction schemes from data defintions yet 22:39:01 ? 22:39:10 I was just attempting to clarify the question. 22:39:34 I certainly know how to derive maybe from Maybe and the like if that's what you're referring to. 22:39:39 yes 22:39:42 Oh, I see, Mu there is a type 22:39:48 except more dependent 22:39:48 I don't know Coq syntax, I thought it was a function type 22:39:56 oh you should learn Coq 22:40:04 Yes, I believe so too. 22:40:10 it will compute a lot of things for you which would take ages otherwise 22:40:20 In my system I was going to have mu be axiomatic to solve this, like the Epigram people. 22:40:28 (the definition problem) 22:40:32 Anyway, the induction scheme. 22:41:01 (I denote, I think from Agda, the inducterifier for T with T-elim,) 22:41:34 Let me try and do this bit by bit. 22:41:41 Mu-elim : ... -> Mu F -> something that doesn't involve mu 22:42:11 (Admittedly I have not actually researched the mechanical ways to do things like this because Surely The Computer Can Work It Out For Me, so this will be slapdash and stupid.) 22:42:57 Well, we have (a->b)->f a->f b 22:43:01 which works out to 22:43:16 (mu f -> b)->f (mu f)->f b 22:43:20 N := O : N | S : N -> N 22:43:25 MissPiggy: i'm aware 22:43:31 k I'll just not bother 22:44:10 So if we can transform the "guts" of some mu to something else, we can eliminate the mu. 22:44:39 But the guts are also recursive. 22:44:55 (mu (f (mu f)) -> b) -> f (mu (f (mu f))) -> f b 22:45:23 MissPiggy: I should learn the mechanical method for this. But my hunch is that we will be transforming the Fs into another type, and keeping the recursive structure. 22:45:47 With some opportunity for a base case. 22:45:57 Presumably along the lines of the elimination given by fmap above. 22:48:52 MissPiggy: Your silence is bothersome. 22:49:32 ((forall x. a x -> b x) -> mu a -> mu b) 22:49:43 is presumably doable but leaves no opportunity for a base case 22:49:57 dealing with a situation 22:50:00 hmm... i think 22:54:57 cool 22:56:28 -!- tombom_ has quit (Quit: Leaving). 23:01:50 we 23:04:20 * Sgeo visits a possibly malicious site from a school computer 23:04:45 -!- sshc has quit (Ping timeout: 240 seconds). 23:04:59 -!- MigoMipo has quit (Remote host closed the connection). 23:05:05 -!- sshc has joined. 23:05:40 Beh, nothing useful 23:17:00 -!- adam_d has quit (Quit: Leaving). 23:20:29 MissPiggy: it'd be cool if you just told me the induction schema :D 23:24:33 apparently epigram has one single elimination operator that works on every single type 23:24:39 which is fantastic if it really works 23:26:50 alise_ has me on ignore? 23:26:59 Well, probably not 23:26:59 no 23:32:09 I think I gave up on 23:32:10 22:42 < MissPiggy> N := O : N | S : N -> N 23:32:10 22:43 < alise_> MissPiggy: i'm aware 23:36:07 i did not know that more was forthcoming 23:36:13 if you don't want to answer fine 23:36:52 I was going to say what the induction principle for N was 23:39:46 * Sgeo goes to visit his Relto 23:40:40 MissPiggy: I did not realise this at the time. Please, go on. 23:41:23 you know this one already, P(O) -> (forall n, P(n) -> P(S n)) -> forall n, P(n) 23:41:38 and for B := T | F we have P(T) -> P(F) -> forall b, P(b) 23:42:52 yeah 23:42:55 it gets more interesting with ordinal-induction, where you have something like O := Z : O | S : O -> O | L : (N -> O) -> I 23:42:59 oops 23:43:05 O := Z : O | S : O -> O | L : (N -> O) -> O 23:43:08 -> O prs'mbly 23:43:48 P(Z) -> (forall o, P(o) -> P(S o)) -> (forall l, (forall n, P(f n)) -> P(l f)) 23:43:50 oopr 23:43:55 P(Z) -> (forall o, P(o) -> P(S o)) -> (forall l, (forall n, P(f n)) -> P(l f)) -> forall o, P(o) 23:44:09 wait sec 23:44:13 gimme a second to read that 23:44:28 From whence f in this definition? 23:44:32 You do not quantify over it. 23:44:39 oops 23:44:47 P(Z) -> (forall o, P(o) -> P(S o)) -> (forall f, (forall n, P(f n)) -> P(l f)) -> forall o, P(o) 23:44:53 f : N -> O 23:44:57 From whence l? 23:45:00 grr 23:45:04 P(Z) -> (forall o, P(o) -> P(S o)) -> (forall f, (forall n, P(f n)) -> P(L f)) -> forall o, P(o) 23:45:09 this is correct now 23:45:17 now lemme read it :P 23:45:58 so the last one is "show that for all f : * -> * and all n : Nat, P (f n) implies P (L f)." 23:46:07 f : N -> O 23:46:10 so if it's true for any type-function, so to speak, it's true for L f 23:46:14 L that function, that is 23:46:19 MissPiggy: right 23:46:27 how do we use this? 23:46:46 if f is a family of nat indexed ordinals, then L f is an ordinal 23:47:03 yeah 23:47:07 so if you can prove P for every (f n), then P (L f) holds -- principle of transfinite induction from set theory 23:47:18 gotcha 23:47:27 it's just nested induction basically 23:47:32 yes 23:47:35 !! exacty!! 23:47:37 so, wait 23:47:45 we have P (_ : N -> O) and yet P (_ : O) 23:47:52 no wait 23:47:52 no 23:47:53 it's f n 23:47:54 right 23:47:54 gotcha 23:47:55 sweet 23:47:55 P : O -> * 23:48:00 okay, so, next thing 23:48:23 now it gets more difficult 23:48:50 what if we defined a strange type of trees like this 23:49:00 T := L : T | B : list T -> T 23:49:34 hmm 23:49:45 presumably we have to nest list induction 23:49:46 lets jsut remember that list T is equivalent to Sigma n, Fin n -> T 23:50:01 so we could write 23:50:21 T' := L' : T' | B' : (n : N) -> (Fin n -> T) -> T 23:50:33 I am unfamiliar with your definitions of Sigma/Fin in this particular case. 23:51:06 If you give me the definitions directly we can swiftly move on. 23:51:20 : Sigma n, P(n) it's a dependent pair 23:51:46 Fin 0 = False, Fin 1 = (), Fin 2 = Bool, Fin 3 = {yes,no,maybe}, Fin 4 = {north, south, east, west}, .. 23:52:00 so Fin n is what set theorists would term n 23:52:06 and, uh, what? 23:52:21 sigma as in dependent quantification? 23:52:23 "Sigma" is like exists, except that it's data rather than proofs 23:52:31 right but you have to specify a type... 23:52:48 Fin : N -> * 23:52:55 And is it Sigma a, b the syntax? 23:52:55 like Forall a, b 23:52:58 so n is a natural number in Sigma n, Fin n -> T 23:53:04 well you could write 23:53:09 right, but i still do not get Sigma 23:53:11 Sigma N (\n -> Fin n -> T) 23:53:15 rewrite it with dot notation 23:53:16 ok so it's 23:53:18 if it was defined as 23:53:23 sigma (n:N). Fin n -> T 23:53:38 Sigma (T : *) (P : T -> *) : <_,_> : (t : T) -> P t -> Sigma T P 23:53:41 oops 23:53:44 Sigma (T : *) (P : T -> *) := <_,_> : (t : T) -> P t -> Sigma T P 23:53:45 I am still unsure why we specifically chose this to isomorph list to. 23:54:04 a lists is say, 4::4::3::2::5::5::nil, 23:54:23 so that's equivalent to the function {#0->4,#1->4,#2->3,...} 23:54:31 (using # notation for elements of Fin) 23:54:58 And 0->4,1->4, etc but fair dos. 23:55:00 Why do we need Sigma here? 23:55:06 the reason is because we can compute the induction principle for T, but we DOnt know how to do T yet 23:55:09 oops 23:55:10 the reason is because we can compute the induction principle for T', but we DOnt know how to do T yet 23:55:22 -!- Gracenotes has quit (Remote host closed the connection). 23:55:52 no what i mean is 23:55:55 I get how a list is isomorphic to Fin n -> T 23:55:58 no 23:55:59 oh i see 23:56:02 we're using sigma to quantify 23:56:05 list is isomorphic to Sigma n, Fin n -> T 23:56:18 can you use the notation forall (n:N) in future? Sorry; it's just heavily ingrained in my mind. 23:56:27 because (Sigma n, Fin n -> T) : *, but (forall n, Fin n -> T) : N -> * 23:56:28 My mind parses that Sigma very badly :/ A personal failing. 23:56:39 list T : * whereas Vector T : N -> * 23:56:46 Hmm. I see. 23:56:52 Not in mine. 23:56:55 forall is implicit in mine. 23:56:59 Then {n:N} ->, I suppose. 23:57:19 anyway you can do the induction principle for T' the same way as we did O 23:57:50 Can you repeat T''s definition with {x:T} -> notation? 23:57:53 I think I will understand it then. 23:58:04 T' := L' : T' | B' : (n : N) -> (Fin n -> T') -> T' 23:58:25 *{n : N} -> 23:58:32 But, gotcha. 23:58:32 it's not implicit 23:58:38 Except that only handles infinite lists 23:58:41 what do you mean by {}? 23:58:43 MissPiggy: oh right 23:58:45 no it only handles finite lists 23:58:46 sorry 23:58:49 really? 23:58:50 every natural number is finite 23:58:55 yes, but 23:58:58 Fin 984350934580345 23:59:05 that's still finite :D 23:59:06 doesn't work as a param to a 5-length list 23:59:23 no it isn't you have to be able to access element N for every natural N 23:59:30 which is the very definition of countably infinite... 2010-03-08: 00:00:04 1::2::3::nil is represented as <3, {yes->1;no->2;maybe->3}> 00:00:24 r::q::p::::snil is represented as <4, {north->1;south->2;east->3;west->4}> 00:00:27 oops 00:00:35 r::q::p::s::nil is represented as <4, {north->r;south->q;east->p;west->s}> 00:00:40 aha 00:00:43 gotcha! 00:00:48 ok, so what's the induction for T'? 00:00:58 why don't you write it 00:01:03 ill tell you if you get it right :) 00:01:07 look at O for inspiration 00:02:15 Pr 00:02:27 Ordinarily I'd love to, but - I really should have left many minutes ago. 00:02:49 You could save the dialogue for later, I'd love to participate, and just show me the induction schema for mu now for me to mull over. 00:02:57 Or you could wait for both. Your choice. 00:05:14 there is no way you can possibly understand the scheme for Muu 00:05:29 Likely. 00:05:29 You have to first understand T 00:05:35 But I'm interested in it regardless. 00:05:47 it will be very simple and clear once if you just approach it step by step 00:06:25 Yes, but I /really really/ have to go. Surely, there is no harm in telling me it? 00:06:35 well I don't know how to write it out either 00:06:47 we need to establish some new notation together first 00:07:05 just use any existing language :P 00:07:09 or are they not appropriate? 00:07:31 P(L') -> (forall n, forall f, (forall i, P(f i)) -> P(B' f)) -> forall t', P(t') 00:07:38 that's the scheme for T' I wish you had got it 00:08:03 i probably would have if i tried 00:08:08 but /i/ /have/ /to/ /go/ 00:08:11 please try and understand 00:08:13 bye, anyway 00:08:17 so for T, P(L) -> (forall l, [] P l -> P(B l)) -> forall t, P(t) 00:08:28 [] is a new notation we have invented 00:08:43 [] P (a::b::c::d::nil) = P a /\ P b /\ P c /\ P d 00:09:09 [] is defined for any strictly positive functor 00:09:20 (proof of this is in some paper I can show you later) 00:09:27 this is enough to define induction on Mu 00:11:07 It's the end of days for There. 00:12:17 "DSL/Cable modem: 25 minutes" 00:12:23 for a 47MB download 00:12:44 -!- alise_ has quit (Ping timeout: 252 seconds). 00:17:37 -!- FireFly has quit (Remote host closed the connection). 00:22:37 -!- coppro has joined. 00:32:03 -!- BeholdMyGlory has quit (Remote host closed the connection). 00:48:18 * Sgeo wants to play on FICS against someone he knows 01:01:47 * pikhq has been futzing a tiny bit with TinyGC... 01:01:59 ... It appears to work, and appears to be slow. 01:02:00 Yeah. 01:02:42 Sgeo: what's your rating? 01:03:03 coppro, um, it's been years since I was last on FICS 01:03:05 How do I get that? 01:03:12 Sgeo: oh, ok 01:03:15 then I'll play you 01:03:17 Found it 01:03:29 I just didn't want to play against someone way better than me 01:03:31 Um, rating for Blitz or Standard or Lightning? 01:03:40 coppro, I'm probably not better than you 01:03:40 don't really care 01:03:45 It's been years since I played chess 01:06:23 Sgeo: what time controls do you want? 01:06:32 *shrug* 01:06:55 Regular, I guess 01:07:37 Sgeo: it says you're examining a game 01:07:42 What? 01:07:56 there we go 01:12:14 * Sgeo clearly has no clue what he's doing 01:12:56 I only have a little more than you 01:13:15 I can give you some pointers afterward, if you'd like 01:15:29 Sure 01:17:06 -!- MissPiggy has quit (Quit: Lost terminal). 01:17:18 * Sgeo isn't really thinking anything through that much 01:20:21 You went downhill around move 16 01:30:26 I've lost, haven't I? 01:31:33 :(:(:( 01:32:33 mostly 01:34:21 [In case anyone cares, I just lost] 01:34:26 coppro, what client do you use? 01:34:34 eboard 01:34:45 it's not great, but it's not terrible 01:34:46 * Sgeo is using BabasChess 01:34:54 Used to use Chess Machine and love it 01:37:22 -!- lament has quit (*.net *.split). 01:37:22 -!- HackEgo has quit (*.net *.split). 01:38:45 -!- lament has joined. 01:39:59 -!- HackEgo has joined. 01:42:24 http://i.imgur.com/qlrHy.jpg 01:44:13 bsmntbombdood: OK, I'm putting that on sibeli.us for the moment. 01:46:00 i don't get it 01:47:34 http://sibeli.us/ 01:48:17 who the hell is Jean Sibelius 01:48:31 X_X 01:48:34 God I hate people. 02:08:55 Anyone want to see the game between coppro and I? 02:10:25 ??? 02:10:32 Oh, chess game. 02:10:35 I am so suck at chess. 02:17:45 Gregor, bet you're better than me 02:17:54 I haven't played in YEARS 02:18:00 And when I had, I barely paid attention 02:18:36 I know the mechanics, just no strategy 02:18:52 Sgoe: you were pretty good for the first half 02:18:57 but then your moves just became random 02:19:15 although you missed some opportunities to develop; getting pieces out and involved is key 02:20:34 -!- oerjan has joined. 02:22:46 hm... FAUST "Functional AUdio STream"... What are the chances of that name NOT being designed to fit the acronym? 02:23:12 exceedingly tiny i'd say, since if they didn't know about faust, FAST would have been closer 02:23:42 -!- coppro has quit (Quit: I am leaving. You are about to explode.). 02:24:10 -!- coppro has joined. 02:26:54 -!- gm|lap has joined. 03:02:04 oerjan: Awesome catch :P 03:02:53 So, what person who's totally not me wants to get out the sheet music for Finlandia and record the event sequence for my Generic Music Idol Band Star Game. 03:02:58 With a "?" there 03:07:13 http://ficsgames.com/cgi-bin/show.cgi?ID=243952855;action=show 03:09:39 -!- adu has joined. 03:10:22 -!- Asztal has quit (Ping timeout: 264 seconds). 03:36:18 -!- oerjan has quit (Quit: leaving). 03:38:57 -!- gm|lap has quit (Quit: HydraIRC is a child molester -> http://silverex.net/news <- i couldn't change my quit message). 03:39:09 -!- GreaseMonkey has joined. 03:43:57 GreaseMonkey: Generic Music Idol Band Star Game? 03:43:58 Erm. 03:44:02 Gregor: Generic Music Idol Band Star Game? 03:44:17 Clearly, something *that* generic should have the sequence generated from the sheet music! 03:44:36 Impossible, the recording, being of non-shitty music, doesn't have a constant tempo. 03:44:40 ... And by sheet music, I mean a convenient, easy-to-parse subset! 03:45:25 * pikhq tries to think of non-shitty music with a constant tempo... 03:45:30 * pikhq is having severe difficulty. 03:46:13 Okay, I'm having trouble thinking of *shitty* music with a constant tempo now. :P 03:47:43 4'33". 03:47:46 * pikhq vejnas! 03:50:13 * Gregor plays zee5.ogg 03:50:16 ;P 04:00:51 Oh, I never really answered your question. 04:01:20 Generic Music Idol Band Star Game is a generalization of DDR, Guitar Hero, Rock Band, and all the other identically dull games out there. 04:01:58 Currently it's roughly equivalent to DDR, for the others I would need non-instant events, but that's a trivial addition really. 04:02:19 And of course the horrendous karaoke part that should earn the death sentence to all who play it is excluded. 04:05:21 Hey, DDR started it and was unique... 04:05:31 ... And then came more bemani from Konami... 04:05:31 DDR did not start it. 04:05:34 And it was not unique. 04:05:39 Parappa the Rapper started it. 04:05:54 DDR merely introduced a non-gamepad controller to the equation. 04:05:59 ... And then they started releasing games with just the music changed... 04:06:24 And then Guitar Hero and Rock Band came around. 04:06:43 Well after the genre had been beaten into a bloody, homogenous pulp. 04:07:28 Regardless, DDR didn't start it, they were just the first ones clever enough to get people to pay for an alternate controller that is only useful for one game. 04:07:53 Rock Band did the best in that regards of course, getting people to pay for FOUR alternate controllers that are only useful for one game, and are in fact interchangeable except for layout. 04:07:54 DDR's the home version of an arcade game. 04:08:32 Well fine, they were the first ones clever enough to devise an alternate control mechanism, which they used initially in arcade :P 04:09:06 Anyway, the whole genre is stupid rubbish that has the unfortunate tendency of making people think they have a viable skill when they have none. 04:09:40 But it's also an amusing thing to parody with Finlandia :P 04:09:44 DDR is quite enjoyable. But... Yeah, the whole genre is ridiculously repetitive. 04:09:57 "Oooh, let's make a new game, but with *different songs*!" 04:10:01 Also, http://upload.wikimedia.org/wikipedia/en/4/4f/Inch_converter.jpg is the most horrifying thing I've ever seen. 04:10:16 "Hey, I got something better! Let's change the brand name and *have a different controller*!" 04:11:08 And of course, no useful skill involved. Just a useless one. 04:13:18 I suppose the basic agility encouraged by DDR is arguably a more viable skill than the ability to thumb something that's such a poor approximation of a guitar that it literally has no relevance were you to actually want to learn the guitar. 04:13:32 Actually, hahahah, y'know what really started the genre? 04:13:36 Miracle Piano Teaching System 04:13:51 Also of note: DDR functions as a form of exercise. Everything else... Is about as useful as playing air guitar. 04:14:45 But Miracle Piano Teaching System is, of course, far too difficult for the average GMIBSGer, and besides it actually teaches a skill that borders on useful. 04:15:14 Indeed. 04:15:50 At the least, you're more likely to impress a female with being able to play piano than being able to do Paranoia Survivor Max on challenge. 04:16:04 And that is why all males do anything, right? :P 04:17:05 It's worked out well for me! >_> 04:17:16 Hahah. 04:18:08 The karaoke-thing on Rock Band, tangentially, is damn near impossible if you can sing. 04:18:31 You're not allowed to use vibrato, yes? 04:18:39 Yes. 04:18:41 Or rather, you'll be penalized for it. 04:18:44 Or... Anything else. 04:18:59 And God help you if you're not used to singing the melody. :P 04:19:06 Heh 04:19:20 This is Rock BAND, not Rock CHOIR 04:19:51 Although a choral GMIBSG would be ... impossible for the neanderthals that play that kind of game to figure out *shrugs* 04:19:56 Feh, that was offensive. 04:20:03 Neanderthals aren't so bad, really. 04:20:11 They're our cousins. 04:20:31 Let's say ... australopithecus. 04:20:38 Eh, most people play it as an excuse to be with friends. 04:20:46 Kinda silly to need an excuse, but hey. 04:21:07 I MIGHT have negative opinions about this genre of game :P 04:21:45 I have negative opinions about most of the genre simply because it's been beaten in the ground more than even freaking sports games. 04:22:44 Oh, and the choice of music for them usually *sucks*. 04:23:06 Of course, they need the most constant and dull music possible to make the game possible. 04:23:16 Aside from the fact that if it was good, royalties would be too expensive. 04:23:38 DDR tends to commission music. 04:23:51 And Guitar Hero commissions... Covers. 04:23:59 lol 04:24:02 Very annoyingly poor covers, too. 04:24:14 The whole concept of covers amuses me a lot, btw. 04:24:34 It is kind of amusing, yes. 04:24:36 I want to convince my cellist friend to say he's doing a cover of Shostakovich some time :P 04:25:16 All because of the singer-songwriter thing that started getting common in the 50s... 04:26:12 * pikhq got reminded of that terrible Kansas cover again. 04:26:17 But what's really hilarious is that I'm sure that the majority of singer-songwriters nowadays are not, in fact songwriters, but the actual songwriters are grunts who get no recognition. 04:26:39 Gregor: The majority of *popular* ones, perhaps. 04:26:48 Naturally that's what I'm referring to, yes. 04:26:58 The popular singer-songwriters today aren't even singers. They're boobs with autotuners. 04:26:59 When you get outside the realm of popular musical shovelware, then you start seeing talent. 04:27:25 Heck, just get outside the past couple decades or so and you start seeing talented people that are popular. 04:27:50 So, you're saying that music continues its steady slide into the abyss :P 04:27:51 Freaking autotune. 04:28:11 -!- Oranjer has joined. 04:28:20 Nah, just the stuff that gets shoved down people's throats that I'm not sure how anybody can like. 04:28:30 what what 04:28:39 Awesome timing for Oranjer to waltz in :P 04:29:09 I'm guessing it's...religion? 04:29:26 No. 04:29:32 Not particularly close. 04:29:32 darn 04:29:35 Could be farther though. 04:29:36 I give up 04:29:48 There are logs, y'know :P 04:29:53 hmph 04:29:53 Music. Specifically, manufactured music produced by the RIAA. 04:30:02 oh 04:30:23 Examples include Celine Dion and Nickleback. 04:30:25 (effin' Canada!) 04:30:35 Celine Dion is a national treasure 04:30:50 Boobs with an autotuner. 04:31:04 boobs with an autotuner is a national treasure 04:31:12 I beg to differ. 04:31:13 Y'know, if they built the autotuner right into the breast implants, they could save a lot of trouble. 04:31:22 boobs with an autotuner is national treasure 04:31:32 (alt title) 04:32:10 in soviet russia, blah blah... 04:32:57 http://pubacc.wilcox-tech.com/~greaser/mods/dootman.it if you're lacking somewhat interesting music 04:33:04 You want a national treasure? *Jimi Hendrix* is a national treasure. 04:33:39 I agree 04:42:07 jimi hendrix is dead. 04:42:14 he can't be a national treasure. 04:42:25 augur: WE WORSHIP HIS BONES. 04:42:28 don't you get it, augur? 04:42:34 his bones have gone missing 04:42:36 oic 04:42:43 we have to go on a quest to find them 04:42:46 well, ofcourse his bones have gone missing 04:42:54 he's been resurrected 04:43:45 As a ZOMBIE 04:44:21 National Treasure 3: Zombie Hendrix would be, literally, the best movie conceivable 04:45:08 Why 3? 04:45:11 Ohwait 04:45:19 hahahaha 04:45:21 There were some movies called "National Treasure", weren't there? 04:45:27 yep 04:45:29 Yeah. 04:45:38 Clearly not movies I ever saw :P 04:49:47 They weren't... Notable. 04:52:37 o.O at coppro's record on ficsgames.com 04:52:42 Although it's better than mine 04:53:41 the first info I see on that site is entirely opaque 04:53:47 what is FICS? 04:54:24 hey! alright! 04:54:30 Free Internet Chess Server [ freechess.org ] 04:54:30 does this handle variants? 04:54:51 Some 04:54:53 Yes. 04:54:56 >:( 04:55:01 some does not mean any 04:55:05 Oranjer finds a Chess server, and his first thought is "let's NOT play the game that we've been playing for thousands of years" 04:55:08 which means you can't define your own 04:55:22 well, that's my first thought with anything ever, so yay! 04:55:26 (OK, not thousands ;) ) 04:56:06 Well, there's some ability to define your own starting positions I think 04:56:25 Sgeo: don't look there :P 04:56:28 hmph 04:58:33 It'd be nice if it did shogi... 04:58:55 AND GO 04:58:59 And Poker 04:59:04 And Checkers 04:59:04 isn't there a program out there that lets you play any chess variant? 04:59:11 including chess and go, I think 04:59:15 1,000...something, I think 04:59:57 Gregor: Shogi is a chess-family game. 05:00:29 damn, I finally found the program 05:00:37 but it costs money 05:00:47 http://www.zillions-of-games.com/ 05:00:59 pikhq: I was being intentionally stupid :P 05:01:22 http://www.chessvariants.org/programs.dir/zillions/ 05:01:26 -!- Gracenotes has joined. 05:01:38 Gregor: Mmkay. 05:09:22 * Sgeo should probably do something that will give him nutrition 05:24:03 FICS has a number of popular variants, but nothing like new pieces 05:24:43 I reluctantly admit, after much time using Firefox, that Chrome is a far more reliable browser >_> 05:24:52 The client-server model makes that difficult 05:25:03 yeah, Firefox gets major slops for reliability 05:25:12 Why is it that flash stalls out and shits out Firefox, but in Chrome it doesn't? How does the process separation stop Flash from stalling? 05:26:13 that question seems obvious to me--but I fear that in asking it, you suggest a deeper answer? 05:26:50 Yes, I do :P 05:27:04 oh 05:27:16 Gregor: When Flash stalls in Firefox, Firefox shits itself. 05:27:26 When Flash stalls in Chrome, Chrome kills the process. 05:27:49 I'm not referring to halting or crashing, just momentary stalls. 05:27:56 Ah. 05:28:16 That's just because Firefox's implementation of the NSAPI sucks. 05:28:18 e.g. Hulu plays seamlessly in Chrome, but is gappy and shitty in Firefox. 05:29:32 * pikhq tries installing Chromiumn 05:32:09 Chromeyfox 05:34:11 I love Chrome 05:34:40 I just trust Google's intentions less and less recently ... 05:34:59 shh! don't let them hear you! 05:35:11 Google IRC? well then 05:35:32 You can always download SRWare Iron 05:35:42 >.> 05:35:54 -!- oklokok has quit (Ping timeout: 248 seconds). 05:36:24 there is a popup 05:36:27 I can't trust it boo 05:42:36 Gregor: Chromium is probably in your package manager. 05:42:50 Yes, yes it is. 05:42:56 There. 05:43:04 That would be how I installed it. 05:43:15 Why that's not Chrome. 05:43:19 Has none of the nasty bits. 05:43:26 ??? 05:43:45 I thought Chromium was the devel name 05:44:33 -!- oklokok has joined. 05:44:41 OKLOCOCK 05:48:45 * Sgeo has a chair! 05:54:26 -!- oklokok has quit (Ping timeout: 265 seconds). 06:05:52 -!- oklokok has joined. 06:14:49 Chrome takes ages to compile. 06:20:20 g++ chrome.cc -lages -o chrome 06:25:30 * Gregor looks for a theme for Chrome called something along the lines of "Not being wildly different from the OS for the sole purpose of being wildly different from the OS, with no UI benefit" 06:29:04 Now I'm waiting on the code going into /usr/src/debug. Hooray. 06:29:25 (... So I like the ability to use gdb when something segfaults...) 06:34:53 -!- sebbu2 has quit (Ping timeout: 260 seconds). 06:34:54 -!- sebbu has joined. 06:34:55 hi all 06:35:16 hello 06:40:37 -!- MizardX has quit (Read error: Connection reset by peer). 06:46:32 How does http://www.geocities.com/lifemasteraj/beginner1.html still exist? 06:47:50 What universe do these people come from? http://www.mywot.com/en/scorecard/geocities.com 06:48:04 Sgeo, this is mind boggling 06:48:23 The WOT stuff, or the continued presense of the geocities site> 06:48:24 ? 06:48:37 latter 06:52:17 Good lord, it's so Geocities too X-D 06:53:32 Maybe e's paying for hosting? 07:04:29 -!- tombom has joined. 07:10:14 -!- Oranjer has left (?). 07:48:44 -!- tombom has quit (Quit: Leaving). 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:16:24 -!- GreaseMonkey has quit (Quit: HydraIRC -> http://www.hydrairc.org <- Nobody cares enough to cybersquat it). 08:38:17 -!- cmeme has quit (Ping timeout: 265 seconds). 08:46:13 -!- sebbu has quit (Ping timeout: 258 seconds). 08:47:21 -!- cheater2 has quit (Ping timeout: 248 seconds). 08:48:33 -!- cheater2 has joined. 08:50:28 -!- sebbu has joined. 08:57:50 -!- jcp has quit (Quit: I will do anything (almost) for a new router.). 09:11:25 -!- adu has quit (Quit: adu). 09:50:53 -!- FireFly has joined. 09:52:09 -!- ais523 has joined. 10:17:15 -!- MizardX has joined. 10:41:01 -!- ais523 has quit (Remote host closed the connection). 10:50:25 -!- ais523 has joined. 12:26:30 -!- BeholdMyGlory has joined. 12:30:07 -!- alise has joined. 12:30:10 16:08:17 so for T, P(L) -> (forall l, [] P l -> P(B l)) -> forall t, P(t) 12:30:16 sorry, had already left at that point 12:32:28 I'll play anyone at chess! Extremely badly! 12:35:06 alise: hmm, I used to be OK at chess, but haven't practiced in years 12:35:22 major issue for me would be finding a chessboard that doesn't automatically suggest moves for me 12:35:33 I've been beaten by a non-prodigy twelve year old. 12:35:35 So... yeah. 12:35:54 tell you what, I think my really awful chess AI still runs in DOSBox 12:36:06 ais523: there are billions of clients for FICS 12:36:13 I know 12:36:14 Sgeo and coppro played yesterday, see logs for what clients they used 12:36:37 oh, I just assumed each player would use their own board and you'd send moves over IRC 12:38:10 -!- MigoMipo has joined. 12:38:17 ah; i have no chessboard at all here 12:38:29 chess sux 12:38:30 ugh, it seems that although it runs in DOSbox, it captures both the keyboard and mouse 12:38:42 and, also, I'm so bad it'd take me ages to figure out how to express the moves I make :-) 12:38:44 thus making it impossible to switch windows, or otherwise communicate with people 12:38:45 maybe I could use a program and you could use a real board 12:38:59 alise: I meant, setting something like GNU chess to 2-player mode to use it as a board 12:39:07 heh 12:39:17 or we could just sign up for fics :P 12:39:34 and have my horrible failure recorded for all eternity 12:39:46 hmm, almost works in wineconsole 12:39:54 only issue is that it sizes the screen incorrectly 12:40:10 fixme:int:DOSVM_Int10Handler Load ROM 8x8 Double Dot Patterns - Not Supported 12:40:35 hmm, and that one shouldn't even be hard, you can simply implement it by doubling the vertical height of the screen 12:40:44 (virtual screen, that is) 12:40:46 in fact, i'm sure someone must have made a java applet client for fics 12:40:57 yeah but wine is shit :P 12:41:14 let's get crysis 5 working! who cares about the rest of the api 12:41:29 we want to support the gaymen community :| 12:41:38 meh, running a program and only 2 fixmes, that's not bad 12:41:51 besides, I've run stuff in WINE that I really needed to be able to run in order to get projects done 12:42:13 it works just fine on MPLAB C30, except that it makes MPLAB spout a few warnings when it loads 12:42:17 alise: http://i.imgur.com/pDiHb.jpg 12:45:32 A-anyway. 12:48:47 ais523: fics or manual? I have the fics regpage up here 12:49:05 manual, because playing games over a work connection is hard to explain 12:49:33 but I'm assuming attempting to keep track of everything said on IRC would be a fool's errand 12:50:15 Just make a +m channel for it 12:50:26 you're disrupting one of my essential tactics! (decide what to do instinctively so that every move takes about a second) :-P 12:50:29 Or did you mean the lack of even a local chessboard 12:50:52 ais523: also, the irc bytes sent and the chess bytes sent will be pretty much identical, you know 12:50:59 in fact, the chess bytes may be binary and thus more obscure 12:51:15 alise: the chess bytes will have headers 12:51:28 and won't go through at all if they're on a nonstandard port 12:51:34 you can automatically see where the bytes are sent 12:52:15 * alise googles for chess over irc out of curiosity; maybe there's something that'll automate it for me 12:52:35 If you have irssi there is 12:52:42 Don't know about other clients 12:52:57 (And I haven't tried the irssi one either, I just know about it) 12:53:56 yeah i saw that but i meant a chessboard program that actually sends and recvs the moves itself 12:53:57 ah well 13:00:10 I can play if you want 13:02:27 -!- oerjan has joined. 13:03:20 Deewiant: I can't decide whether you'd be better or worse than ais523 13:03:52 well, I have no idea how good Deewiant is at chess; I'm formerly-decent-but-out-of-practice 13:04:03 maybe in the top 2 or 3 in the school while I was at secondary school 13:04:08 I'm rather surprised how little this stock Windows 7 is annoying me 13:04:11 even IE8 13:04:24 I'm formerly-not-entirely-shit-but-out-of-practice 13:04:28 I mean, sure, it sucks, but.. 13:04:38 Load, you fucking downloa page! 13:04:38 IE8 is so much better than IE6, that's why it feels so good 13:04:39 *download 13:04:42 I want my chess client. 13:04:52 ais523: I know, but I keep forgetting I'm actually using IE as opposed to, say, Firefox 13:05:26 and I actually really like using the taskbar to switch tab 13:05:27 s 13:05:27 without extensions, there aren't many user-visible differences between even IE7 and Firefox 13:05:37 *tabs 13:05:39 also, taskbar to switch tabs would be a nightmare the way I use tabs 13:06:18 but the thing is, I use alt-tab to switch windows mostly 13:06:22 so it's actually quite nice 13:07:10 * alise tries to figure out how to get winboard to do two-player 13:07:34 Our secondary school -equivalent had folks who got silver in some Scandinavian chess championship; at least one of the guys had an ELO near 2000 13:08:21 Probably all the active chess club people there (maybe 10-20 of them?) could beat me without too much trouble 13:08:37 This seems to not do two-player offline. Sigh. 13:08:50 Just use FICS :-P 13:08:57 Winboard works offline 13:08:57 you could probably have written a chess client yourself by now 13:09:11 Deewiant: ais523 refuses to because of work connection 13:09:15 I used to write them for practice when I was younger; I think I wrote one in Excel 13:09:19 also it does, but only one-player-against-engine 13:09:20 -!- Asztal has joined. 13:09:27 alise: Yes, but if you want to play me instead ;-) 13:09:36 alise: And no, there's mode -> edit game 13:09:43 ais523: Last chance before I cruelly cast you aside in favour of a real man 13:09:48 Which is basically equivalent to two-player one-machine 13:09:56 alise: last chance to what? 13:10:01 Except that it doesn't have timing 13:10:02 I don't mind not playing if it's too hard to set up 13:10:16 Deewiant: "edit game", what a ridiculous name for it! 13:10:20 Well, use FICS or I cast you aside for now :P 13:10:30 ais523: Well, it's not really a two-player mode. 13:10:54 Deewiant: do I need to register for fickz? 13:10:55 It's just that: allowing you to edit what move is taken at a given point. Something you'd typically do when viewing an already played game. 13:11:05 alise: I don't know how it works. :-P 13:11:11 That could make future moves impossible, surely? 13:11:14 Deewiant: >_< 13:11:28 Well, surely it deletes the history from that point forward. 13:11:32 If you are not a registered player, enter guest or a unique ID. 13:11:55 "alise" is not a registered name. You may use this name to play unrated games. 13:11:57 Right. 13:11:59 Deewiant: Well, connect. 13:12:08 I am connected, I even registered. 13:12:19 could we have the moves posted in-channel somewhere so I can watch? 13:12:27 maybe not this channel, though 13:12:35 Easy enough 13:12:36 Okay. 13:12:44 #deewiant-alise-champ-2010 13:12:48 heh 13:18:41 -!- alise_ has joined. 13:20:42 -!- alise has quit (Ping timeout: 252 seconds). 13:28:33 -!- oerjan has quit (Quit: leaving). 13:50:02 -!- alise_ has quit (Ping timeout: 252 seconds). 15:01:58 -!- cpressey has joined. 15:41:33 -!- alise has joined. 15:41:55 Name for a Reversi-playing program: Infersi 15:43:52 -!- coppro has quit (Quit: I am leaving. You are about to explode.). 15:44:25 coppro's quit message has been false every time so far 15:44:32 I'm starting to suspect he doesn't actually mean it 15:44:44 either that, or it isn't targeted at me, in which case some context would be helpful 15:45:17 I've exploded several times when he's left 15:45:31 Quite painful 15:47:37 I wonder what the most practical Haskelly thing is for making a GUI 15:47:57 I have no idea, but deep-down I hope it indirectly involves Befunge 15:49:01 Write Befunge code that uses WIND and then system "rcfunge tmp.b98" ? 15:49:43 No 15:49:44 something like that, but with more tight binding on the Haskell 15:49:51 maybe you could go via INTERCAL 15:49:51 Also, that's Windows-only 15:50:04 if INTERCAL doesn't have Haskell bindings yet, it probably should do 15:50:21 mostly to annoy Haskell advocates 15:50:32 alise: What's Windows-only? WIND is only implemented using X 15:50:55 I would prefer something written in pure Befunge that uses ANSI control codes to make a ncurses-y user interface 15:50:55 Or at least, RC/Funge-98 only implements it with X, and I don't know of any other interpreter that implements it at all 15:50:57 Okay. 15:50:57 Oh, really? 15:51:28 RC/Funge-98 is very non-Windows-only 15:51:34 Quite the opposite 15:51:40 it would be funnier if the software only worked using X on Windows 15:52:03 hi 15:52:04 cpressey: yep, and that sort of thing's entirely possible; I just don't think anyone's tried yet 15:52:21 I would prefer something written in pure Befunge that uses ANSI control codes to make a ncurses-y user interface <-- anything wrong with NCRS? 15:52:33 for a start "something written in befunge" tends to be very non-reusable 15:52:45 -!- alise_ has joined. 15:52:59 due to the complete lack of something that works for emulating functions. And even with SUBR it is somewhat messy 15:54:29 Don't forget MACR 15:55:26 -!- alise has quit (Ping timeout: 252 seconds). 15:56:34 hmm, is there any Befunge extension that works Modular SNUSP-style? 15:57:09 Depends on what that style is 15:58:11 basically, it has commands for subroutine call and return 15:58:21 that work like setjmp/longjmp on an explicit stack 15:59:50 I don't think there's anything quite like that, no 16:00:46 it makes subroutining very easy 16:00:53 or ofc you could just use IFFI and do subroutines that way 16:01:57 -!- MissPiggy has joined. 16:02:07 Deewiant, hm... 16:02:20 -!- MissPiggy has changed nick to fax. 16:02:36 ais523, you need to port IFFI to work without depending on ick 16:02:48 At one point I wanted to have "pages" that the IP could travel between (kind of like 2.5 dimensions I guess), but there was a lot of resistance (too machine-y, I guess.) 16:02:49 that would be "rewrite", not "port" 16:02:52 of course, since you replace mainloop that would be painful 16:02:53 but it's a useful project 16:03:06 ais523, also, it must work with t 16:03:10 unlike IFFI currently 16:03:10 the replacing the mainloop is actually not an issue, it's a trivial wrapper 16:03:29 the real issue is that it's tightly hooked to ick's control logic, on the basis that the entire purpose of CFFI is to do that 16:03:43 cpressey, I think I joked about a two letter fingerprint NX. That works like the page permissions on hardware 16:03:52 -!- alise_ has quit (Ping timeout: 252 seconds). 16:03:53 read, write, execute flags 16:04:03 I'm not sure what a write only area would be useful for 16:04:15 logging? 16:04:27 ais523, would be easy to overwrite what you logged though 16:04:27 you could read it in a debugger, but not make a security leak 16:04:39 ais523, I'm not sure that makes sense 16:04:45 since other threads could still read the data 16:04:46 Something more elegant would be some kind of "memory switch" that remembers which direction you turned (i.e. which branch you took), and lets you reverse it / backtrack... that captures the idea of call/return but in a kind of spatial way. 16:05:03 cpressey: MODE has switchmode which is essentially that. 16:05:20 cpressey: sounds worryingly like TRDS 16:05:37 which could also be very usable for subroutine call/return, if it wasn't for the essential complexity of the whole thing 16:05:38 Although of course it doesn't work with multiple threads. 16:06:00 Since it only remembers the latest branch ever, not the latest branch per IP. 16:06:57 huh 16:08:45 Switchmode is close, but it would need to be more elegant, combining in the functionality of w, perhaps. 16:09:34 What to do with a w that passed through? 16:09:38 I.e. compared equal 16:09:48 Otoh, pretty dispatcher structures are one of the things that make Befunge fun, so why try to make it easy? 16:09:57 For the other cases, you can single-usely turn it into [] 16:10:35 Deewiant: You could turn the w into one of three instructions that reverses the decision and then turns itself back to w for the next use. 16:10:54 But what does reversing == mean 16:11:01 Since it distinguishes between < and > ordinarily 16:11:07 You'd have to pick one arbitrarily? 16:11:28 Reversing the path chosen. == chooses the straight line, reversing the straight line still is the straight line. 16:12:01 I suppose so 16:20:09 Speaking of "practicality" in esolangs I always liked the idea of an "esoteric OS adapter" (Easel/PESOIX/PSOX) much better than language-specific facilities like fingerprints. But it seems so much harder to get such a project off the ground. 16:21:20 -!- ais523 has quit (Remote host closed the connection). 16:21:46 I think it's somewhat of an excuse to limit the capabilities of your esolang 16:22:52 I mean, all you need now is putchar and getchar and you're done; language-specific ways of talking to the OS/doing other things like that can be more interesting, IMO. 16:23:30 They can be, true. 16:36:52 -!- oerjan has joined. 16:38:02 07:43:52 --- quit: coppro (Quit: I am leaving. You are about to explode.) 16:38:03 07:44:25 coppro's quit message has been false every time so far 16:38:18 well in the long run, if the Big Rip hypothesis is true... 16:46:17 I mean, PSOX is in no way a replacement for Befunge fingerprints, because those can affect the language, not just the OS. But there are just so many esolangs out there that just can't be reasonably expected to grow their own OS features. (Not that PSOX would necessarily be able to help all of those, either, though) 16:48:01 I think the big barriers to adoption are 1) the spec isn't simple/abstract enough and 2) there is no proof of concept implementation 16:48:12 (Isn't that always the story, though?) 16:49:33 I would like to stand corrected about there not being an implementation 16:50:04 Sgeo does seem to have an implementation of it in Python? 16:50:32 The file I/O stuff needs some work 16:50:46 And the spec for the File I/O stuff is probably iffy 16:55:48 Also, it's untested on Windows 16:56:07 Although was a major spec change just due to projected issues with Windows 16:59:07 -!- kar8nga has joined. 17:00:40 Having it be a pipeline (and only a pipeline) is definitely the right design, I think. 17:01:18 I haven't unravelled the spec sufficiently to know what I think about the details yet... 17:32:31 -!- tombom has joined. 17:35:58 -!- hiato has joined. 17:38:52 -!- hiato has changed nick to sudobus. 17:39:44 -!- sudobus has changed nick to aqualoqua. 17:39:55 -!- aqualoqua has changed nick to sudobus. 17:40:34 -!- sudobus has left (?). 17:45:17 -!- hiato has joined. 17:45:23 -!- hiato has changed nick to sudobus. 18:01:34 -!- alise has joined. 18:02:17 Chromium is the devel name 18:02:22 and all the nasty stuff has options to disab;e 18:02:23 so there 18:03:43 Gregor: You can set chromium to use OS colours 18:03:50 in options 18:04:03 -!- lament has quit (Ping timeout: 240 seconds). 18:04:28 -!- lament has joined. 18:06:14 -!- alise_ has joined. 18:06:19 21:35:32 You can always download SRWare Iron 18:06:23 You could, but you'd be retarded: 18:06:40 http://neugierig.org/software/chromium/notes/2009/12/iron.html 18:08:10 -!- alise has quit (Ping timeout: 252 seconds). 18:08:50 ... He was expecting *money* from that? 18:08:50 Dear God. The money in FLOSS is... Support. 18:09:09 fax: you're a fax machine again? 18:09:23 pikhq: he got it - see all the publicity 18:09:31 I especially like how he removed an entirely innocuous class 18:10:24 alise_: So. Dumb. 18:10:41 If he wanted a real privacy-based browser, he'd do... Something smarter. 18:10:52 Default to incognito, integrate Tor, etc. 18:10:54 Best thing to do is just to turn off all the settings in main Chrome. 18:11:06 Yuh. 18:11:14 They're settings for a reason, after all. 18:11:17 Google Updater automatic installation. 18:11:22 automatic updates = privacy violation 18:11:30 Bug tracking system, sends information about crashes or errors. 18:11:36 bug reporting = privacy violation 18:11:46 DNS pre-fetching. 18:11:49 dun dun DUNNNN 18:11:56 A timestamp of when the browser was installed. 18:12:00 Oh now /that/ is just insidious 18:12:30 I'm just surprised how candid he was about his real goal 18:12:36 ;) 18:12:37 DNS pre-fetching was even *called* insidious? 18:12:40 ;);););) 18:12:46 pikhq: oh the lines that aren't factual are my mocking 18:12:52 the guy clearly has no idea what he's doing 18:13:13 I submit that he knows exactly what he is doing 18:13:17 i read the full log he doesn't understand why people aren't nice to him :-) 18:13:18 He's marketing 18:13:19 cpressey: i mean code-wise 18:13:31 Ah. Well there, he barely needs to 18:13:40 Also: what means rotful? 18:13:53 Only needs an understanding of what will scare sufficiently paranoid people 18:13:59 We haven't had a super-shitty #esoteric meme in ages, and we need one. 18:14:17 rotful 18:14:18 hi 18:14:26 fax: yo 18:14:42 fax: wow, my brain has completely different heuristic clauses for MissPiggy and fax 18:14:59 fax: so I actually read that "hi" completely differently than if you said it before changing your nick back 18:15:13 apparently my brain infers huge gobs of meaning into "hi" purely based on who says it 18:15:19 :) 18:15:46 permanent nick change or not? 18:16:31 alise_: ... Mine too, oddly enough. 18:17:07 hmm... i guess it will take some time for the heuristics to migrate 18:17:19 unless you're going to start acting like fax acted too, in which case you'll be two entirely different people 18:18:38 cpressey: The issue with PSOX was basically that Sgeo didn't know what he was doing, so it was in fact rather heavily Brainfuck-oriented. 18:19:37 (and Linux) 18:19:51 cpressey: Obviously the solution is to have it communicate with /its own/ esolang that just does IO stuff. 18:20:02 PSOX seems mostly alright. There are definitely some things that need clarification, and some that I would want to change. 18:20:10 *disable (typo from way back) 18:20:29 cpressey: Well, it only works with languages that do unrestricted byte-by-byte two-way synchronised binary IO. 18:20:31 Which is ludicrous. 18:20:36 | | | 18:20:36 +-+ * | 18:20:36 | | | * 18:21:22 wat 18:21:26 alise_: But that's common. If your language communicates with smoke signals, anything like PSOX isn't going to be much help anyway. 18:21:43 cpressey: Well, printable ASCII would be a good subset to use... 18:21:48 It looks line-oriented, actually. 18:21:56 It's still heavily binary. 18:22:01 Also, it's abandoned. I forget why. 18:22:18 Printable ASCII I could live with, but I don't know of any langs that are really crippled from binary I/O? 18:22:32 That's more of an OS issue. 18:22:36 Thank you, MS-DOS. 18:22:36 If I were going to spec an IO esolang, I would have it use little particles of data being catapulted off to data sinks (forts), and "enemy" cannons (input sources) shooting out particles. 18:22:46 So you place forts and cannons in the right place to aim, and coordinate their firings. 18:22:55 cpressey: INTERCAL-72 can only do roman numerals 18:22:59 alise_: OS /colors/ are not the issue. OS /style/ is the issue. 18:23:18 so perhaps INTERCAL-72 roman numeral format without over/underlines (so only small numbers) is the lowest common denominator 18:23:26 Gregor: Well, you can get the title bar. And it uses GTK widgets inside the page. 18:23:53 Gregor: If that isn't acceptable, don't use Chrome :P 18:23:56 alise_: It could look for the first two symbols output, consider them '0' and '1' in binary, and build the rest on that. 18:23:58 If it uses GTK widgets, then why even with "use GTK+ theme" (whatever that means) enabled does it look like friggin' Windows >_< 18:24:10 Use GTK+ theme = use its colours 18:24:17 And because you don't have a GTK+ theme set up, presumably. 18:24:20 So it's using Raleigh. 18:24:24 Which looks uber-ugly. 18:24:27 I use XFCE. 18:24:34 So I most certainly have a GTK+ theme set up. 18:24:39 Then it's because you touch yourself at night. 18:24:54 More seriously, it's because it's using your title bar colour for a big bit, I imagine. 18:24:54 I touch myself in broad daylight, thank you very much. 18:24:59 You could try and edit the settings manually. 18:25:05 If the 3rd character output is different from the first two, it could assume you have printable characters available... if it's non-printable, it could assume you have 0-255. 18:25:46 cpressey: you might want it to use the first two _lines_ output 18:25:50 cpressey: I think that for most esolangs, fancy programs are /boring/. 18:26:02 An IRC client in SNUSP. Whoopdedo, 18:26:07 *Whoopdedoo, that's mostly glue. 18:26:18 For those where it can be interesting, it's because of an aspect of the language. 18:26:22 So you want it part of the language. 18:29:44 That's along the lines of what I was thinking when I said PSOX makes stuff less interesting 18:30:45 yeah 18:30:55 * cpressey shrugs 18:30:57 OK 18:31:58 I'm certainly not looking to write a webserver in Hargfak. 18:32:35 I was more thinking of it as a tool to allow esolangs to be more easily passed off as "real". 18:32:46 i.e. 18:32:48 Marketing. 18:33:21 But if it makes things less interesting, n/m 18:34:46 But on that note, I don't see why most Befunge fingerprints are interesting. 18:37:08 They aren't. 18:37:16 In fact, Befunge is relatively uninteresting past its abstract core. 18:37:24 Concurrency adds a large gob of fun. 18:37:36 Time travel and multiverses add more large gobs. 18:37:37 Beyond that, meh. 18:38:22 s/interesting/a popular topic of conversation/, then. 18:38:50 fax: Bad news! 18:38:53 "Let me repeat that. By allowing the judgmental equality to identify these two closed extensionally equal values, we collapse the judgmental equality on terms under a false hypothesis. Bye bye typechecker." 18:38:59 http://www.e-pig.org/epilogue/?p=324 18:39:12 cpressey: Because the hoi polloi suck at identifying the novel. 18:39:29 In fact all the fun in -98 is pretty much the huge sack of implementation woes. 18:39:30 that post is quite confusing, I don't understand why this doesn't mean epigram is broken 18:39:39 fax: it is 18:39:44 they're having to replace W-types with something else 18:39:58 otherwise they're fucked 18:40:27 what confuses me is, whatever they replace W types with: Can't you just implement W with /that/? 18:40:45 obviously they have to replace it with something less powerful/abstract 18:40:54 http://muaddibspace.blogspot.com/2010/03/algebra-system.html you didn't tell me you had a blog :| 18:41:42 alise_: In that case, Befunge-111 should probably not exist. A clear, unambiguous spec would only ruin the fun. 18:41:49 because it's embarassing :P 18:41:59 fax: lawl 18:42:09 cpressey: Well... yeah. Isn't that obvious? 18:42:19 You need to introduce a bag of craziness to make it fun, which is why I've been pushing my idiocy. 18:42:27 No, not to me. 18:42:44 fax: hmm... I agree that ZFC is probably inconsistent, yet I'm having some sort of knee-jerk AARGH NO reaction to its statement 18:42:53 Help? 18:43:05 lol 18:43:49 fax: I think I've read a post on your blog before and it was ridiculously overcomplicated for something 18:44:18 mm? 18:44:19 What's this about ZFC being inconsistent? 18:44:35 -!- MizardX has quit (Read error: Connection reset by peer). 18:44:40 uorygl: it probably is 18:45:23 That would be News. 18:45:23 http://r6.ca/blog/20091101T231201Z.html 18:45:28 well, not probably 18:45:31 -!- MizardX has joined. 18:45:42 but if you belong to general dependent-type constructivist cabal, then yeah probably :P 18:45:54 fax: of course you forgot to add "for the same reasons that Coq is probably inconsistent". 18:45:59 alise: Today I just picked up "Constructive Functional Analysis" 18:46:33 "Can we really believe in the consistency of any system whose ordinal strength we do not have a notation for?" 18:46:35 ... 18:46:49 * fax can't interpret that '...' 18:46:49 ...... 18:46:55 nor that 18:47:06 Probably "That's ridiculous, either p or not p" 18:47:15 (Note: Above sentence is merely mocking the mocking of the classicalists.) 18:48:13 "..." was shorthand for "..." 18:48:14 fax: Ah yes, I think it was your thing on halving numbers 18:48:27 I thought it might be that 18:48:35 cpressey: Inner meaning? 18:48:57 Maybe I'll eventually figure out the words for the thought, but don't expect it soon. 18:50:07 cpressey: Fundamental thought, generalised, is "I agree", "I disagree" or ""? 18:50:42 Honestly, my inclination was to respond with "Please, won't somebody think of the children??!?!" 18:50:48 I don't think whether a person belongs to a general dependent-type constructivist cabal or not has any bearing on whether ZFC is probably inconsistent or not. 18:50:58 fax: you object to insulting wolfram? :| 18:51:05 But I am sensitive to overusing Simpsons quotes. 18:51:13 stop stalking me!! 18:51:17 uorygl: Oh yes it does! 18:51:21 fax: I CAN'T HELP IT 18:52:28 hey gloss is exactly what i need for my othello program i think 18:52:33 can it do mouseclicks, I wonder 18:53:15 I'm reading about finite calculus right now, though 18:53:41 the discrete derivative of f at x is defined as f(x+1)-f(x) 18:53:54 What would it mean for ZFC to be inconsistent? In practical terms, I mean. 18:54:34 It would mean that in ZFC, it's possible to prove anything at all, making all theorems proved in ZFC meaningless. 18:55:04 Exactly. 18:55:31 It's probably easy to modify the axioms to make it consistent if it isn't, but you'd lose tons and tons of results. 18:55:31 I was thinking more like, another refinement would be layered onto it to plug the hole, like ZFC itself was layered onto naive set theory. 18:55:42 alise you know I have a soft spot for people like wolfram 18:55:54 fax: I don't actually. 18:56:00 oh 18:56:19 I do. It's a beanbag chair in a dungeon. 18:56:27 fax: Personally, the way he reacted to ais523's solving of the Wolfram prize gives it a slightly personal edge to me. 18:57:01 "Oh, how wonderful! A kid has proved what I always suspected. This has wide-reaching implications and provides an important bit of evidence for MY unifying theory of everything. When I first wrote about it ..." 18:58:40 did he mistreat ais in some way? 19:00:28 He did him a great intellectual disservice by making only passing mention to his achievement in his post on it, and spending 99% of the large tome talking about how good he was for thinking of it. 19:01:34 Even before I knew that, he rankled me immensely. 19:03:40 Of course. I especially enjoyed the Usenet post where he, as a teenager, belittled someone with far more experience than him because he had a pile of books with which to learn more than him. 19:04:17 Number of references to the body of computability research in "New Kind of Science": ... well, he mentions the name "Turing" a couple of times. In the phrase "Turing machine". 19:04:18 link? 19:04:28 fax: I'll find it; sec. 19:05:00 fax: For now, he's Feynman writing to Wolfram (warning: surrounded with wolframlove by the transcriber) http://elzr.com/posts/wolfram-feynman 19:05:03 *here's 19:07:06 If ZFC was inconsistent, there would be chains of reasoning in it which did not terminate, correct? 19:07:16 cpressey: You are thinking in computational terms. 19:07:23 Inconsistency means that you can prove a falsehood. 19:07:32 This is a contradiction. 19:07:33 alise_: As is my perogative, I thought. 19:07:37 i.e.: p & ~p. 19:07:47 From this, you can prove anything. 19:08:15 You can prove that false is 42, that 43+1 = -99 and -99 is also a horse of size 98 that behaves as a monoidal functor when applied to itself. 19:08:16 If you can prove anything, you can prove the premises, therefore there are chains of reasoning which do not terminate. 19:08:22 See http://xkcd.com/704/ for an example 19:08:43 Deewiant: I liked that xkcd - incredibly rare for me as of late. 19:09:09 xkcdsucks had a really stupid rebuttal saying that a piece of data isn't true or false, it's a piece of data, but obviously you'd just do "Your mom's phone number is 923487958" and prove that 19:09:10 then use that 19:09:18 lol 19:10:08 cpressey: In the dependent-types view, we hvae 19:10:11 *have 19:10:15 Types :: statements 19:10:17 Values :: proofs 19:10:29 If you prove a falsehood, your value doesn't terminate when evaluated. 19:10:38 alise_: The most recent xkcd was REALLY bad. 19:10:41 So, yes, in a way you are right. 19:10:42 I'm not convinced of the converse, though (If there are chains of reasoning which don't terminate in ZFC, then it's inconsistent) 19:10:46 So bad I may remove it from my RSS reader. 19:10:47 But "termination" doesn't make any sense in logic. 19:10:51 I don't read xkcd. 19:10:56 Deewiant: Yeah, that was an enjoyable xkcd. 19:10:59 Infinite chains of reasoning, perhaps, but there is no computation, so there is no termination. 19:11:09 cpressey: I used to. 19:11:14 But it became shitty. 19:11:34 alise_: You have a computational view of "termination", I think. 19:11:34 I read xkcd still because *following* a hit-and-miss comic takes very little time. 19:11:45 cpressey: Right you are. 19:11:50 Once I've started following a comic, it takes a severe facepalm moment for me to stop. 19:11:55 ... Or just severe apathy. 19:11:57 oklokok, hi 19:12:21 pikhq: Yeah, but this latest one was terrible, even for XKCD. 19:12:26 Like, ow, my brain hurts terrible. 19:13:53 cpressey: what do you mean by "chain of reasoning"? 19:14:04 Gregor: True. It did quite suck. 19:14:13 This looks like a non-terminating chain of reasoning to me: 1 = 1; therefore, 2 = 2; therefore, 3 = 3; therefore, 4 = 4; therefore, . . . 19:14:29 -!- alise has joined. 19:14:44 Or just "1 = 1 therefore 1 = 1 therefore ..." 19:14:57 pikhq: did you /see/ the xkcd where the whole joke was "Here are some cartoon female genitals. Here are stick people that cannot possibly possess them. LOL, TGI FRIDAYS" 19:15:23 alise: ... I think I scrubbed it from my memory. 19:15:38 uorygl: AFAICT that's what I mean. 19:15:57 hey I've hated xkcd for years 19:15:59 cpressey: okay, so I just showed you a non-terminating chain of reasoning. So does that mean ZFC is consistent? 19:16:00 -!- alise_ has quit (Ping timeout: 252 seconds). 19:16:02 how come you guys are only just catching up now 19:16:02 cpressey: imo proofs aren't actually part of zfc's truth space 19:16:14 fax: it started sucking around maybe 2007-2008 imo. 19:16:21 You have axioms and rules for deriving theorems from those axioms. 19:16:25 cpressey: as in they're just a tool for us to reason about, and verify things 19:16:35 but they're totally orthogonal to any issue actually related to the set of truths we call zfc 19:16:36 fax: Because it's gone from overrated but amusing to overrated and sucking most of the time. 19:16:42 ah 19:17:19 * sudobus liked it better when the convo was about stuff he knew about, like the cocio-economic effects of a potential utube cencorship, or cats 19:17:41 uorygl: No, that's the converse that I said I wasn't convinced of, isn't it? 19:17:54 "utube" ;_; 19:18:09 fax: (: 19:18:13 sudobus: you do realise this is a progrmaming channel :) 19:18:16 *programming 19:18:22 I'm not convinced of the converse, though (If there are chains of reasoning which don't terminate in ZFC, then it's inconsistent) 19:18:33 cpressey: so now are you convinced that the existence of a non-terminating chain of reasoning doesn't imply that it's inconsistent? 19:18:49 alise: sudobus == hiato 19:18:54 uorygl: Other way 'round. If it's inconsistent, then etc 19:18:59 sudobus: Spelling. Improve it. 19:19:00 ah 19:19:13 pikhq: he's south african he can do what the hell he likes because he's interesting 19:19:17 sudobus: I know what a catbus is, but what's a sudobus? 19:19:20 IRC has just enough people who spell things correctly to make it really depressing when someone comes out with shit like "cong@l8" 19:19:36 pikhq: Srue tihng man 19:19:45 rotful 19:19:46 fax: here's wolfram being a complete idiot http://groups.google.com/group/comp.lang.lisp/msg/f3b93140c2f2e922?dmode=source&output=gplain&pli=1 19:20:06 I think you mean "çocio-economic" and "cençorship". 19:20:20 alise: it's what you get when you take a and rest it perpendicularly on a piece of paper that says "sudo" just right tos that the o's overlap 19:20:24 Most people are complete idiots at least a couple of times in their lives 19:20:34 I think he meant イエユイノボメノ. 19:20:37 uorygl: sorry, my bad 19:20:39 (note -- not actual Japanese) 19:20:40 alise, ah this is KMP -- I have read this 19:20:45 Deewiant: Yes, it takes a very special sort of person to make a career out of it. 19:20:57 fax: kmp? 19:21:00 oh pitman 19:21:35 Indeed 19:22:07 Deewiant: It shows that Wolfram has a huge attitude problem & ego that has lasted til today. 19:22:10 He then said "I'm going to read these and then I'll know as much as you." 19:22:14 hehe 19:22:26 alise: I just realised I left out at least a word from my previous reply. Note: rest a mirror ... just right so that the .. 19:23:35 I actually am going to read these, and then I actually will know as much as you! 19:24:25 I should carry about a stack of books just incase I want to insult someone 19:25:40 including "the compiler book with the dragon on it" 19:25:49 cpressey: AAAH. 19:26:09 Tangentially, I should read the Dragon Book sometime. 19:26:16 why? it's outdated 19:26:23 you would only read if you like history 19:26:30 What's not outdated? 19:26:38 Appels book 19:26:39 ... Outdated books can be enjoyable. 19:27:02 Or at least enlightening. 19:27:26 fax: The latest edition of the dragon book is newer than Appel's 19:27:39 By about 10 years 19:27:40 Oh, and there have been 2 later editions. 19:27:43 Most recent was in 2006. 19:27:56 Of course, most people think of the *first*, but still. 19:28:08 ah that's interesting 19:28:20 they have republished it, I have not seen the new version 19:28:21 The first is out of print :-P 19:28:28 I've heard the recent editions are not much more than reprints of the originals? 19:28:31 Deewiant: Yeah, yeah. 19:28:36 there aren't any compiler books from a functional perspective 19:28:37 hmph 19:28:53 alise: "Modern Compiler Design" explains a bit of how Haskell is compiled 19:28:58 alise: "Modern Compier Design"... yeah 19:29:04 no, I mean 19:29:08 structuring compilers functionally 19:29:12 alise, Calculating Compilers 19:29:12 MCD's coverage is not very good though 19:29:24 (PhD thesis, but it's a good read anyway) 19:29:27 fax: well... foo to you 19:29:30 cpressey: True, unfortunately 19:29:31 alise: The Implementation of Functional Programming Languages, by SPJ? 19:29:36 foo ?? 19:29:56 Part of me wonders why you even need a book on it :/ 19:29:57 alise, http://www.reddit.com/r/squiggol/ 19:30:06 cpressey: Sexy purposes 19:31:12 alise??? 19:31:14 Gah 19:31:20 http://www.uni-koblenz.de/~laemmel/expression/long.pdf cool, material on the expression problem! 19:31:23 Proving compilers correct is useless. 19:31:33 cpressey, hahahahah 19:31:33 Prove the generated code is correct. 19:31:40 cpressey: That's... what you do. 19:32:08 cpressey: ... That's not the only reason to write a compiler functionally... 19:32:14 Or write anything functionally... 19:32:15 A correct compiler will take an incorrect program and produce another incorrect program. 19:32:17 You prove that the canonical semantics of the input (syntax tree) are equivalent to the canonical semantics of the output. 19:32:19 "Proving compilers correct is useless." -- I am not able rightly to apprehend the kind of confusion of ideas that could provoke such a remark. 19:32:25 And... That's... What people do... 19:32:25 -!- sudobus has quit (Quit: leaving). 19:32:43 fax: Some of it is overstatement. But not all of it. 19:32:45 cpressey: Why yes. Yes it will. 19:32:54 Adapted from Babbage - On two occasions I have been asked, 'Pray, Mr. Babbage, if you put into the machine wrong figures, will the right answers come out?' I am not able rightly to apprehend the kind of confusion of ideas that could provoke such a question. 19:33:05 cpressey: And I would expect nothing more of a correct compiler. 19:33:20 Well. I also want correct code to produce correct output. 19:33:43 So, dependently-typed combinator calculus. 19:33:53 ... 19:33:57 Specifically: a language with only combinators that has dependent types and is total (but not powerless). 19:34:01 (No lambda abstractions.) 19:34:03 alise answer me! 19:34:04 A compiler is code. Proving a compiler correct is a subset of proving code is correct. Why people concentrate on that one subclass eludes me. 19:34:04 Commence. 19:34:08 fax: answer WHAT 19:34:12 s/sub*/subcase/. 19:34:22 alise from earlier 19:34:25 cpressey: Uh? 19:34:32 fax: what 19:35:12 cpressey: It's fairly simple -- when your compiler is *incorrect*, you cannot rely on the compiler to generate correct code. 19:35:21 ugh alise why are you so mean 19:35:30 fax: I'm not, I just don't know what the fuck you want me to do 19:35:50 Please stop assuming you're the center of the universe and that I follow what you say above all others, I like you but please just repeat what you want me to reply to 19:36:39 cpressey: Proving a compiler correct is proving a function (Lang -> Lang) correct. Call it f. What you're saying is "Prove that semantics (f x) = semantics x". But if we wanted to prove f correct, we have to express the intended semantics. "Given the input x and the output x', prove that semantics x' = semantics x". 19:36:46 pikhq: Right, so proving programs correct is important. I get that. 19:36:51 So proving the compiler correct /is/ proving the compiler's output correct. 19:37:03 What I don't get is why this *special case* is so friggin' popular, esp. in theses. 19:37:29 because it's hard. 19:37:30 and important 19:37:32 alise, you just seem to sort of phase out when I link you stuff 19:37:35 see e.g. Reflections on Trusting Trust 19:37:43 cpressey: Because it's more important than most other cases. 19:37:45 fax: no I just don't respond to links that I am unable to interpret the context of; also, I did respond 19:37:49 I linked to an article linked to in that subreddit 19:37:53 Since almost everything is compiled. 19:38:01 alise, no there's a compilers book in there 19:38:15 fax: i didn't see 19:38:21 ah 19:38:24 Yet ultimately, everything is interpreted. 19:38:43 We should probably be proving our text editors correct, too. 19:40:32 Do you have any idea how much verification goes into making an x86 CPU? 19:40:33 cpressey, http://jaguar.it.miami.edu/~chris/formal_methods_in_the_movies/TheWizardOfOz.html 19:41:17 -!- alise_ has joined. 19:41:24 alise: Issues still slip on through on occasion, though. 19:41:35 Though the only such case I can think of is the FDIV bug on the Pentiums... 19:41:48 cpressey: We do not prove our editors correct because it is incredibly trivial to verify that they produce the correct results with a so-simple-there-cannot-be-any-bugs utility such as cat. 19:42:01 pikhq: Which is basically the reason WHY they do formal verification nowadays. 19:42:09 Indeed. 19:42:26 cpressey: For compilers, Reflections on Trusting Trust shows that it is pretty much /unknowable/ whether a compiler is correct. 19:42:45 Even if the compiler is not malicious, such errors could happen. And verifying that a huge program was compiled correctly? Good luck. 19:42:53 So we attack the problem at the source, and prove our compiler correct. 19:43:19 how does one get a degree sign in LaTeX? 19:43:30 in an equation that is 19:43:40 alise_: If you prove that the generated code is incorrect, you've caught a bug *regardless* of whether it was in the compiler or in the code being compiled. 19:43:54 * AnMaster looks at fizzie 19:44:23 cpressey: You don't understand - given a black-box compiler proving that your code was compiled correctly is almost impossible. 19:44:23 AnMaster: \circ or something 19:44:24 Consider: 19:44:33 AnMaster: See also http://detexify.kirelabs.org/classify.html 19:44:39 AnMaster: ^\circ, I think 19:44:48 When we prove the compiler correct, we do it by meticulously analysing every case it uses to compile constructs; we have direct access, we prove the atomic compilations correct, and their compositions. 19:44:51 Deewiant, hm okay 19:44:53 Voila, the compiler is Always Right. 19:44:55 well that works 19:44:58 -!- alise has quit (Ping timeout: 252 seconds). 19:45:01 I think I saw ^\circ used somewhere, yes. 19:45:02 cpressey: If we just have the input, and the output... where do you start? 19:45:03 AnMaster: I.e. raise it to the power of one circle :-P 19:45:09 You have to model how it was compiled first - basically, write your own compiler. 19:45:12 Deewiant, hah 19:45:15 "we do it by meticulously analysing every case it uses to compile constructs" -- *sigh* 19:45:18 Then you have to verify that each compilation is equal to how your model would compile it. 19:45:30 cpressey: But then we have to verify our now-very-real model compiler is correct, or it's useless. 19:45:34 alise_: You have the semantics of the program, and you have the semantics of the target language. That's where you start. 19:45:50 have you every actually done a formal correctness proof for a non-trivial compiler? 19:45:55 ever* 19:46:12 http://anthony.liekens.net/index.php/LaTeX/DegreesNotation -- that suggests either ^\circ (possibly with your own \newcommand) or the existing \degree from \usepackage{gensymb}. 19:46:20 fax: Would you prefer I went into the nitty-gritty when the abstarct principles are all that matter here? 19:46:26 fax: Me? No. But (as should be obvious) I have reasons for that. 19:46:36 cpressey, not you, alise :p 19:46:36 fizzie: I was thinking ^\circ. Thought it'd be too silly to say. 19:46:52 It's less silly than just ^o at the very least. :p 19:47:16 fax: For trivial compilers, the problem seems not too difficult, maybe even enjoyable if the compiler is written a certain way 19:48:27 * fax needs alise to get into the trenches 19:49:40 fax: But my ivory tower is so comfortable... 19:49:56 Besides, I refuse to do any serious work in anyone ELSE's language. They have cooties. 19:50:18 :P 19:54:51 Actually (to get back to the previous topic) the problem seems trivial if you construct your compiler compositionally (though I realize full well almost all production compilers aren't, but we were talking about functional languages.) If a->b is correct, and b->c is correct, then a->b->c = a->c is correct. 19:55:29 If a->b is correct, and c->d is correct, (a,c)->(b,d) is correct, assuming sane composition 19:56:26 cpressey: Now add full-program optimisations. 19:56:44 Oh yes. The problem AS USUAL is that someone wants it to GO FAST. 19:57:30 :-D 20:00:46 :( 20:00:57 this is not accurate 20:01:50 -!- alise_ has quit (Ping timeout: 252 seconds). 20:02:25 -!- alise has joined. 20:02:35 cpressey: Mind you, I don't plan on including a clever compiler in my OS. 20:02:46 It's near-the-metal, and cpus are really fast. So... 20:04:09 -!- lament has quit (Ping timeout: 260 seconds). 20:06:38 I'm simply disregarding all considerations of efficiency. 20:07:00 Waste of time to worry about wasting time. 20:07:20 -!- lament has joined. 20:07:59 cpressey: ah, words of truth 20:09:15 At the same time, I will continue to complain about web sites that are slow to load. I have a hypocrisy quota to reach, you see. 20:11:00 http://dadgum.com/james/performance.html 20:14:44 ping 20:15:39 alise: Why are you writing an Othello in Haskell? 20:15:49 Felt like it. :-) 20:21:23 Argh! 20:21:24 I need type-level functions. 20:21:29 :D 20:21:41 ...because I'm implementing a dependently-typed language. :-) 20:21:50 (But not for /that/ reason.) 20:23:09 othello and its rich internal type system... 20:23:45 <3 20:24:03 * alise steps back, examines his general structure. 20:24:04 Happy happy joy joy joy 20:24:14 Lam :: (Id a -> LC b) -> LC (a :-> b) was so nice, too. Sigh. 20:24:29 so you Lam-ent its loss? 20:24:32 You could even Show it. 20:24:40 Types: 20:24:53 pi (x:T). r 20:24:53 * 20:25:03 I don't believe in ZFC, I don't see why I should believe in dependent types. 20:25:03 in pi, T:* 20:25:11 hehe 20:25:21 Values: 20:25:26 ztheist 20:25:28 * cpressey proves himself 20:25:47 \(x:T).(e:R) : pi (x:T). R 20:26:08 alise why don't you write it in Coq (type functions!) then extract it to haskell 20:26:12 (f : pi (x:T). r) v : r[x=v] 20:26:16 if you do that it'll be a really sweet hack 20:26:26 fax: mm maybe 20:29:17 use monads ! 20:30:23 everything's better with monads! 20:30:58 sem' xs (App f x) = (sem xs f) (sem xs x) 20:31:00 not allowed :( 20:31:07 with 20:31:07 App :: LC (a –> b) -> LC a -> LC b 20:31:23 I guess I need to specifically specify f must be a Lam 20:31:37 whats xs? 20:31:38 how lame 20:31:47 fax: de bruijn housekeeping 20:32:02 actually I think it needs to be a function... maybe 20:32:14 wait, no 20:32:42 against inferred type `[(.) (forall a1) (LC a1)]' 20:32:44 lol 20:32:45 (.) 20:37:40 fax: sem' :: (Id t -> t) -> LC a -> a 20:37:44 sem' v (Var i@(Id n :: Id t)) = v i :: t 20:37:46 why doesn't this work :( 20:39:02 something to do with needing to enable a bunch of extensions that should really be the default? 20:39:39 already done 20:39:45 Couldn't match expected type `t' against inferred type `a' 20:39:47 :/ 20:40:16 do sem' :: (Id a -> a) -> LC a -> a :D 20:40:17 ohh 20:40:18 I just needed 20:40:22 (forall t. Id t -> t) 20:40:23 to be the type 20:40:25 duh 20:40:30 how can that be the right type? 20:40:34 what's Id t? 20:40:39 oh I see 20:41:07 can you implement (in a pure and safe way) STRefs this way? 20:43:43 -!- alise_ has joined. 20:44:44 -!- alise has quit (Ping timeout: 252 seconds). 20:53:01 -!- oerjan has quit (Quit: Good night). 20:54:07 othello is more fun than this 20:54:35 fax: I assume there's some hyper-monoidal structure for game boards :-P 20:58:12 fax: Reifying without _|_: 20:58:13 instance (TNat n) => TNat (S n) where reify _ = 1 + ((reify :: (n -> n) -> Integer) id) 20:58:15 Clever, huh? 20:58:38 In fact, you could even have reify :: Dummy n -> Integer where (data Dummy t = Dumb) 20:59:09 Dummy is basically values indexing on types :P 20:59:45 Well, sort of 21:13:42 Press Ctrl-# to continue! 21:17:12 wat 21:17:34 fax: is there any dependent language that lets you elide most of the obvious proofs and the like... I feel like I'm writing tons of obvious proofs except in haskell atm :) 21:17:58 coq 21:19:11 fax: you sure? 21:19:26 well I am interpreting 'elide' in a special way 21:21:46 that means "specify"? 21:23:15 yeah and prove them 21:23:19 lol 21:24:27 fax: http://www.reddit.com/r/dependent_types/comments/baf7g/wtypes_good_news_and_bad_news_laquo_epilogue/ why epigram 2 isn't broken 21:24:33 i think 21:25:04 from the murky depths http://sneezy.cs.nott.ac.uk/darcs/RDTP/2ndmeeting/ctm-3.JPG ... 21:27:21 fax: btw I think I understood your thing about induction from the logs 21:27:29 so what is mu-elim's actual type, I'm curious? 21:27:38 admittedly this is the rough kind of understanding, not the deep kind 21:28:20 huh 21:28:25 what the heck is going on 21:28:26 somehow 21:28:35 every X process ended up as STOPPed 21:28:48 killall -CONT seems to have helped *somewhat* 21:30:07 except I can't resume that dbus crap 21:30:16 it causes everything else to SIGSTOP again 21:30:21 Smells like cat food. 21:32:19 I should really devise a way to isomorph the pure data types with an efficient implementaiton. 21:32:21 *implementation 21:32:48 lol :D 21:33:16 what 21:33:39 I once read a PhD thesis were 70% of the ~200 pages was a transcript of a session with an interactive proof system. 21:33:44 *where 21:35:12 what the hell is going on 21:35:22 it all started when inkscape crashed 21:35:31 it seems that resulted in dbus crashing or something 21:35:52 ooh nice, gconfd is eating 100% CPU 21:38:39 -!- MigoMipo has quit. 21:39:11 * fax snooze 21:39:13 No! Sleep! 'Til Brooklyn! 21:39:39 cpressey: Formalised proofs are the future! 21:39:44 Although a transcript is probably not the best form. 21:39:45 brb 21:40:02 formal math is so difficult 21:40:24 but it's different than proving stuff on paper, and it's a bit different than programming too 21:40:34 it's a bit perverse 21:40:44 Can you say "thesis padding"? 21:40:51 heh 21:48:36 I'm probably going to try to include a proof checker in the language I'm working on. Not a prover though, that's just way too much work. But a proof checker is pretty simple. 21:48:54 how do you prevent LaTeX from including a date on the title page? 21:49:56 proof checker = type checker 21:50:33 proof checker is simple? :) 21:50:37 yes that is true 21:50:43 but it is hard to write proofs :P 21:50:45 = derivation checker 21:51:10 AnMaster: Use \date{} -- though it might be suboptimally spaced. 21:51:38 fizzie, hm spacing is important since I don't use a separate title page 21:52:37 Try it and see. If it's not good, you'll probably have to just do the titles manually; the usual \maketitle is not very customizable. 21:52:50 It's possible that it's clever enough to detect and special-case an empty date. 21:53:36 someone (fax) gimme the interpretation brackets 21:53:50 [[ ]] 21:53:59 qwrtuc6ybpoi;ytrweaqstr4jy;poin0[;qwo'm[pn;iqw;p0oi[ie3ye3wdrty;piyuhtw2qwqaretshygu,-';juytdrtuh0poesr48#'[p0oiyhtdryk]=' 21:54:02 fax: >:| 21:54:06 :p 21:54:16 hands in the air 21:54:16 you dirty qwerty user! 21:54:27 yeah 21:56:53 -!- Oranjer has joined. 21:57:45 coq proofs don't look nearly enough like real mathematical proofs 21:57:47 imo 21:58:00 coq? 21:58:04 kazonk; whup f; bop; ligxs 21:58:09 Oranjer: Coq. 21:58:13 Theorem prover, programming language. 21:58:19 ooh, okay 21:59:43 alise they shouldn't look like what you find in textbooks 21:59:59 Trivial example of what I have in mind: http://dpaste.com/169655/ 22:00:20 alise, well it has been pointed out by Freek that these proof assistants do look very much like Euclids Elements in style 22:00:30 but I mean on paper stuff is a different world 22:00:44 yeah but it shouldn't be a different world! 22:00:55 paper can't compute (yet!) :P 22:01:13 imo we should all be using dependent formal proofs everywhere 22:01:28 and with say coq proofs that is .. not practical 22:02:05 :| 22:02:10 more of your bullshit 22:02:31 "dependent formal" 22:02:33 what 22:03:15 fax: you can just not listen to me, you know 22:04:10 but ignoring people is the center that all totaltarianism revolves around! 22:04:20 Dude, we're still grappling with sophisticated SE concepts like "comments" and "tests" 22:07:28 I am currently trying to add a feature to a swath of our code that another engineer accurately described as an "accretion" 22:07:57 I would LOVE to be able to prove some simple properties about this code, if only to figure out what the variable names should REALLY be called instead of "ctx" and "data" 22:08:03 cpressey: :-D 22:08:50 But it is written in a mainstream programming language, which means, who KNOWS what the semantics of this code REALLY are? How do you even begin to write a proof when your axioms are based on "well, it's implemented this way, on this os, on this cpu" 22:08:53 ? 22:09:43 Programming is a shithole/ 22:09:45 *shithole. 22:10:03 * AnMaster gives up on this 22:10:17 yay 22:10:24 * AnMaster uses a -1.5 em vertical spacer and then violently hits LaTeX with it 22:10:33 that seems to work 22:11:34 it is is an extremely hackish way to get two minipages beside each other. One containing a circuit diagram, the other containing values for components in an eqnarray environment 22:11:35 We don't even have debuggers that aren't crap. (Where did this value come from? Tell me. No, you can't, can you.) 22:11:50 fizzie, wonderfully hackish in factr 22:11:53 fact* 22:13:49 cpressey: Indeed. 22:14:03 I tend to often end up with some negative spaces here and there too, though I always feel I'm doing something wrong. 22:14:05 Actually you've made me think: perhaps debuggers are isomorphic to proof assistants. 22:14:14 (Except you never get around to proving anything.) 22:14:32 alise_: They're certainly related. 22:14:41 It's all about tracing. 22:16:01 You need to visualize the innards to see why the end result is not what you expected. 22:16:30 * fax visualize your innards 22:16:35 Eww 22:16:50 fizzie, actually that wasn't just a negative space. it was a -6 em vertical spacer at the top of a mini page 22:17:00 to "fake" it being at level with the other one 22:17:31 somehow the display style equation in that mini page caused it to fill out the whole page when it came to vertical placement 22:19:21 Chrome's search feature is a suckfest ... and not the good kind. 22:20:04 Gregor: Howso? 22:20:12 Just type in what you want and press enter. ...Hooray. 22:20:29 Or if you're going to search for something that looks like a URL, ?poop://lol. 22:20:39 I think there's even a shortcut for Ctrl-L + ? 22:20:41 Nonono, search on a page, its "find" feature 22:20:54 Whatever you want to call it. 22:22:24 Oh 22:22:25 Why? 22:23:18 1) What was wrong with '/' and type? 2) The most common use of find on a page for me is getting to a link to click it. But when I hit 'enter', it goes on to the next effing match, it doesn't click the link >_< 22:25:19 does it support regex? 22:28:19 Gregor: (1) Oh, Ctrl-F, how horrible. (2) Okay. 22:28:28 AnMaster: No. Because it's meant for people to use. Quickly. 22:28:35 And I can't even fall back to print statements without pulling my hair out because the values have magical stringification so they throw an exception when I try to print them. 22:28:40 Ctrl is a lot farther from the home row than / is, if searching is common then it's annoying. 22:28:46 cpressey: :-D 22:28:48 -!- tombom has quit (Quit: Leaving). 22:28:58 But that's a minor issue, it's the no-click thing that annoys me, surely I don't need to tab to the right link ... 22:29:15 Gregor: Chrome is a bit mouse-based. There's an extension that lets you do /foo and the like. 22:29:54 http://github.com/philc/vimium 22:31:07 alise_, you know, I quite often use egrep as a quick way to search 22:31:15 AnMaster: you are not technicaly human though. 22:31:25 alise_, neither are you if you know any regex 22:31:51 Gregor: Ctrl is *on* the home row. 22:32:05 pikhq: Screw you Unixy Solaris keyboard 22:32:20 pikhq, picture 22:32:28 AnMaster: I just xmodmap'd. 22:32:39 axiom interact : Interaction p f t -> World s -> {p s} -> (t, World (f s)) -- this, but with some sort of way to mark the previous world as invalid 22:32:49 (I'm trying to formulate all IO as one single interaction axiom.) 22:32:51 pikhq, ah 22:32:57 pikhq, to caps lock? 22:33:06 AnMaster: Yeah. 22:33:43 alise_: Uniqueness type? 22:33:56 pikhq: Thanks for complicating up my theory :P 22:34:01 Heheh. 22:34:25 basically, (World s) represents a world with conditions s 22:34:44 (Interaction p f t) is an interaction on worlds; p is Conditions -> Prop 22:34:52 meaning "is this interaction acceptable under these conditions?" 22:35:05 for instance, a read-from-stream interaction would have a p representing that the buffer must be open in the world 22:35:11 f is Conditions -> Conditions 22:35:17 representing the effect it has on the conditions of the world 22:35:28 a close-stream interaction would require that the stream be open in p, and make it closed in f 22:35:35 and t is the type of the result it returns 22:35:50 dependent types would mean that closing an already-closed file would actually be a type error. 22:36:41 yes 22:36:51 conor mcbride did some sort of thing on this i know 22:37:21 and idris 22:37:51 heh i'm actualy reading idris stuff now 22:37:55 hmm 22:37:57 maybe the issue is World 22:38:28 dunno 22:40:18 fax: how does idris do it? 22:41:47 theres papers on it 22:42:01 -!- kar8nga has quit (Remote host closed the connection). 22:42:02 yeah but i can't find them 22:42:32 http://www.cs.st-andrews.ac.uk/~eb/drafts/tfp08.pdf 22:42:35 http://www.cs.st-andrews.ac.uk/~eb/drafts/ngna2009-dsl.pdf 22:42:51 Make a dependent type system where trying to unserialize a corrupt string is a type error! 22:45:00 cpressey: Possible but a bit useless since you have to prove it. 22:45:13 So you'll basically do if corrupt x then fail else yay (long proof) 22:45:26 Better to have the serialiser return, say, Maybe DeserialisedType 22:45:41 "Better", sure. 22:46:44 dependent types would mean that closing an already-closed file would actually be a type error. <-- anything wrong with that? 22:46:46 fax: Just to confirm. http://www.cs.st-andrews.ac.uk/~eb/drafts/tfp08.pdf is not about interaction, yes? 22:46:53 I skimmed it and didn't see anything related. 22:46:58 AnMaster: It's a good thing. Duh. 22:47:07 alise_, what I thought 22:47:48 What about failing to close a file? 22:48:18 I mean, from a practical perspective, a single guard on "oops, this file handle is already closed" is nothing. But leaking file descriptors is a real problem. 22:49:08 cpressey: Actually, yeah, you could. 22:49:25 Make interact continuation-y and require that the world yielded by the continuation satisfies another bit of the Interaction. 22:49:26 cpressey, also closing a file could fail 22:49:36 open-file would have as its ever-ever-postcondition that the file is closed. 22:49:56 cpressey, isn't fclose() in C allowed to fail if data is buffered but there is no space to write it? 22:50:21 Yes, fclose() can fail. 22:50:34 so, well you could have to propagate some such errors to your high level language 22:50:39 cpressey: i think 22:51:29 Scylla and Charybdis 22:51:50 Indeed. 22:52:20 -!- oklokok has quit (Read error: Connection reset by peer). 22:52:38 Scylla and Charybdis <-- ? 22:52:46 the latter means "ircd software" to me 22:53:01 (the one freenode uses nowdays is based on charybdis) 22:54:05 Gogle it. 22:54:08 *Google 22:54:31 alise_, greek mythology? 22:54:45 No, the other Scylla and Charybdis. 22:55:37 alise_, [The phrase "between Scylla and Charybdis" has come to mean being in a state where one is between two dangers and moving away from one will cause you to come closer to the other.]? 22:56:27 No, the other Scylla and Charybdis. 22:56:58 alise_, I only get idiom and mythology hits on my first two results pages 22:57:12 haven't checked further 22:57:22 alise_, so what the heck are you talking about 22:57:49 The other Scylla and Charybdis. 22:57:58 alise_, there is no such hit for me 22:58:02 so please explain 22:58:07 The other Scylla and Charybdis. 22:58:50 okay, now you are just trolling 23:00:00 It's not my fault you're an idiot. 23:00:35 for not figuring out you were trolling sooner? perhaps 23:00:59 I had a hard time imaging you were trolling at first. 23:01:01 For convenience, this function may accept either a string, a list, a dictionary, or a file. 23:01:28 Yes, very convenient. 23:01:53 -!- madbr has joined. 23:02:16 cpressey: Ouch. 23:02:54 cpressey: Ever considered just becoming a hermit? 23:02:57 A hermit with internet access. 23:04:31 Well yes, if it wasn't for the whole property-tax thing. 23:05:09 cpressey: Caves. They have none. 23:05:37 Then there's that whole evading-park-rangers thing. 23:06:39 cpressey: Beats 9-5, right? 23:07:21 Totally. I should have gone to Hermit School when I had the chance... 23:08:15 I'm basically banking on becoming a tenured professor because of my sheer genius without trying at some point. 23:09:02 Well, then practise backstabbing now, is my advice. 23:09:10 heh 23:09:12 You'll need it in grad school. 23:10:29 Remember when I said sheer genius? 23:10:33 I'll do it and NOT EVEN REALISE IT. 23:10:43 Set myself to auto-pilot, baby. 23:12:28 -!- oklokok has joined. 23:12:32 ho oklokok 23:12:44 alise tenured how? 23:13:12 the badass kind that means I can do nothing and never get fired 23:13:17 (note: I do not actually believe any of this0 23:13:23 *this) 23:13:29 like Zeilberger 23:14:21 "Academic tenure is primarily intended to guarantee the right to academic freedom: it protects teachers and researchers when they dissent from prevailing opinion, openly disagree with authorities of any sort, or spend time on unfashionable topics" 23:14:33 "Zeilberger considers himself an ultrafinitist." Wow, they actually exist?? 23:14:46 yeah so I do 23:14:58 * cpressey is impressed 23:15:00 ultrafinitist? what does that even mean? 23:15:04 I don't beleive that a^b terminates 23:15:45 Like other strict finitists, ultrafinitists deny the existence of the infinite set N of natural numbers, on the grounds that it can never be completed. In addition, ultrafinitists are concerned with our own physical restrictions in constructing (even finite) mathematical objects. Thus some ultrafinitists will deny the existence of, for example, the floor of the first Skewes' number, which is a huge number defined using the expone 23:15:46 XD 23:15:56 It's like argument by lack of imagination 23:16:12 Argument by well our current computers can't do it/well our current understanding of physics means we can't do it 23:16:15 Or by vagary in definition of "exists" 23:16:20 fax: surely you don't consider yourself such. 23:16:45 I can in fact produce an object that is of some arbitrary numerical length. By defining the units appropriately. 23:16:47 So ultrafinitists believe there to be a largest number. I wonder what it is :) 23:17:01 I wonder what it is _today_. 23:17:07 :-D 23:17:13 For instance, I have a meter stick that is roughly G 1/G-meters. 23:17:17 yeah that's kooky 23:17:24 I'm not completely alien to their ideas, but I don't think I am one 23:17:27 Who pinged me? 23:17:44 alise_: the largest number is 9872364578691826349876985702349785018923478962345987697812340123408723984568347691698273649852394875897 23:17:57 lament: 9872364578691826349876985702349785018923478962345987697812340123408723984568347691698273649852394875898 23:17:59 lament: 9872364578691826349876985702349785018923478962345987697812340123408723984568347691698273649852394875898 23:18:02 Suck it. 23:18:03 haha 23:18:10 that's not a number 23:18:15 just a meaningless string of digits 23:18:21 oh lament is a 9872364578691826349876985702349785018923478962345987697812340123408723984568347691698273649852394875897-finitist 23:18:22 it is a number 23:18:29 you could argue that numbers larger than X don't have any practical use, that's kinda dumb 23:18:33 It's the successor of the largest number you proclaimed. 23:18:36 it doesn't mean anything. Numbers can't be that large. 23:18:39 it's not a number 23:18:47 lament: Define number. 23:18:50 no u 23:18:52 I'm a 2^16-finitist 23:19:16 fax: lament thinks such a finitism doesn't exist 23:19:17 so there 23:19:17 data Number = Zero | Succ Number 23:19:48 pikhq, fix Succ -- where is your arithmetic now? 23:19:51 math isn't haskell 23:19:55 Nat := Mu (Unit &) 23:19:58 lament, ask #haskell :x 23:20:09 Succ it. 23:20:09 why? I'm more qualified than #haskell 23:20:12 fax: Congrats, you just defined infinity. 23:20:15 why doesn't oklocorpse talk to me :( 23:20:17 i've a math degree, most people in #haskell don't. 23:20:21 oklokok oklokok oklokok 23:20:24 pikhq: ugh, no 23:20:33 _|_Nat is not infinity 23:20:59 alise_: Fine, fine. He's defined _|_ :: Number. 23:21:10 lament: hey did you specialize? 23:21:15 at some point 23:21:16 no 23:21:18 why doesn't oklocorpse talk to me :( <-- I guess he got tried of saying BRAAAINS? 23:22:27 lament :( 23:22:53 -!- oklokok has quit (Ping timeout: 260 seconds). 23:23:45 -!- oklokok has joined. 23:24:00 damn postmodernists 23:24:10 postpostmodernism 23:25:39 oklokok? 23:26:00 ω exists because I can describe it (I can describe Atlantis too) 23:30:08 ω is shorthand for some definition in some system of axioms. in those, it is presumably a coherent concept 23:30:22 the problem is that you want Atlantis to be a concept of this world. and we don't control /our/ axioms. 23:30:48 God no, I don't want that. They would cream us with their nuclear laser missiles! 23:31:05 :D 23:31:21 * fax sighs there are so many things I want to do that I am unable to do any of them 23:31:42 I love how the Halting Problem is equivalent to the Entscheidungsproblem. 23:32:04 yeah that's a good one 23:33:46 meeee 23:33:48 s/things/women 23:34:27 decide : (∀a. Prog a → Bool) → (P : Prog (Nat → Bool)) → Bool 23:34:28 decide H P = ¬(H 《i := 0. Do: If ¬(P i), break. i := i + 1. Loop. 》) 23:34:35 Or thereabouts. 23:35:55 hi oklookpaoufpadda 23:36:02 I got something to show you 23:36:14 www.stanford.edu/~dgleich/publications/finite-calculus.pdf ! 23:36:24 you said you didn't like analysis because it wasn't finite enough 23:38:09 well i'm not sure that's exactly that i said :D 23:38:12 but i'll check 23:38:12 http://i43.tinypic.com/2v8s9w8.png 23:38:15 whoope 23:38:16 I see fax doesn't like my proof :( 23:38:19 oklokok this stuff is so cool though! 23:38:20 Scientist: Yeah, the expansion of the universe is accelerating and there seems to be stuff that seems to to exert negative gravity and that stuff is dark energy 23:38:22 seriously I have to master it 23:38:23 Dude: and what is that, what is it made of? 23:38:24 sorry spam 23:38:26 Scientist: Really we have no fucking clue, we hoped you'd stop asking after hearing "dark energy" 23:38:30 bye 23:38:35 alise: I just assumed it was correct 23:38:39 Wareya: yawn 23:38:52 yet another lol-they-call-it-dark-it-must-just-be-made-up bullshit story 23:38:59 be ignorant elsewhere :| 23:39:35 decide on the reals is interesting btw 23:39:36 who said I agree? 23:39:39 it's just funny 23:39:39 nested halting-checking 23:39:40 byer 23:40:09 I can describe black holes 23:40:47 [Note to the editor: Insert a "your mom" joke here.] 23:40:51 [No. -Ed] 23:42:21 alise_, that's what she said! 23:42:25 night → 23:46:29 http://en.wikipedia.org/wiki/Clifford_Stoll The acme klein bottle guy is also the caught Markus Hess guy and also thought interwebs would never catch on 23:50:34 oklopkoupuo i think this is a precursor to Umbral Calculus 23:50:52 not entirely sure 23:53:11 oklokok btw I have not done OR yet :( 23:53:28 actually I was going to try and code that stuff into epigram just for fun but it was too hard 23:53:43 (I couldn't even define a tree type) 23:53:54 alise_, what did you think of my proof? 23:53:58 you can ask for hints if you want 23:54:15 cpressey: which proof? 23:54:16 oklokok, well if you had an intermediate problem between AND and OR that would be good :p 23:54:28 http://dpaste.com/169655/ 23:54:48 It's wrong. The last thing on the 3rd line should be "Stack'" 23:55:05 cpressey: You've neglected to specify what you're proving, for starters. 23:55:18 Looks more like an evaluation to me, 23:55:19 *me. 23:55:43 Theorem is always: first line and last line of "proof" section are equal. 23:55:46 well the thing is 23:55:55 cpressey: That's a rubbish proof system 23:55:56 What is a proof if not an evaluation? 23:55:56 Gian-Carlo Rota began his career as a functional analyst, but changed directions and became a distinguished combinatorialist. -- he helped develop this umbral calculus 23:55:59 for most things that are in the middle, you'll need to have OR already 23:56:02 cpressey: A proof is a value 23:56:02 i mean most things i know 23:56:18 fax: link to that book that had tons of proofs in i think coq 23:56:18 Well, sure, everything is a value 23:56:18 if you can live with using OR before knowing how to compile it, then yeah i have a few 23:56:21 supposedly from the future 23:56:27 cpressey: No, quite literally 23:56:34 p : P where P : Prop = p is a proof of P 23:57:01 oklokok oh, I was thinking about AxB = BxA, it seems to only have solutions like A = (mnux)^n(mnu), B = ..^m... 23:57:02 there's a reason proof assistants are all dependent and whatnot, it's because this is the way things make sense in computing 23:57:27 alise, I don't know what you are referring to 23:57:38 not all proof assistants work on dependent type theory 23:57:53 but dependent type theory is really an excellent way to do it imo 23:58:13 if |A|>|B|, then TxB = xBT, which gives you all the solutions 23:58:23 fax: well yeah 23:58:31 oklokok huh?? 23:58:33 there are a few basic techniques that get you through most things 23:58:37 not all-are dependent 23:58:41 but are all-dependent-and-whatnot 23:58:50 fax: i just substituted A = BT because |A| > |B| 23:58:59 there's a symmetric case for B > A 23:59:05 hm 23:59:12 ah! 23:59:17 oh and after that you already have all the solutions 23:59:25 if you don't see it... see fundamental theorem 23:59:29 ;) 23:59:35 alise_: To be clear, it's not a proof finder, it's only a way to write out proofs so that they can be checked. 23:59:43 cpressey: Of course. 23:59:46 we should probably be doing this in pm, i'm not sure it's as entertaining to others 23:59:49 And since a proof is a series of derivations, I don't see anything wrong with this. 23:59:54 well actually 23:59:59 we should be doing this tomorrow 2010-03-09: 00:00:02 But your proofs aren't proofs and if they were they'd be nothing in particular. If I'm reading your snippet right. 00:00:07 fundamental theorem was solutions of XY = YX? 00:00:15 oklokok, okay but can you give me one hint on OR? 00:00:25 because right now I am just sort of lost 00:00:43 oklokok but this finite calculus is so cool! 00:00:44 alise_: How would you prove that pop(push(X,Stack)) == Stack ? 00:00:53 cpressey: Also, I assume that your proofs are first-class values. So how do you create a function taking a function from a positive rational to a rational, and also a proof that for all positive rationals e1 and e2, |f e1 - f e2| < e1 + e2? 00:01:14 Or could you give me an example of something more interesting that could be proved (but still under a page of derivation)? 00:01:17 i.e., a function taking (f, |f e1 - f e2| < e1 + e2), also known as a computable real 00:01:20 yeah fundamental theorem was your pet name for the commutation thing 00:01:21 cpressey, in dependent type theory this would be a trivial proof, because pop(push(X,Stack)) would compute down to Stack, so all you really need to prove is Stack == Stack 00:01:23 cpressey: depends 00:01:23 -!- bsmntbombdood_ has joined. 00:01:48 fax: A better example to prove would be most welcome, then 00:01:52 cpressey (if P reduces to P' then a proof of P is a proof of P') 00:02:00 cpressey: I gave you one. 00:02:10 alise_: I don't have functions in my language 00:02:16 okay for OR, the first thing is to reduce it to a=b OR a=c. 00:02:17 or reals, for that matter 00:02:24 cpressey: You don't need reals. 00:02:25 oklokok, I think it has something to do with sequence of lydon words.. (because you told me that) 00:02:25 I just defined the reals. 00:02:33 -!- bsmntbombdood has quit (Ping timeout: 245 seconds). 00:02:39 oklokok, okay byebye! 00:02:41 at least i think that's the easiest way 00:02:42 alise_: You're too quick for me. 00:02:54 cpressey: The tuple (f : Q+ -> Q, forall e1, e2 : Q+, |f e1 - f e2| < e1 + e2) is a computable real. 00:03:03 (Which is just like the reals, except without things like chaitin's constant) 00:03:07 fax: nope, lyndon's aren't useful at all, i just like them. 00:03:15 oklokok, oh :p 00:03:19 cpressey: The second element is a property of the first, a function. 00:03:22 I thought they were integral to this 00:03:34 ah, sorry if i gave you that impression 00:03:44 cpressey: (Basically pi 0.1 = 3.1, pi 0.01 = 3.14, etc) 00:03:45 -!- coppro has joined. 00:04:00 cpressey: So, substitute whatever is the best analogue for a function. 00:04:07 How do you construct the proof? 00:04:15 alise_: I'm not going to be able to prove that without defining some axioms for ordering and stuff. 00:04:30 cpressey: You don't need any axioms above the standard for this 00:04:45 i've basically lectured you parts of the "introduction" chapter of our combinatorics on words course, so things don't necessarily progress that linearly yet! 00:05:09 alise_: Basically, we have term rewriting. We say, "X rewrites into Y"! The proof is simply to list the derivation. Maybe this isn't very impressive to *you*, but remember what world *I'm* living in. 00:05:16 oh well actually chapters 1 and 2 00:05:25 cpressey: So construct the computable reals. 00:05:41 where "lectured" == "listed theorems as exercises" ;) 00:05:43 alise_: No. What am I proving about them? Their existence? 00:05:43 anyway I better go to bed 00:05:49 me too 00:05:59 cpressey: No. 00:06:09 Okay, let me express this in Haskell-ish things for you. 00:06:15 "for all positive rationals e1 and e2, |f e1 - f e2| < e1 + e2" is closer, but requires, like, numbers and shit. 00:06:21 Symbolic. 00:06:36 data Real = Real (Q+ -> Q) (forall (e1:Q+), (e2:Q+). abs (f e1 - f e2) < e1 + e2) 00:06:40 The latter bit is the dependent part. 00:06:45 So, to construct a computable real, we do 00:06:50 Real f (proof of that property of f) 00:07:02 So a Real is a function that satisfies a certain property; you must prove it does. 00:07:15 -!- fax has quit (Quit: Lost terminal). 00:07:18 So if we have p : (forall (e1:Q+), (e2:Q+). abs (f e1 - f e2) < e1 + e2), p is a proof of that. 00:07:33 If A is a rational, and B is a rational, and f is a function(?), the absolute value of the difference between f(A) and f(B) is less than the sum of A and B. ? 00:07:36 Since all your proofs are just simply proving that x evaluates to x', it's pointless. 00:07:44 The proof is nonexistent; x equiv-to x' by virtue of evaluating to it. 00:07:47 So the proof is that x = x. 00:07:57 cpressey: *positive rational, not rational. 00:07:58 -!- lament has quit (Ping timeout: 264 seconds). 00:07:59 Also, no. 00:08:05 Sigh. 00:08:20 It is only true for some functions. Obviously. 00:08:32 Our constructor takes a function f, and a proof that that holds /for only the single function f that we give/. 00:08:52 That's a proof *schema* in my book. 00:08:52 Any function that satisfies that property is a /computable real/, so to create a computable real we must /supply a proof that the function we give obeys the property/. 00:09:04 So, how would you structure such a thing? 00:09:13 I bet you can't, because your proof construct is uber-limited. 00:09:25 -!- lament has joined. 00:09:58 alise_: Nowhere did I say I was writing a *prover*, only a *proof checker* 00:10:12 What is the problem with specifying f in my proof? 00:10:13 Irrelevant. 00:10:25 You cannot even /express the proof/ in your language, because you can only prove things of the form x = eval x 00:10:37 And you cannot check a proof you can't express. 00:10:51 If there are some values for f where it holds, and others where it doesn't, then it's not a proof! 00:11:37 You prove it for some given function f. 00:11:46 Right, so give me some function f. 00:11:52 And I'll write the proof. 00:11:57 If you don't, I can't. 00:12:18 i : Q -> R; i q = (\_. q, ...proof...) 00:12:21 Like I said, what you gave sounds like a proof schema to me. 00:12:24 Really simple there. 00:12:27 Write the proof in your language. 00:12:37 \x. e being lambda, of course. 00:13:45 How am I supposed to read that? 00:14:10 i takes the rationals to the reals; i is some function... 00:14:24 ... which contains a proof... 00:14:48 i : Q -> R -- i is a function from rationals to reals. 00:14:52 Digression: 00:15:23 type R = (f : Q+ -> Q, forall (e1,e2 : Q+). abs (f e1 - f e2) < e1 + e2) 00:15:24 so 00:15:33 i q = (\_. q, ...) 00:15:42 \_.q is a function taking one argument, ignoring it, and returning q 00:16:00 you must now prove that for all positive rationals e1 and e2, |(\_. q) e1 - (\_. q) e2| < e1 + e2 00:16:01 i.e. 00:16:10 you must now prove that for all positive rationals e1 and e2, |e1 - e2| < e1 + e2 00:16:13 but you can't just assume that 00:16:18 do it methodically with your proof construct 00:16:20 (I don't believe you can) 00:17:01 "you must now prove that for all positive rationals e1 and e2, |e1 - e2| < e1 + e2" - that sounds at least closer to a sane request, but it still will require me defining rationals, to do it completely symbolically. 00:17:25 Well, no. I mean, |a - b| = a + b 00:17:31 I assume you meant <= 00:17:39 Well, no. 00:17:48 I mean, could = a + b 00:17:55 Oh wait, positive. 00:18:02 cpressey: also, no 00:18:04 you must now prove that for all positive rationals e1 and e2, |(\_. q) e1 - (\_. q) e2| < e1 + e2 00:18:10 I did it wrong :D 00:18:19 What is q in that statement? 00:18:29 the argument to the function i. pay attention 00:18:32 => for all positive rationals e1 and e2, |q - q| < e1 + e2 00:18:36 => for all positive rationals e1 and e2, |0| < e1 + e2 00:18:40 => for all positive rationals e1 and e2, 0 < e1 + e2 00:18:51 (prove so) 00:18:53 => for all positive rationals e1 and e2, true 00:18:55 => true 00:19:02 but you must prove it /with your proof construct/ 00:19:04 => QED 00:19:07 that's the whole point; it's verified 00:19:46 OK, if a > 0, and b > 0, then a + b > 0, I can do. I *still* do not know what you are talking about with your function i. Do you want this quantified over all possible functions i? 00:20:16 * alise_ sigh 00:20:23 You know Haskell. Correct? 00:20:32 Assume that I do not. 00:21:03 Look, actually forget it. Thanks for your feedback. If I'm making a huge error I'm sure I'll figure it out myself. 00:21:08 Later, folks. 00:21:10 Seems to be more functions of the type (i :: a -> R) 00:21:10 -!- cpressey has left (?). 00:21:49 No, wait, more specific, :: Q -> R. Anyways. 00:22:21 -!- alise has joined. 00:22:29 If you didn't know Haskell I couldn't explain it in a million years. 00:23:04 Sounds like a personal problem. 00:23:10 Sure you could. You could give a Haskell tutorial. 00:24:15 Gregor: Do you have any idea what dependent type theory is? 00:24:20 Haskell is utter peanuts in comparison. I have to assume some baseline. 00:24:44 -!- alise_ has quit (Ping timeout: 252 seconds). 00:25:08 I have no formal experience with dependent type theory, only indirect. 00:25:16 Erm, indirect isn't the right word. 00:25:19 Informal, I suppose. 00:25:21 i don't remember what peanuts taste like, but i'm sure i love them 00:26:33 What a tragic statement :P 00:27:10 thank you about me. 00:29:26 I keep looking down, not seeing a tie, and thinking "?!" 00:29:28 Silly bowtie. 00:30:10 -!- werdan7 has quit (Ping timeout: 624 seconds). 00:32:58 -!- BeholdMyGlory has quit (Read error: Connection reset by peer). 00:33:15 do you like clothes? 00:34:02 Clothes are for the weak. 00:34:18 sooooo... you don't? 00:34:37 he wears a barrel 00:34:40 and a bear skin 00:34:44 i mean you wear all sorts of different clothes, which is weird if you, like normal humans, hate wearing clothes 00:34:56 And a necktie. 00:35:03 -!- werdan7 has joined. 00:35:14 Just a barrel, a bear skin and a necktie. 00:35:15 That's me. 00:35:26 Well, on a dressier day. 00:35:32 I lose the barrel on average days. 00:35:43 which days are the average days? 00:35:47 somehow i feel i'm the only one being serious 00:35:50 how does one calculate that 00:35:55 Pretty much anything other than going to a wedding or whatnot. 00:36:06 weddings are the outliers of my life! 00:36:19 Hence why they're not the normal days. 00:44:00 http://www.math.rutgers.edu/~zeilberg/mamarim/mamarimPDF/real.pdf 00:44:04 The ramblings of a crazy man. 00:46:18 I learned something great from Ruby: Fibers! 00:46:33 "Andrew Wiles's alleged `proof' of FLT, while a crowning human achievement, is not rigorous, since" 00:46:34 I think Fibers would be very useful in the C# project I'm working on 00:46:42 "it uses continuous analysis, which is meaningless." 00:46:44 Sgeo: fibers are shit 00:47:04 yeah looking at this pdf... it's crazy 00:47:05 Howso? And is there ANYTHING that isn't? 00:50:02 -!- FireFly has quit (Quit: Leaving). 00:50:05 Well, for instance, he's telling us stuff like "sqrt(2) doesn't exist" 00:50:13 -!- jcp has joined. 00:50:16 he is talking to me 00:50:21 Sgeo: because fibers are like continuations and coroutines but shittier 00:50:52 ph 00:50:54 oh 00:51:18 Well, I want something that lets me resume the current .. thing later 00:51:33 I'm willing to work with whatever exists the most in .NET 00:51:38 Sgeo: continuations. coroutines. 00:55:30 Continuations exist in .NET? 00:55:50 no, but .net is almost useless for programming. 00:56:15 .net is the best 00:56:24 if you hate yourself. 00:56:31 Continuations can be done in .Net. 00:56:42 By which I of course mean CPS. 00:56:50 Only via... yeah. 00:56:59 I understand call/cc better than CPS 00:57:31 Sgeo: CPS is simply the act of transforming the usage of return values to a function that takes a value. 00:57:57 Instead of "x = function_call(bar);", you do "function_call(bar, \x -> ...);" 00:58:14 And that was a delicously odd hybrid of C and Haskell syntax. 01:03:21 So, Chrome maps the numpad keys, with numlock on, to the keyCodes 97 etc. 01:03:31 97, for the non-ASCII-inclined, is lower-case 'a'. 01:03:41 (The key 'A' sends a capital A, 65) 01:03:58 That's ... confusing. 01:05:26 Oh look, Firefox does it too. 01:05:27 Weird. 01:06:22 ? 01:06:31 grop 01:13:08 -!- alise has quit (Ping timeout: 252 seconds). 01:28:25 -!- Asztal has quit (Ping timeout: 265 seconds). 01:29:11 weird html5 keyboard handling? 01:35:05 -!- oklokok has quit (Read error: Connection reset by peer). 01:52:40 Weird blaming of HTML5 for totally irrelevant things? :P 01:53:39 ah 02:04:58 -!- adu has joined. 02:07:24 -!- Oranjer has quit (Quit: Leaving.). 03:01:01 -!- Oranjer has joined. 03:08:12 -!- OxE6 has joined. 03:20:06 -!- Oranjer has quit (Quit: Leaving.). 03:35:51 -!- Oranjer has joined. 03:42:24 ugh, people in #latex treating me like I've never used a text editor before; much less LaTeX 03:43:37 I've never used LaTeX 03:49:51 -!- myndzi\ has joined. 03:50:18 -!- myndzi\ has changed nick to myndzi. 03:53:26 anyone know a LaTeX equivalent of OO.o Math's csub? 03:54:07 -!- coppro has quit (Remote host closed the connection). 03:57:00 -!- coppro has joined. 03:57:46 a "tnx you badass" would have been appreciated... 03:58:57 Sgeo: firefox crashed 03:59:37 Ah 04:21:16 -!- GreaseMonkey has joined. 05:12:44 -!- oerjan has joined. 05:33:31 -!- adu has quit (Read error: Connection reset by peer). 05:38:52 -!- pikhq has quit (Read error: Connection reset by peer). 05:42:36 -!- adu has joined. 05:43:45 -!- Oranjer has left (?). 05:43:57 -!- pikhq has joined. 05:44:26 -!- bsmntbombdood_ has changed nick to bsmntbombdood. 05:49:30 -!- Gracenotes has quit (Read error: Connection reset by peer). 05:57:10 I discovered http://www.periodicvideos.com/ today :( 06:01:15 now I'll never get to sleep 06:08:05 the one guy looks like your stereotypical professor 06:08:07 and he is 06:15:24 -!- coppro has quit (Read error: Connection reset by peer). 06:15:26 -!- Halph has joined. 06:15:34 -!- Halph has changed nick to coppro. 06:15:35 -!- werdan7 has quit (Ping timeout: 619 seconds). 06:16:29 -!- yetifoot has joined. 06:16:53 -!- yetifoot has left (?). 06:21:21 -!- werdan7 has joined. 06:25:44 -!- jcp has quit (Quit: I will do anything (almost) for a new router.). 06:42:17 -!- oerjan has quit (Quit: leaving). 06:48:49 -!- MizardX has quit (Ping timeout: 268 seconds). 07:02:59 -!- tombom has joined. 07:08:57 anyone know a LaTeX equivalent of OO.o Math's csub? <--- what does csub do? 07:09:11 nevermind, found it 07:09:29 coppro, but I'm genuinely interested! 07:09:32 busy watching videos that tell me things I already know in humourous manner 07:09:43 AnMaster: positions a subscript directly below the principal 07:09:50 done with \underset 07:09:55 * Sgeo will attempt to learn E tomorrow 07:09:55 right 07:09:58 E? 07:10:10 D done correctly :P 07:10:19 http://www.erights.org/elang/ 07:10:36 Supposed to be secure distrubuted language thingy 07:10:56 sure that isn't Erlang? 07:11:02 (that you're thinking of; not the site) 07:12:01 I'm pretty sure 07:13:53 G'night 07:16:49 Morning. 07:17:09 I discovered http://www.periodicvideos.com/ today :( <--- looks interesting 07:17:24 it is 07:18:06 Supposed to be secure distrubuted language thingy sure that isn't Erlang? <-- "secure" isn't a way I would describe erlang. Not insecure either though. 07:18:24 I mean, it isn't specifically geared towards security 07:18:28 bbl 07:18:31 that's true 07:18:50 I mentioned it specifically because it's 'elang' 07:19:22 Bot-tweets are getting a bit suspicious: "About IRC: for sex.. assembly language reminds you at very instruction. at http://paste.lisp.org/display/UNK" 07:20:25 sulphur is a really good video 07:20:38 -!- fungot has joined. 07:53:48 -!- tombom has quit (Quit: Leaving). 07:55:17 you must watch iron 07:55:22 the story is hilarious 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:06:13 -!- lament has quit (Ping timeout: 264 seconds). 08:07:18 -!- lament has joined. 08:21:13 -!- madbr has quit (Quit: Radiateur). 08:28:10 -!- oklokok has joined. 08:37:28 -!- Asztal has joined. 08:52:08 -!- coppro has quit (Ping timeout: 245 seconds). 09:07:33 -!- adu has quit (Quit: adu). 09:15:28 -!- GreaseMonkey has quit (Quit: HydraIRC -> http://www.hydrairc.org <- Nobody cares enough to cybersquat it). 09:22:58 -!- oklokok has quit (Ping timeout: 245 seconds). 09:40:22 -!- MizardX has joined. 10:04:37 -!- Asztal has quit (Ping timeout: 260 seconds). 10:09:59 -!- amca has joined. 10:12:11 -!- oerjan has joined. 10:50:51 -!- oerjan has quit (Quit: leaving). 10:51:53 -!- amca has quit (Quit: Farewell). 12:24:08 -!- alise has joined. 12:24:33 Hypothesis: It is impossible to be comfortable. 12:26:00 19:42:24 ugh, people in #latex treating me like I've never used a text editor before; much less LaTeX 12:26:12 Most users of LaTeX are near computer-illiterate, I think. 12:26:19 Mostly mathy people. 12:27:03 Sgeo: E is interesting but not nearly as magical as you think. 12:27:17 And it requires a good understanding of its principles to use. 12:27:32 wow 12:27:36 thanks asshole alise 12:27:51 What? 12:28:10 I am in #LATEX 12:28:23 and too bad coppro isn't here; I could help him 12:28:24 You mean my LaTeX remark? "Most users of LaTeX are near computer-illiterate" = >50% of LaTeX users are computer-illiterate. 12:28:26 I love latekz 12:28:36 LaTeX is fine. 12:28:43 alise: thank you, you're saying there's a >50% chance I'm computer illiterate 12:29:00 Quadrescence: No, because there is a large deluge of other evidence to suggest you are not. 12:29:04 -!- ais523 has joined. 12:29:08 okay I am happy then :))) 12:29:09 For instance, anyone in #esoteric is almost certainly highly computer literate. 12:29:20 Hi ais523. 12:30:03 hi 12:30:24 I have a seminar in half an hour, but am happy to talk until then 12:30:40 ais523: about Feather. 12:31:00 well, if you have questions... 12:31:07 I haven't thought much further on it, though 12:31:12 ais523: What is Feather, in detail? 12:31:14 >:) 12:31:34 god dammit, you asshole! 12:31:38 well, I'm not sure myself 12:31:41 We were sane for a while there! 12:32:09 let's see... you start with a very small TC language 12:32:16 I'm planning to use lambda calculus + continuations 12:32:30 and a very small bootstrap program, written in that language 12:33:18 originally, the bootstrap is just an implementation of that language; simplicity is more important here than correctness or features or anything, so long as it remains TC 12:33:29 wait, it has to be correct 12:33:37 but it doesn't matter if it has no error handling or something like that 12:33:57 now, the bootstrap program has to be written in a vaguely object-oriented style 12:34:17 it doesn't need to be actual OO or even a C++ level of OO, but it needs to have parts which are vaguely identifiable as objects 12:34:33 lambda calculus + continuations; interesting 12:34:38 and the property, that each of those parts can be retroactively replaced 12:34:39 I'm going to implement that 12:35:18 the easiest way to do this seems to be to make each part the return from a call/cc, or somehow otherwise have a continuation that goes back in time to when it was created and replaces it 12:35:30 ais523: are you sure you absolutely need lambda if you have continuations? 12:35:33 calculus of continuations! 12:35:52 alise: I'm not, but it's likely to make the self-interp shorter and easier to write 12:35:59 ais523: also, LC sucks, make it combinator calculus 12:36:13 LC has syntactic stupidities like (\f x.f x) vs f 12:36:14 and Subtle Cough was proved non-TC, so you need /something/ other than call/cc, at least 12:36:20 and (\x. x) vs (\y. y) 12:36:28 de bruijn indexes solve the latter but you still need n-conversion 12:36:43 alise: planned Feather syntax is [ x | f x ] 12:36:48 for \x.(f x) 12:36:53 So what? 12:37:02 semantics (\f x. f x) = semantics f 12:37:03 but 12:37:03 alise: because if I didn't say, AnMaster would ask 12:37:08 (\f x. f x) =/= f 12:37:20 hmm, semantics (\x. f x) = semantics f 12:37:27 semantics (\x. x) = semantics (\y. y) 12:37:29 but etc 12:37:32 De Bruijn indexes solve that one: 12:37:37 semantics (\0) = semantics (\0) 12:37:39 \0 = \0 12:37:43 but not n-conversion: 12:37:52 the same problem happens even with combinators 12:37:58 n conversion? 12:38:01 ETA CONVERSION? 12:38:04 erm oops I wrote it wrong 12:38:12 semantics (\x. f x) 12:38:13 and, well, in general because you can't compare functions in general in a TC language 12:38:25 ais523: you compare syntactic structure 12:38:37 anyway n-conversion + de bruijn indexes make it work 12:38:39 well, ``skk is semantically equal to i, for instance 12:38:40 but n-conversion is ugly 12:38:46 converting (\{f} 0) to {f} 12:38:52 where {f} is f's current identifier number 12:39:09 ais523: that's irrelevant though 12:39:21 (\x. f x) is literally /the same function/ as f 12:39:24 just written a different way 12:39:30 skk is more like a different implementation of the same thing as i 12:39:47 I'm not convinced that (\x. f x) is the same function 12:40:04 it certainly isn't in a strict lang if determining the value of f has side effects 12:40:15 then f isn't a value :P 12:41:01 yep; this argument only works if f is a function constant 12:41:06 this is such a weird discussion 12:41:14 perhaps the issue here is, that constant folding on functions is a fool's errand 12:41:28 because you end up evaluating the whole program at compile time, and if it contains an infinite loop you're in trouble 12:41:33 Quadrescence: it's the sort of discussion we have here 12:42:23 ais523: I know 12:42:28 But this needs to be more interesting 12:42:38 ais523: let's put it this way - eta-conversion + n-reduction and then comparing syntactic structure is the kind of thing we do in our fancy functional langs :P 12:42:42 although I credit alise and him talking about de bruijn seqs 12:42:42 anyway, anything remotely related to Feather is inherently weird 12:42:53 Quadrescence: de bruijn indexes 12:42:56 different thing 12:42:58 alise: as an optimisation? 12:42:59 idxs, yeah 12:43:01 that's what I meant 12:43:11 ais523: no 12:43:26 why, then? 12:43:34 hmm... the type of continuations is really strange 12:43:55 well, of callCC, specifically 12:44:14 continuations have a relatively simple type (function from some type to bottom) 12:44:21 ((a -> X) -> a) -> a 12:44:25 where X is forall b. b 12:44:28 call/cc, yes, that's weird 12:44:35 which is actually exists b. b 12:44:44 which is actually isomorphic to () :-) 12:44:53 but we have it as forall for convenience... 12:45:19 alise: the isomorphism there is misleading, I think 12:45:31 it's true, though 12:45:34 type-theoretically 12:45:40 yes, but rather vacuous 12:45:49 no, actually 12:45:59 T (except the opposite of _|_) really is the supertype of all types, theoretically 12:46:04 in practice, you implement it like data T = T 12:46:11 because they're the same thing 12:46:13 (it also represents truth) 12:46:22 (where false is the empty type, _|_) 12:46:48 App :: LC (a -> b) -> LC a -> LC b -- it annoys me that you can't do this 12:47:00 because it stops you writing `semantics :: LC a -> a` 12:47:51 top bot 12:48:11 modal logic is weird; it has _|_, T, 0, and 1 as logic values 12:48:27 where 0 and 1 vaguely correspond to false and true, T to both, and _|_ to neither 12:48:33 The fundamental theorem of type theory: all types are sandwiched between an act of gay sex, top to bottom. 12:48:44 alise: hahahahaha 12:48:48 that is great 12:49:08 also, "bottom" is a stupid name for it 12:49:13 it's not 12:49:22 it's at the bottom of the type hierarchy 12:49:24 I've seen "eet" used for the same symbol ("tee" spelt backwards), for instance 12:49:42 alise: I know why it has that name; but it's too many syllables and looks nothing like the symbol 12:50:09 I just like to call them top and bot 12:50:13 literally "bot" 12:50:20 like bot fly :( 12:51:18 alise: Maybe I should recruit you for helping me design my language 12:51:37 since you seem more competent about type theory and stuff than I originally imagined 12:51:47 Quadrescence: alise is an expert on that sort of stuff 12:51:51 App :: LCC (a -> b) -> LCC a -> LCC (b -> c) -> LCC c -- I wonder how to modify this type to (apart from making it possible to compile) enforce CPS-style. 12:51:54 I tend to care more about the practice than the theory 12:52:08 Hey, I'm no expert. 12:52:09 I like practice too. 12:52:16 Practice is very, very important. 12:52:32 Hmm. I could fold App's type into Lam. 12:52:41 So we have LamApp and LamVar. 12:52:48 But then we can't have a top-level application. 12:52:54 But I can model that to applying the main function to, say, id. 12:53:35 LamApp :: LCC (a -> b) -> LCC (b -> c) -> LCC (a -> c) -- Hey, look. It's compose. 12:57:18 Yeah, this model isn't workable. 13:00:00 oh well, time for my seminar 13:00:10 Seminyarrrrrrrr 13:07:14 Aw man, my HOAS broke cwcc 13:07:25 * Sgeo is probably going to have potato chips for breakfast 13:14:08 -!- Asztal has joined. 13:18:34 -!- augur has quit (Ping timeout: 268 seconds). 13:18:47 I now have an interpreter for the Lambda Calculus of Continuations, but no pretty-printer, so I can't test it. 13:24:18 So, put differently, you have nothing. 13:24:57 Well, I'm going to write a type-inferrer so that I can see the sort of results. 13:25:03 Any hey, I can make it loop forever. 13:25:26 Wait, all LC expressions have the type a = a -> a. 13:25:30 Um. 13:25:45 The AST isn't terribly conducive to pretty-printing: 13:25:50 data LCC t where 13:25:52 App :: LCC Lam -> LCC Lam -> LCC Lam -> LCC App 13:25:54 Lam :: (LCC Lam -> LCC Lam -> LCC t) -> LCC Lam 13:26:50 alise, should I learn Common Lisp or Scheme [I think I may have asked you this before]. Although Scheme seems attractive, there's pretty much no large standard library 13:27:02 Don't know if CL has one, but from what I gathered.. 13:28:07 I'm not even going to answer because you seem to value a language based on how many BSD socket libraries it has, and this is poisonous. 13:28:43 Scheme (R5RS, not R6RS) is clearly the superior language. Common Lisp doesn't have standard sockets either. It does have Roman Numeral support, though. 13:29:20 ...who said anything about sockets? 13:30:23 The prototypical example of a "practical" "standard" "library"> 13:30:23 *. 13:32:39 Quadrescence: So, uh, tell me about your language. 13:34:30 alise, Quadrescence and Gregor seem to hate PLT Scheme, I'm still not sure why. Do you have any comments on PLT Scheme? 13:34:43 It is a language that is intended to be practical for general programming, but will be particularly designed for building a computer algebra system with it. I want it strictly statically typed, however, if a certain type can't be proven/shown, that should NOT error, but be left for run-time resolution 13:34:50 PLT Scheme [...] is rubbish. 13:35:06 Use SISC, or Scheme48, or Chicken, or ... 13:35:24 Quadrescence: Computer algebra system: You want a term rewriting language. (Trust me.) 13:35:40 A typed one is an endeavour I've looked into before, and one that is very interesting. 13:35:47 alise: Yes definitely 13:35:57 I've read my fair share of TRS junk 13:36:04 Quadrescence: But as for the untyped-leave-to-runtime... Why not just have a more powerful type system? 13:36:39 In what way is PLT rubbish? 13:36:52 -!- ztirf4 has joined. 13:37:17 Sgeo: To understand the reasons why you'd have to understand Scheme. 13:37:17 Catch-22. 13:37:22 Trust ze sexperts. 13:37:40 Every single implemented dependent type system is annoying as ! to use, at least in my opinion. I don't want the programmer to fight with the compiler; I want him/her to work with it. This is NOT to say the type system can't be powerful! I am just saying things should be optional in a sense. 13:38:03 alise, how well do I have to understand Scheme? I think I understand the basics at this point 13:38:14 Quadrescence: Well, I agree that most dependently-typed languages aren't too nice to use. 13:38:17 Sgeo: almost entirely. 13:38:26 Sgeo: Knowing some functions and stuff won't make you "know" scheme 13:38:30 Quadrescence: But, I mean, my main project is to make dependently-typed languages nice. 13:38:33 You really have to "see the light" to know scheme 13:38:37 Quadrescence: So you must understand that I'll push for that. :-) 13:38:51 alise: Of course. I *want* dependent types. 13:38:56 Also, even something like Haskell's type system can be extended a little bit to make it lenient for anything you'd want. 13:38:58 So, what Scheme is most recommended for newbies? 13:39:09 Quadrescence: Right. My opinion is that you can make them nice /and/ mandatory. 13:39:25 Sgeo: Well, not SISC, too barebones... Scheme48 or Chicken. Chicken has more librarooz. 13:39:28 alise: That might be possible, and if so, I'd probably enforce that 13:39:49 alise: You might agree that less libraries = better for a new schemer 13:39:56 Quadrescence: But dependent types for term rewriting is in fact a project I had! (I gave up on it because it was really hard >_>) 13:40:11 Quadrescence: Yes, but Sgeo's obsessed with libraries. And really most eggs are fine. 13:40:15 Besides, SISC is Java. :-P 13:40:22 Nothing is wrong with libraries 13:40:29 but I think the "point" of Scheme will be missed 13:40:34 True. 13:40:42 Just at the start. 13:40:49 Is "SRFI" what is meant by libraries? 13:40:53 I'd use Scheme48 or so 13:40:59 Sgeo: They are "standard" libraries 13:41:07 Quadrescence: The problems with typing a term rewriting language are basically: One, identifying what you're typing (There's no nameable function, since we simply put little holes of free variables into an expression and rewrite it), and two, dealing with the extensibility (you can add to a "function" at any time just by creating a rule). 13:41:22 I think I know how to solve the second one (with an entirely new type system). The first may just be a syntactic fluff. 13:41:25 *a bit of 13:41:35 Quadrescence: Oh, I forgot S48. 13:41:38 Sgeo: Use Scheme48. 13:42:12 The Windows distribution is "experimental" 13:42:15 alise: Right. My rule was going to be this: you can't create a new function/constructor unless it can be typed 13:42:39 Sgeo: Oh, you're on windows, no wonder why you are attached to dr scheme 13:42:44 Sgeo: Oh. 13:42:46 Windows. 13:42:50 Is Notepad++ any good with Scheme? 13:42:57 Emacs. Only. 13:42:59 emacs is good for scheme 13:42:59 Or Edwin, even, lol. 13:42:59 ;) 13:43:05 with Quack, I suggest. 13:43:10 Anything else will fail. Horribly. Do not even bother. 13:43:15 Sgeo: Bla just use dr scheme 13:43:24 Set to R5RS at least 13:43:26 Since you're on windows, there's little you can really do 13:43:29 Think of the /children/ 13:43:32 and yes, set it to R5RS 13:43:47 Notepad++ seems to have Scheme support 13:43:58 Quadrescence: Should we move discussion of this language elsewhere so I can blab a lot about the type system for term rewriting I half-thought up? 13:44:01 Sgeo: It has rudimentary highlighting, probably. 13:44:02 Scheme highlighting isn't the important part 13:44:05 And no nice indentation thingy 13:44:14 If you are not going to trust the opinions of people who /know/ what they're talking about, why ask? 13:44:15 I typed (let ((a 5) and hit enter 13:44:16 alise: Sure 13:44:19 It didn't autoindent 13:44:33 Sgeo: Same with Emacs. Technically. (Ctrl-J :P) 13:44:38 Sgeo: Just use PLT/whatever 13:44:42 Quadrescence: Name it 13:44:57 yeah dr scheme at least has a workable editor for newbz 13:44:59 Quadrescence: (the channel) 13:45:03 ummmmmmm 13:45:47 Does PLT in r5rs mode support the SRFIs that PLT is supposed to support? 13:46:10 Quadrescence: Well I wouldn't want to usurp your holy rights as a Platonic-space-excavator. :P 13:46:18 Sgeo: Yes. 13:46:19 alise: #~math 13:46:24 * Sgeo is happy now 13:46:41 Quadrescence: No, Libster and base3 will just start attempting to troll me again. 13:46:42 Keyword "attempting". 13:47:06 alise: No. 13:47:09 Libster is banned 13:47:17 Hah, really? 13:47:19 base3 is gone 13:47:21 yes really 13:47:34 Anyway, let's just do #rewritetypes so there's no flood. 13:47:40 Unless someone /else/ has that channel... 13:47:51 No one is talking 13:48:05 but we can make a new channel if you so desire 13:48:10 -!- augur has joined. 13:48:22 The holy institution of making a new channel, a.k.a. /j #foo :-P 13:51:01 Um... >.> 13:51:14 Are there any socket thingies in any SRFIs? 13:52:13 I shouldn't have even bothered. 13:52:48 I'll take that as a "No, and you're completely missing the point" 13:53:00 Not no. 13:53:15 But not yes. Actually not even mu, I meant exactly what I said. But yes, you are missing the point. 13:55:36 .. 13:57:24 What is the point, exactly? 13:57:37 Maybe I should just stick with Haskell >.> 13:58:27 I doubt you get Haskell's point either. 13:58:33 woo 13:58:35 xv 13:58:37 tomorrow i turn 2^3 * 3 years old. :D 14:01:42 You'll be 512! 14:02:35 That spacing is misleading, since the exclusive-or binds less tightly than multiplication there. 14:02:55 :-D 14:03:21 He'll be 11. 14:03:49 Or 3, if you interpret it like he said. 14:03:57 hmm... INTERCAL can do Roman Numerals, at least for output 14:04:12 maybe Common Lisp was just making implementing it easier? 14:04:30 :-) 14:04:43 ais523: Have you any opinions on how to best represent an Othello board? 14:04:46 (Functional language.) 14:05:10 I'm thinking of some sort of function-based representation, something that reifies the concept of the continuous line into the way you access the board. 14:05:32 alise: I don't think I can come up with correct opinions 14:05:42 alise: not exclusive or. 14:05:44 exponentiation. 14:05:45 :| 14:05:46 based on what I'm doing at work atm, I'd come up with a functional translation of the OO way to represent it 14:05:47 Incorrect ones are fine too, ais523. 14:05:51 augur: Ohh you don't say 14:05:54 #boring, that way 14:05:58 no matter what the correct representation actually was 14:06:03 true 14:06:10 i could've done something more interesting 14:06:28 Wilful misinterpretation is the norm here, isn't it? 14:06:33 so basically, you'd have a function with arguments (method of accessing the board, argument to that method) 14:06:37 * Sgeo fails to see PLT on http://people.csail.mit.edu/jaffer/SLIB.html 14:06:40 wow, that is terrible 14:06:57 nicely abstracted and extensible, but otherwise terrible 14:07:40 Sgeo: slib sucks 14:07:51 Quadrescence will back me up on this... i hope 14:08:16 Ok, so what doesn't suck? 14:08:30 Nothing! 14:08:55 Me! It'd be illegal. 14:09:44 Speaking of which, where does the "put a sock on it" expression come from? (And don't reply with a line number.) 14:10:47 Condoms. 14:11:01 OBVIOUSLY. 14:11:18 Oh, that "it". 14:11:19 alise: hahahahaha 14:11:20 slib 14:11:22 slib blows 14:11:41 slib blows... anuses 14:12:37 So... does this mean for networking stuff, I'd be using the implementation's stuff? 14:12:46 Or is there anything else? 14:15:40 Just learn scheme 14:15:42 then do cool stuff 14:18:02 -!- MizardX has quit (Ping timeout: 248 seconds). 14:18:08 -!- ztirf4 has quit (Quit: Nettalk6 - www.ntalk.de). 14:19:01 * Sgeo gibbers a bit 14:29:53 axiom interact : Interaction pre final transform result → (ω:Worldish) → pre ω → (result → transform ω → Φ Worldish (λω₁ → final ω₁)) 14:29:55 "Or something." 14:30:04 I think Worldish has to be an opaque type. 14:30:21 That still lets us use the old world, though... 14:30:23 Oh, perhaps: 14:31:55 axiom interact : Interaction pre final transform result → (c:Conditions) → pre c → (result → transform c → Φ Conditions (λc₁ → final c₁)) → (ω:World) → (conditions ω ≡ c) → World 14:31:58 Except with all the bits involving World omitted. 14:32:09 Except then you just move the problem of worlds to the conditions. 14:32:27 I think I'm going to try learning Common Lisp 14:35:24 Hah. 14:36:41 Although I already know for a fact that I hate the names of some of the functions [saw a chart contrasting Scheme and CL] 14:37:34 AFK 14:51:19 -!- MizardX has joined. 14:54:07 -!- ais523 has quit (Ping timeout: 265 seconds). 14:54:45 -!- ais523 has joined. 14:55:15 ouch 14:55:28 my entire system was being really slow, for some reason 14:55:42 the DNS server in particular; I'm not sure if that's deliberate or not, but I changed the DNS to level3's 14:58:39 fop 14:59:14 fop? 15:00:03 alise: planned Feather syntax is [ x | f x ] <-- yay Feather! 15:00:25 AnMaster: I thought you only had one line of scrollback? or did alise invent that? 15:00:45 ais523, it's from the esoteric false rumours file 15:00:49 didn't you know? 15:01:00 haha, #esoteric so needs a rumors.tru and rumors.fal 15:01:01 ais523: he read the logs 15:01:06 not scrollback 15:01:19 I read highlights and their context in logs 15:01:19 rumors.tru: alise is a girl pretending to be a man pretending to be a girl. 15:01:26 latex genii: how do i make an invisible char the same width as another given char? 15:01:28 rumors.fal: #esoteric's logs come from sustainable forest 15:01:38 oh, I'll look it up 15:01:46 I know it's possible, and where to find out how, but not the actual command 15:01:58 ais523, \hphantom? 15:02:03 rumors.mu: This rumour is false. 15:02:08 alise: that sounds right, yes 15:02:14 ais523, what? 15:02:16 hphantom, I think ,yes 15:02:19 *think, yes 15:02:21 well 15:02:22 even works in TeXmacs 15:02:26 it is horizontal 15:02:32 there is a vertical version too iirc 15:02:41 AnMaster: gah, but it seems to treat it as not italic 15:02:43 or just \phantom generally 15:02:44 and possible one that does both vertical and horizontal (not sure about that) 15:02:47 alise, what? 15:02:54 very, very subtle spacing issues 15:03:03 alise: you could italicise inside the \phantom, or doesn't that work? 15:03:15 ais523, did I mention I put a -6 em vertical spacer at the top of a minipage yesteday? 15:03:21 yes a negative one 15:03:26 AnMaster: no, or at least not to me 15:04:00 nope, it's still too long 15:04:10 ais523, needed two mini pages side by side, one contained a display style formula, which some tests showed was responsible for causing it to be put below the other mini box 15:04:11 I'm trying to make _! look the same as the n! in the definition 15:04:12 _! : ... 15:04:13 n! = ... 15:04:24 so I'm doing \underline{\phantom{n}}, but the first line is too long 15:04:26 so I had to move it up using negative spacer 15:04:41 alise: oh, try \phantom{$n$} 15:04:46 that's a math n, not an italic n, presumably 15:05:20 ais523, err? does phantom inside math mode exit math mode? 15:05:46 AnMaster: I don't actually know; is it a math mode command, though? 15:06:16 ais523, I think it works in either 15:07:03 ais523, and since I normally use LyX, and LyX has support for phantoms without needing "insert tex code" it may abstract such things away 15:07:05 hmm, apparently so 15:07:48 alise: maybe it's a kerning issue? I can sort-of imagine that \phantom would block kerning, and some typefaces will attempt to kern together any two italic characters 15:09:34 what exactly is alise trying to do? 15:10:04 I mean, I saw what he said, but he didn't say what part of it should align 15:10:07 ais523: ! isn't italic 15:10:11 _! : ... 15:10:11 n! = ... 15:10:13 AnMaster: 15:10:14 hmm 15:10:15 _! : ... 15:10:17 n! = ... 15:10:22 _ and n should have same width 15:10:22 alise, if you want those to align on the : and = ? 15:10:25 i.e., ! and ! should align 15:10:26 hm 15:10:30 AnMaster: no, I already handle that 15:10:49 alise, I was about to suggest eqnarray environment or something 15:10:57 yeah, doing that 15:11:08 alise, also since n and _ are not in monospace there I assume? 15:11:21 then it might be hard to make them equal width 15:11:46 they're not 15:11:49 they're italicy variably thingy 15:11:59 AnMaster: why are you even suggesting monospace for a TeX-typeset document? 15:12:02 it's not an actual _ character 15:12:06 in the tex 15:12:07 ais523, I'm not 15:12:08 i'm trying 15:12:12 \underline{\phantom{n}} 15:12:17 but that's wider than n, somehow 15:12:20 perhaps the underline has padding 15:12:22 heh 15:12:38 alise, perhaps, why not add a negative spacer in there to compensate! 15:12:47 AnMaster: because that is missing the point of TeX 15:13:05 hmm, LyX goes out of its way to make it hard to make semantically incorrect documents, but it seems that people still manage somehow 15:13:17 AnMaster: because i'd have to get it totally exact 15:13:30 ais523, I would quote fizzie from yesterday on that, but I'm too lazy to grep the log file 15:13:34 -!- FireFly has joined. 15:13:39 ais523, wrt. negative spacers and latex that is 15:13:59 even positive spacers are normally semantically incorrect 15:14:03 ais523, also I have used mono space in a LaTeX document, for a code listing 15:14:11 also, this is texmacs; so almost identical but slightly different typesetting algo 15:14:16 but that is the only case I can think of 15:14:17 i imagine it's the same in tex thogh 15:14:19 *though 15:14:33 alise, why not LyX btw? 15:14:46 (/me remembers the Wikipedia advice to use positive space and negative space that cancel each other out to prevent LaTeX math rendering as HTML, and force it to render as an image, even if people have set their preferences to render as HTML) 15:15:05 AnMaster: because sometimes, it's faster not to use an IDE 15:15:10 whether for programming, or for typesetting 15:15:18 ais523, he said texmacs, not emacs 15:15:33 and texmacs has the same idea as lyx basically 15:16:05 -!- alise_ has joined. 15:16:11 AnMaster: because lyx is harder to use 15:16:16 however, my impressions of TeXmacs last I tried it were: sluggish user interface, blurry font rendering when editing (this might have been a fontconfig issue, I don't know), buggy import from LaTeX (this might not matter so much), much fewer features than LyX or similar 15:16:17 Someone paste the last few lines to me 15:16:17 got disconnected 15:16:26 (/me remembers the Wikipedia advice to use positive space and negative space that cancel each other out to prevent LaTeX math rendering as HTML, and force it to render as an image, even if people have set their preferences to render as HTML) 15:16:26 AnMaster: because sometimes, it's faster not to use an IDE 15:16:26 whether for programming, or for typesetting 15:16:26 ais523, he said texmacs, not emacs 15:16:27 and texmacs has the same idea as lyx basically 15:16:44 alise_, the line above that was where I asked "why not lyx" 15:16:50 (and you answered that) 15:17:03 The interface is not really sluggish for me, your display sucks, I don't care about LaTeX import, and LyX is a pain to use 15:17:03 alise_, I never found LyX hard to use once you learnt it 15:17:14 It looks exactly like .ps TeX output to me 15:17:16 further, I found it well worth the time it took to learn LyX 15:17:41 The interface is not really sluggish for me, your display sucks, I don't care about LaTeX import, and LyX is a pain to use <-- I said last I tried it, which might have been a year or two ago 15:18:01 in LyX: click click click click click click click click 15:18:15 alise_, no? there are keyboard shortcuts for everything in LyX reallyt 15:18:17 really* 15:18:27 and it shows them in the status bar when you select a command 15:18:29 right/center/left aligned eqnarray in the middle of the doc in texmacs: M-& 15:18:40 -!- alise has quit (Ping timeout: 252 seconds). 15:18:51 Go on then, what is the shortcut? 15:19:14 alise_, Ctrl-M, Alt-M T E 15:19:27 alise_, I had to look up the latter, because I very rarely use it 15:19:35 the former, "insert math formula" is ctrl-m 15:19:36 AnMaster: the leading control-M isn't needed for alt-M shortcuts 15:19:38 and I know that 15:19:50 it's harmless to give it, but you can omit it as an abbreviation 15:19:51 ais523, oh? well, since I so rarely use eqnarray 15:20:02 I haven't bothered learning that one 15:20:07 whoa, flood 15:20:09 everything after what-is-the-shortcut took ages 15:20:09 alise_, ? 15:20:16 ah 15:20:19 AnMaster: : he's lagging 15:20:23 right 15:20:39 and that second : was a tab-complete fail, assume it's a stray newt or something 15:20:41 and I'm not going to be like ehird and complain about other people lagging :P 15:20:41 Alt-M T E. Well, may be acceptable. 15:20:42 LyX has a windows binary, right? 15:20:59 ais523, XD 15:21:05 alise_, iirc yes 15:21:44 alise_, lyx tends to have somewhat emacs-y key bindings for some things, but you can configure that somewhere iirc 15:22:23 of course, if you haven't yet gotten used to lyx, keyboard shortcuts won't help you, it *does* take a while to learn 15:23:11 -!- alise has joined. 15:23:18 Maybe I'll try LyX next time, then. 15:23:32 I really ought to name my language someyear. 15:23:34 alise_, but yes you can always look at the status bar after clicking almost any button to see what the command is to insert that. And you can type \LaTeX commands directly in math mode (lyx will try to display it WYSIWYW style if it knows the latex command in question) 15:24:17 interestingly opening preferences in lyx shows (dialog-show prefs) 15:24:33 I wasn't aware lyx used anything lispish internally 15:24:46 AnMaster: you mean WYSIWYM? 15:24:56 ais523, ah yeah, thought it was "want" 15:24:57 AnMaster: it uses sexp notation for commands, I think 15:24:59 right "meant" 15:25:02 *WYSIWYG. WYSIWY[WM] is a lie. 15:25:16 -!- alise_ has quit (Ping timeout: 252 seconds). 15:25:29 alise: it's not pure WYSIWYG; for instance it shows nonstandard-width spaces with blue underscores with ticks on the end, rather than as blank space 15:25:30 alise, well, lyx is not WYSIWYG, because it shows it in a screen friendly font rather than exactly what it will look like 15:25:36 (for example) 15:25:47 and what ais523 said 15:25:58 also, it typesets relatively terribly, about as well as Word 15:25:59 What you see is not even what you get. 15:26:03 plus floats are shown as boxes with a thingy saying it is a float at the top 15:26:05 (although TeX typesets the finished product) 15:26:08 ais523, what does? lyx? 15:26:12 well maybe 15:26:14 AnMaster: yes, I mean onscreen 15:26:17 ais523: Oh snap. 15:26:40 alise, it can be set to instant preview math formulas though 15:26:55 when you leave the equation it will render it, takes a split second 15:27:05 not on by default iirc 15:27:08 AnMaster: so can auctex for emacs (that mode is a work of art, btw) 15:27:13 (possibly the nicest typesetting environment ever created) 15:27:17 hm 15:27:22 alise, why aren't you using that then? 15:27:42 because i can't be arsed to set up latex. and i don't really want to write a document template every time I want to ogle at how pretty my language is 15:27:52 speaking of can't be arsed to set things up on windows, 15:27:57 How should I install Ubuntu given that all I have is a costly 3G stick connection? 15:28:04 Ship-It is not an option. 15:28:10 alise, well, lyx would need latex installed somewhere it can run it 15:28:21 AnMaster: Oh. TeXmacs is self-contained. 15:28:35 (It isn't actualy TeX. Or Emacs.) 15:28:36 alise, perhaps the lyx windows installer includes latex? 15:28:37 *actually 15:29:40 AnMaster: put it this way: alise has tools that work, why would you force him onto different tools even if those also work? 15:29:42 http://www.gnu.org/software/auctex/img/preview-screenshot.png ;; yum 15:29:42 alise, I always use pdftex, it renders nicely and you can add a command to the document preamble so it does fancy microtyping with visually straight margins and what not 15:29:47 ais523, I didn't 15:29:55 he is free to choose 15:30:07 ais523: Well, I'll certainly try LyX now. 15:30:28 I've used it; it seems to be decent enough for what it does, but has a few annoyances 15:30:35 ais523, such as? 15:30:37 such as no easy way to type the prime character, as in a' 15:30:47 ais523, eh? in math mode? 15:30:52 AnMaster: yes 15:30:54 pressing ' doesn't work 15:31:13 ais523, it renders as a primelooking one in the instant preview for me 15:31:14 you have to do M-m e M-m ' 15:31:25 AnMaster: oh, but as a plain quote in the ordinary window? 15:31:29 how... ridiculous 15:31:34 -!- alise_ has joined. 15:31:39 Last 30 lines or so? 15:31:41 because there is a way to do a superscripted prime that renders as one in LyX 15:31:43 ais523, seems so 15:31:45 alise_: I'll pastebin 15:31:48 Not just since my last utterance; I probably missed things. 15:32:05 is clog broken? 15:32:29 ugh, sorry, this internet's being insanely slow today for some reason 15:32:36 well, this connection 15:32:37 ais523, well, they *could* be different, but to me they look pixel identical. But yes when editing they look different 15:32:49 http://pastebin.ca/1830126 15:32:54 AnMaster: No, but that's /two/ page loads, and this connection is... well... 15:33:02 also, this mouse is doing so badly I even just used control-C control-V to paste 15:33:09 ais523, you could also type \prime 15:33:13 which might be faster 15:33:15 umm, http://pastebin.ca/raw/1830126 for convenience 15:33:23 AnMaster: wouldn't you have to unescape the \ 15:33:32 I thought \ means \ (as in, $backslash$) in LyX 15:33:37 and it only did formatting if you told it to 15:33:37 ais523, ? In math mode it doesn't 15:33:45 ok, that's just silly 15:33:50 ais523, it shows auto completion for \commands in math mode even 15:33:52 very nice 15:34:01 especially as there's a perfectly sensible shortcut for command-introducer \ 15:34:06 although I forget what it is, offhand 15:34:09 -!- alise__ has joined. 15:34:16 ais523, you mean insert a tex box? 15:34:21 ais523, but looking at the view source I see: $ $$p^{\prime}'$ 15:34:26 -!- alise has quit (Ping timeout: 252 seconds). 15:34:28 So, 22.[15:27] How should I install Ubuntu given that all I have is a costly 3G stick connection? 15:34:29 but yes, that renders as two prime symbols 15:34:31 as far as I can tell 15:34:51 alise__: I'm not sure that you easily can 15:35:12 do you live near enough to someone with a stock of them to just ask them for one? 15:35:18 um, stock of CDs 15:35:19 AnMaster: does lyx let me write Aa(a->a) and get {forall} {greek a} ({greek a} {right arrow} {greek a})? 15:35:20 alise__: :( 15:35:21 ais523, anyway typing ^\prime was faster than the key combo you suggested 15:35:32 alise__, *tries* 15:35:46 ais523, what would the A do? 15:35:51 alise__: No. I could get to Birmingham in some hours, though, and stalk you! 15:35:53 err 15:35:53 AnMaster: you're turning me more and more off LyX as time goes on here 15:35:54 alise__, ^ 15:35:59 Presumably you have at least one Ubuntu cD. 15:36:02 alise__: nickping fail 15:36:07 A gives forall symbol 15:36:10 alise__: two, but they're both rather old versions 15:36:14 a gives alpha 15:36:15 alise__, \for completed the forall symbol here 15:36:24 AnMaster: A is faster 15:36:33 Does a give greek alpha? 15:36:38 Wow, this is the most confusing maze of nickpings ever. 15:36:49 alise__, why would it auto complete plain letters? 15:36:49 AnMaster: Does -> give right-arrow? 15:36:51 alise__: it's alt-M G a in LyX 15:36:57 for the greek a 15:36:59 tab isn't autocomplete 15:37:02 AnMaster: Does -> give right arrow? 15:37:22 -!- alise_ has quit (Ping timeout: 252 seconds). 15:37:27 alise__, in math mode? No, but AltGr-i seems to insert the latex one 15:37:42 Then LyX is useless to me. 15:37:54 I use TeXmacs because it lets me mainly type ASCII-ish stuff and get what I want. 15:38:06 alise__, well sure, if you don't like the exact key bindings 15:38:07 *shrug* 15:38:11 NN->NN^+{right arrow key}->a 15:38:14 gives 15:38:25 {blackboard N} {right arrow} {blackboard n with superscript +} {right arrow} {greek alpha} 15:38:26 alise__, does alpha give you a single alphpa? 15:38:28 alpha* 15:38:36 no, a does. 15:38:39 tab is not autocomplete. 15:38:42 tab is "variations" 15:38:48 alise__, on what? last letter? 15:38:52 for instance, | gives \vee 15:39:00 AnMaster: yes. 15:39:03 also, what if I want aleph instead? 15:39:08 alise__, how would one type that? 15:39:16 in TeXmacs 15:39:18 \aleph. it probably has some shortcut 15:39:26 also, @ is for circle stuff, so @@ = infinity, @+ = circled +, etc 15:39:27 alise__, not a? 15:39:30 it's actually very, very handy 15:39:34 AnMaster: maybe it is. maybe it's something else 15:39:39 aleph doesn't look like a 15:39:44 so it's probably not a 15:39:45 true 15:39:58 perhaps N 15:40:02 perhaps 15:40:10 -!- cpressey has joined. 15:40:17 alise__, what about an actual @? 15:40:51 Well, \text{@} works. 15:41:00 alise__, how verbose! 15:41:00 Which is actually \text@ 15:41:08 yes, very very verbose 15:41:09 A-$ also works for text. 15:41:12 A-$ @ right 15:41:17 I can just type a single @ 15:41:26 Now write infinity. @@ 15:41:30 Blackboard bold N. NN 15:41:34 + in circle. @+ 15:41:38 Right arrow. -> 15:41:55 Yeah, A-$ @ right is soooo horrible. 15:42:05 alise__, I wouldn't write @@, since it is on altgr here, that is not so easy as \infty 15:42:06 Especially as @ is /so/ /common/ in mathematics. 15:42:11 Of course, @ outside of an equation still produces @. 15:43:08 ais523, anyway, I find lyx have no major issues. A few small quirks sure. But then LaTeX itself has plenty of those too. And LyX does a reasonable job of producing a good result without a lot of fine tuning 15:43:21 AnMaster: the issue's mostly with the interface 15:43:28 I have no issues with the general concept, just the details 15:44:08 ais523, I would hate to edit in Computer Modern on a "normal" dpi desktop monitor 15:44:17 But you're okay with reading it? 15:44:23 Also, TeXmacs allows you to choose among fonts 15:44:24 Obviously. 15:44:31 alise__, well I wouldn't use CM unless I aim to print it 15:44:41 So choose another font. You are boring. 15:44:48 if it is primarily intended for on screen reading, I would use another font 15:45:34 alise__, my point was that I don't want WYSIWYG. I want to concentrate on the actual text and such first, and only at the end care about small formatting details 15:46:09 I don't feel like talking to you about this any more. 15:46:18 well, I have other things to do as well 15:46:45 I don't, but (nothing) is better than this. 15:46:51 [15:46] == #ω Illegal channel name 15:46:57 Fuck you, Freenode. 15:47:36 :P 15:48:09 ais523, if doing direct latex editing I found kile quite nice 15:48:23 auctex. No competition at all. 15:49:46 Microsoft Works is preinstalled on this computer. 15:49:47 Wow. 15:50:15 now you must use that instead! 15:50:18 Apparently Ctrl - = delete and Ctrl + is increase font size, but it's also its own inverse. 15:50:44 alise__, what? in TeXmacs? 15:50:50 how weird 15:50:52 No. 15:50:58 oh works? 15:51:00 In Microsoft Works Word Processor. 15:51:07 still weird 15:51:58 Works is awful 15:52:03 ais523: indeed 15:52:07 I know, I used to use it to some extent 15:52:09 ais523: Also, I implemented the Lambda Calculus of Continuations. 15:52:24 apart from the word processor; the computer came preinstalled with Works - word processor, and Word 15:52:51 ais523: Not interested? 15:53:25 alise__: vaguely 15:53:35 I was busy argumenting in two other channels, so was distracted even from a nickping 15:53:39 ais523: Hey, it's for Feather. 15:53:44 yay 15:53:53 what did you implement it in? Haskell? 15:53:59 Yes. 15:54:01 I'll pastie. 15:54:03 alise__, how well does bibtex integrate with TeXmacs? 15:54:30 AnMaster: TeXmacs is not tex at all. 15:54:49 alise__, well, what does it use for a replacement of bibtex then? 15:54:57 AnMaster: Dunno 15:55:46 ais523: http://pastie.org/861515.txt?key=n5pnirguwnncksdk7homzq. So, we have two main structures: 15:55:57 f(x,k) and (\x,k.E) 15:56:13 There are constraints: f must be a lambda expression, not another application. 15:56:16 erm 15:56:25 alise__: that's nice and short 15:56:28 There are constraints: in f(x,k), f, x and k must be lambda expressions, not applications. 15:56:55 In (\x,k.E), E must be an application. (I neglected to include this in my implementation) 15:57:03 (LCC t should be LCC App). 15:57:23 So, we have: no nested applications, and forced continuation "arguments". 15:57:39 It has the interesting property of making application a triadic operation (since k isn't "really" an argument) 15:58:01 Anyway, it's basicaly just the lambda calculus, except continuation-passing style is enforced. 15:58:16 I'll probably write a CPS-converter for it. 15:58:40 ais523: A disadvantage of my representation is that I can't pretty-print it without a lot of fuss. 15:59:22 hmm, yes 15:59:38 so what you've implemented is LC+continuations, but restricted such that CPS is enforced? 15:59:42 ais523: But that's no issue with the actual calculus. 15:59:46 Not +continuations. 15:59:50 Continuations are done with CPS. 16:00:14 It's basically a variant of the lambda calculus that replaces nested application with continuation-passing style. (But CPS isn't inherent in the model; you don't /have/ to "normally" pass things to k.) 16:00:19 My god, Works is still around? 16:00:25 cpressey: apparently so 16:00:27 (As in, you don't have to write "normal" functions that don't do stupid shit with k.) 16:00:31 IIRC, Microsoft are trying to get rid of it though 16:01:03 The first hit on Google is under microsoft.com/uk/ 16:01:16 Maybe it's a British thing. 16:05:24 -!- oerjan has joined. 16:07:15 Hypothesis: It is impossible to be comfortable. <-- it is possible for short moments, although only by accident, and if you try to prolong it it backfires horribly. at least that's my experience. 16:07:28 HTH 16:07:54 cps (LApp f x) k = cps f $ Lam $ \k' f' -> App k' $ cps x $ Lam $ \k'' x' -> App f' x' (Lam (\k''' r -> App k r k''')) 16:07:55 I made an error. Dammit. 16:07:58 alise__: I haven't had the time to encode the theory of rationals in it, but I do have in my proof-checking language a proof of a statement in Peano arithmetic: http://dpaste.com/169965/ 16:08:06 You may commence talkin' smack about it. 16:08:09 oerjan: I mean physical comfort, not mental-anguish-comfort. :P 16:08:32 alise__: i mean both 16:08:38 cpressey: Well look at that, you have specification of theorems now :P 16:09:07 alise__: It's just for clarity; itrepeated in the body of 16:09:12 the proof anyway 16:09:35 Or rather, its the first step of the proof 16:09:44 cpressey: that doesn't look like the Peano axioms that you've assumed at the start, but rather something else 16:09:54 and those feed on each other. for example my mental comfort is now helped by chatting on the pc. but eventually i'll tense up physically from doing so. 16:10:05 also, I love that qed is a keyword 16:10:08 ais523: I'm kind of leaving out the ones I don't need. Actually I don't need the zero? 16:10:11 I /very/ much like proof/qed as structures, though. :-) 16:10:21 hmm yes, looks like you don't 16:11:05 Kind of disturbing that it only relies on a fragment of Peano arithmetic, but it is very simple I guess 16:11:52 I'm working on another one which is more practical: prove that find(x,tree) always returns true or false if tree is a proper tree. That'll probably require extending this syntax with cases 16:12:09 like, case tree -> branch A B ... case tree -> leaf X ... 16:12:15 it's actually Qed. 16:12:16 oerjan: i think you have depression :P 16:12:16 well 16:12:17 or are just /the/ /most/ cynical person there is 16:12:23 Which means non-deterministic rewrite rules :/ 16:12:38 oerjan: what do you think of ultrafinitism? :D 16:12:38 cpressey: no, not really 16:12:45 find x (branch A B) -> ... 16:12:50 find x (leaf X) -> ... 16:12:52 same rewriting thing 16:13:01 Well, not "non deterministic" so much as "ambiguous outside the presence of cases" 16:13:15 I mean, to describe what is a tree 16:13:29 tree -> (leaf X); tree -> (branch A B) 16:14:13 if you rewrite App [Expr] | Symbol String | Free String 16:14:13 cpressey: easy 16:14:14 have it be a predicate 16:14:14 App [Symbol "find", Free "X", App [Symbol "leaf", Free "X"]] 16:14:14 vs 16:14:14 tree (branch A B) -> true 16:14:14 tree (leaf X) -> true 16:14:15 tree X -> false 16:14:17 alise__: (1) quite possibly. (2) don't really know what it is. 16:14:44 -!- BeholdMyGlory has joined. 16:15:42 alise__: Not so easy; to have predicates would require building a theory of booleans 16:16:06 -!- alise has joined. 16:16:29 Which clearly could be done, and might be done first to make this easier 16:16:32 oerjan: a crazy, crazy mathematical position: http://www.math.rutgers.edu/~zeilberg/mamarim/mamarimPDF/real.pdf 16:16:43 -!- MigoMipo has joined. 16:16:44 that everything that cannot exist in this universe - like sufficiently big integers - does not exist 16:16:48 But then, I wonder if I would have to use predicates to prove theorems about my theory of booleans :P 16:16:53 yay 16:17:06 correspondingly, that "real" analysis is completely bunk 16:17:23 Or at least, that it does not "exist" 16:17:25 and that godel was wrong because all the impossible proveys are in fact merely meaningless 16:17:40 well not "wrong" but 16:18:08 (ii) the traditional real line is a meaningless concept. Instead the real REAL `line', is neither real, 16:18:10 (ii) the traditional real line is a meaningless concept. Instead the real REAL `line', is neither real, 16:18:11 oops 16:18:13 (ii) the traditional real line is a meaningless concept. Instead the real REAL `line', is neither real, 16:18:16 When a mathematican says "exist" they mean something quite specific 16:18:19 nor a line. It is a discrete necklace! In other words R = hZp, where p is a huge and unknowable 16:18:21 Oh "real" too :) 16:18:30 (but xed!) prime number, and h is a tiny, but not innitesimal , `mesh size'. 16:18:37 cpressey: the worst thing is /this guy is a professor/ 16:18:48 -!- alise__ has quit (Ping timeout: 252 seconds). 16:19:06 alise: That's bad, but there are worse, much worse, out there. This guy, being a mathematician, is relatively harmless. 16:19:12 Since mathematics is irrelevant. 16:19:16 (Sorry, I couldn't resist) 16:19:37 :-) 16:19:39 * oerjan beats cpressey with the saucepan of doom ===\__/ 16:20:23 * cpressey 's skull goes "BLONG" 16:20:31 alise: planck length anyone? 16:20:32 ais523: bleh, /you/ implement CPS for that calculus :P 16:20:40 oerjan: Planck length... OF THE REALS 16:21:29 For all reals R1 and R2 there exists a real R3 where R1 < R2 < R3. And by "exists" I mean "I CAN TOUCH IT" 16:21:41 Damn, scambled the order of those. 16:21:48 *R1 < R3 < R2 16:22:28 ais523: so, do you know what the bootstrap progam will look like for feather? 16:22:47 alise: not yet; I tried to write it in Scheme, but went mad 16:22:48 Also, Kronecker was wrong. God invented the *primes*. The integers I blame on the devil. 16:22:50 well R3 can be taken rational. although you still get problems with the sufficiently big integers. 16:23:05 ais523: well clearly it must be written in the lambda calculus of continuations! 16:23:05 cpressey: clearly then addition is demonic 16:23:16 cpressey: Ooh, a number system based entirely on primes? Tell me more 16:23:30 oerjan: that's the thing though, ultrafinitism means that not even infinite rationals exist 16:23:38 because you run out of integers to put on either side 16:23:42 alise: the problem was an infinite loop in trying to define "atoms", which is the next stage in the bootstrapping 16:23:57 alise: Well they have this remarkable property that, when you multiply them together, you can get any integer you want, so long as it's black. 16:24:01 ais523: hmm... atoms as in symbols, I presume 16:24:05 alise: yes 16:24:13 they're basically objects that can be compared to other atoms 16:24:15 atoms aren't the same thing as symbols :) 16:24:19 ais523: clearly you need renormalization :D 16:24:22 ais523: easy: 16:24:23 alise: atom as in Prolog 16:24:34 alise: the issue is making them forward-compatible with actual Feather atoms 16:24:46 you can use a fake-object at the start of the bootstrapping, but not later 16:24:58 symbol : a = (() -> ((b = (b -> bool)), a)) 16:25:02 also, the next bit is basically impossible to explain because a) I don't know how it works myself, and b) it's complicated anyway 16:25:12 alise: doesn't work 16:25:21 and the reason it doesn't work is, there's no implementation for the symbol you could use 16:25:35 That is, symbol is a function taking any old object (), and returning a pair of (a function whose type is (a function taking an object of the type of this function, and returning a boolean)), and another function of the same type as symbol. 16:25:44 ais523: well, symbols are identified by their name, right? 16:25:49 no two symbols have the same name 16:25:59 then make them lists of church numerals 16:26:18 yep, you can do that; but how do you return it using that typing? 16:26:44 Return it? What do you think this is, a library book? 16:26:55 * cpressey detonates an atomic symbol 16:26:57 ais523: well, you don't 16:27:04 you just implement: 16:27:09 'foo -> foo 16:27:15 because, presumably, your input is a string of characters 16:27:17 i.e. list of church numerals 16:27:19 so you have it right ther 16:27:21 implementing 16:27:26 sym= : symbol -> symbol -> bool 16:27:57 * alise runs into seeming issue with his LCC definition: typed magic means that, I think, I can't write a parser for LCC a :( 16:28:43 alise: typeclass restriction on a maybe? 16:29:06 (just a wild guess) 16:29:14 oerjan: hmm? 16:30:07 alise: say when deriving Read instances of things of the form T a, you frequently get the requirement that a also is a Read instance 16:30:21 -!- alise_ has joined. 16:30:25 s/things/types/ 16:30:27 everything said after (just a wild guess)? 16:30:35 alise: say when deriving Read instances of things of the form T a, you frequently get the requirement that a also is a Read instance 16:31:01 -!- fax has joined. 16:31:49 ah. 16:32:17 ais523: I'm writing a syntax for the Lambda Calculus of Continuations 16:32:23 alise_: this doesn't actually work, but http://pastebin.ca/1830205 16:32:29 that's the start of an attempt to implement Feather 16:32:44 if you run it, you get an infinite loop, due to the failed attempt to implement everything in terms of everything else 16:32:49 it'll provide sugar for the most common case of application 16:32:53 so e.g. this is what S will look like: 16:33:11 erm, never mind S 16:33:15 (haven't written sugar for that yet :D) 16:33:22 but, say you want to make a list 16:33:28 -!- alise has quit (Ping timeout: 252 seconds). 16:33:38 cons1 := cons 1; 16:33:45 erm 16:33:51 cons1 := cons 1 nil; 16:33:54 I can't even remember the difference between a fakeobject and an object offhand 16:33:55 cons2 := cons 2 cons1; 16:33:58 ais523: argh 16:33:59 shaddup 16:34:01 cons1 := cons 1 nil; 16:34:03 cons2 := cons 2 cons1; 16:34:09 cons3 := cons 3 cons2; 16:34:15 k cons3 16:34:26 that's k (cons 3 (cons 2 (cons 1 nil))) 16:35:20 I think K will be: 16:35:45 \x. <- (\y. <- x) 16:36:07 <- is bound to the most recent explicit lambda-abstraction's return argument if a name wasn't provided 16:36:09 so I think S would be 16:36:38 \x. <- \y. <- \z. xz := x z; yz := y z; r := xz yz; <- r 16:37:16 ais523: does that seem like a reasonable syntax to you? 16:37:17 hmm, I just realised my definition is incorrect, in that continuations shouldn't get continuation arguments themselves 16:37:18 ideally, it'd be possible to implement feather in it 16:37:19 hello! 16:37:31 ais523: it lets you do naming quite nicely 16:37:38 alise_: vaguely reasonable, yes 16:37:39 foo := id (\x. ...); 16:37:39 hi fax 16:39:21 cwcc := id (\f. r := f <-; <- r) 16:39:26 have a problem 16:39:35 that is the same thing as just (\f. f <-) lol :P 16:39:43 I need to (today and tommorow) solve some problems 16:40:14 ais523: you'd do IO by making the final continuation not in the lambda calculus of continuations, instead in the host, and returning a lazy stream of church numerals 16:40:15 but what will probably happen is I just sit on the computer doing nothing 16:40:49 fax: akrasia! or, well, the case more commonly known as procrastination 16:41:39 I need to solve lots of ODEs so that I am able to do it quicky and accurately (REALLY USEFUL SKILL!!) 16:42:13 my foot 16:46:46 -!- alise has joined. 16:46:48 http://us.metamath.org/mmsolitaire/mms.html 16:46:50 metamath solitaire 16:47:24 -!- alise_ has quit (Ping timeout: 252 seconds). 16:47:50 alise have you see sokoban in coq? 16:48:00 playing the game <=> proving a level has a solution 16:48:02 that one you wrote? 16:48:07 I didn't write it 16:48:10 (i stalked all your blog :P) 16:48:11 ok 16:48:12 then no 16:48:38 04:39:47 I'm not convinced that (\x. f x) is the same function 16:48:38 04:40:04 it certainly isn't in a strict lang if determining the value of f has side effects 16:48:48 it's not even true in haskell 16:48:57 haskell isn't pure though 16:48:59 cf seq 16:49:11 and it has the most evil thing of all 16:49:18 unsafe 16:49:19 RECURSION! 16:49:21 Perform 16:49:24 IO! 16:49:24 and 16:49:24 undefined! 16:49:27 fax: *GENERAL recursion 16:49:30 seq (\x -> undefined x) is different from seq undefined 16:50:07 fax: recursion is not the problem for eta reduction though 16:50:17 hm? 16:50:35 eta reduction : identifying \x -> f x with f 16:51:11 oh right I understand 16:51:11 it's consistent with pure lambda calculus, which can do recursion using the y combinator 16:51:21 -!- kar8nga has joined. 16:51:55 ais523: i have a real live copy of word 2007 here, let's see who was right about it 16:52:11 alise: metacontext? 16:52:23 as in, who said what to be right or wrong? 16:52:38 I said it probably isn't so bad, you said it's horrible 16:52:51 * fax needs help 16:53:06 btw there is an evaluation order called superstrict or something, which solves the problem of \x -> f x being f by actually evaluating f inside the lambda :) 16:53:17 that's sounds scary 16:56:38 oerjan: I used that (where legal under the as-if principle) in at least one of my Underload interps 16:56:49 for optimisation purposes 16:56:53 -!- zeotrope has joined. 16:56:55 hmm, or was it an Underlambda interp? 16:57:42 flit 16:57:56 flit? 16:58:10 `define flit 16:58:21 I know what it normally means, but it doesn't seem to make sense in this context 16:58:22 * a sudden quick movement \ * move along rapidly and lightly; skim or dart; "The hummingbird flitted among the branches" \ * a secret move (to avoid paying debts); "they did a moonlight flit" 16:59:00 I like Word 2007's equation editor 16:59:04 ;_; 16:59:07 clearly the second meaning is intended 16:59:24 Like flip but less upside-down; like blit but more fly. 16:59:53 flit would be a god name for an esolang 17:00:08 *good 17:03:43 -!- jcp has joined. 17:09:11 fax: constructivist metamath! 17:09:19 -!- tombom has joined. 17:09:21 -!- tombom has quit (Changing host). 17:09:21 -!- tombom has joined. 17:10:43 ?? 17:11:21 my proposal is more modest 17:11:23 fax: imagine metamath, but constructivist 17:11:33 it would be sweet 17:11:44 alise, do you want to do this? 17:11:49 and I mean literally do this 17:11:55 i think i do 17:12:03 it would certainly be cool. 17:12:27 I think so too 17:12:37 define this though 17:15:52 "filt" would be language with no explicit looping, but data being passed between components? 17:16:15 flit, not filt :P 17:16:38 Ah. 17:17:21 `define filt 17:17:22 * La Federazione italiana lavoratori trasporti il sindacato dei lavoratori iscritti alla Cgil che operano nel campo dei trasporti e della viabilit. \ [13]it.wikipedia.org/wiki/Filt \ 17:17:45 Molto relevante 17:22:47 there is also sv:flit 17:22:58 which I'm not completely sure of how to translate to English 17:23:01 `translate 17:23:08 var sl_select, tl_select, web_sl_select, web_tl_select;var ctr, web_ctr, h;var tld = ".com";var sug_lab = "Contribute a better translation";var sug_thk = "Thank you for contributing your translation suggestion to Google Translate.";var sug_exp = "Contribute a better translation:";var dhead = "Dictionary";var dmore = "View 17:23:10 err 17:23:14 how does one use it? 17:23:33 `translate sv en flit 17:23:35 En flit 17:23:38 err no 17:23:49 `translate en flit 17:23:52 A prolific 17:23:56 no! 17:24:35 well google translate gives: 17:24:37 "noun 17:24:37 1. DILIGENCE 17:24:37 2. INDUSTRY 17:24:37 3. ASSIDUITY 17:24:37 4. APPLICATION" 17:24:46 the second one seems completely wrong 17:24:52 the third one I have no clue what it means 17:25:00 the last one also seems suspect 17:25:38 oh, I know the concept you mean 17:25:46 "industry" has two meanings in English 17:25:50 oh? 17:26:00 `translate no en flid 17:26:01 so all 4 words give much the same meaning 17:26:02 no one industry 17:26:10 oerjan, I think I used it wrong 17:26:15 `translatefromto no en flid 17:26:17 diligence 17:26:25 AnMaster: in multiple words, think "tendency to work hard" for the second meaning 17:26:35 ais523, isn't that the meaning for the first one? 17:26:55 hey guyses :D 17:27:01 ais523, and that would be sv:flitig, flit is as google said a noun 17:27:08 the more common meaning is a collective noun for all the companies/factories that manufacture things 17:27:18 ais523, indeed 17:27:30 and "tendency to work hard" is a noun, as tendencies are nouns 17:27:49 fax: yeah i think constructivist metamath would be really awesome 17:27:57 especially if the proofs were actually in executable form 17:28:06 AnMaster: i think the second one uses a more original meaning of industry 17:30:08 Heh 17:30:19 I thought that was some kind of government slogan 17:30:33 DILIGENCE! INDUSTRY! ASSIDUITY! APPLICATION! 17:30:35 No One Industry, or Tendency To Work Hard? 17:30:40 oh :D 17:31:12 Adherence to these principles makes our society strong! 17:31:17 anyway, I think I know what sv:flit means 17:31:22 first word of Swedish I know! 17:32:15 ais523: from now on, you can choose from a veritable smörgåsbord of them 17:34:03 fax: it seems to me that for simple constructivist proofs, a list of the theorems/axioms (given standard proofs/values) you use along with their types is the best way of presenting a proof 17:34:18 And will help us solve a large number of ODEs in a short amount of time! 17:34:29 cpressey: wait, what? 17:34:43 assuming ODE = ordinary differential equation, that makes no sense 17:34:47 unless it's some sort of pun I don't getg 17:34:48 *get 17:35:04 ais523: i think it's a hint to fax 17:35:09 along with the type of the resulting composition 17:35:28 ais523: fax said e had to do a bunch of them a while ago 17:35:35 ah 17:35:52 ais523: I was riffing on what fax was saying earlier 17:35:53 also, whats with the Agoranese? 17:36:06 fax: + nested proofs, perhaps that's tc 17:36:07 the nose of agora 17:39:57 Thank you ais523, I am now exactly as confused about feather as I was before. 17:40:08 cpressey: so am I 17:40:15 There are fake things in it. I can tell that much. 17:40:21 Feather is ALL FAKE 17:40:22 For some meaning of "fake" 17:40:26 actually, that's an implementation technique 17:40:28 ais523: _clearly_ you need renormalization 17:40:39 Drat, so even the fake stuff is... fake 17:40:42 yes 17:40:57 well, no, because the details of the implementation are relevant to the actual lang 17:41:00 fake(fake(X)) -> fake(X) 17:41:03 hmm, I may have to leave again, my head's hurting 17:41:21 exists P. Component(Feather,P) & Fake(Fake(X)) 17:41:27 -> exists P. Component(Feather,P) & Fake(X) 17:41:35 So yes, there are fake things in Feather. 17:41:40 Even if they're not actually in it. 17:41:42 Q.E.D. 17:41:54 OK, so "relevant, but somewhat arbitrary" =/= fake, true 17:42:28 Fake(Fake(X)) -> Fake(X) is justified because a fake thing is fake. The fact that the thing was already presumed to be fake is irrelevant. 17:42:29 If a fake fake thing isn't fake, then what? 17:42:48 and how is something fake, true? 17:42:49 basically, a fakeobject is something that obeys a subset of the restrictions necessary to be considered an object 17:42:59 Fakeobjects, although fake, are actually real? So they're legitimate objects? No. 17:43:01 Feather, to me, sounds like a way to fold nondeterminism. For some ill-defined notion of "fold" 17:43:01 Nothing fake is true, obviously. 17:43:05 Now go make a logical system where ~~p -> ~p. 17:43:07 fakeobject != object 17:43:26 I must now goify for... 15 minutes? Do that logical system. Nao. 17:43:31 cpressey: that's an interesting analogy; and about as close to the truth as anything else about Feather that I've managed to put into words 17:44:07 cpressey: the poker sense 17:46:32 feather is folding nondeterminism because instead of giving a variable its multiple possible values at once, you give it them later on 17:46:39 so all previous continuations in some way account for this 17:46:44 potential nondeterminism 17:46:45 bye now 17:49:33 bye 17:56:27 I'm still trying to wrap my head around the plain ol' logical system. Namely, how to state proofs about the properties of the booleans, without invoking boolean logic. 17:57:32 Like, assume A and B are finite. Then rewriting (and A B) always terminates in one of these normal forms: {true, false}. 17:57:51 *finite and boolean expressions. 17:58:11 ? 17:58:43 I need to prove that I've implemented "and" correctly! Clearly, such complex functions are not to be trusted without proofs 17:58:52 :( 17:59:08 (I'm not serious) 17:59:42 But figuring this out might give me insight on how to approach more practical proofs 18:00:19 cpressey, I don't understand.... 18:00:49 you want to prove that a term with type bool is a boolean? 18:01:34 fax: Ah, see there is where I am in different waters from you and alise. My terms don't have types. 18:02:34 maybe this is the problem :P 18:07:27 Lack of types shouldn't be a huge barrier. 18:07:45 http://www4.informatik.tu-muenchen.de/~schulz/WORK/e-examples.html 18:08:14 * fax thinks if you don't have a type system you will implement it 18:08:38 which leaves the type system you choose to implement, up to you 18:08:43 -!- jcp has quit (Read error: Connection reset by peer). 18:08:48 oh well 18:08:51 "type" just means "set of values", anyway. 18:09:59 I'm having more trouble with variables 18:10:23 -!- jcp has joined. 18:11:17 cpressey, what about variables? 18:18:52 http://dpaste.com/170053/ <-- have cases now, but still need to tackle induction 18:19:28 fax: Well, I'm not sure. If I have variables, types look like predicates. If I don't, they look like nondeterministic/ambiguous rewrite rules. 18:20:30 It probably works out saner with the variables. But I'm finding it easier to do the other way. 18:22:21 The nice thing about this is, if you prove that terms of some form always reduce to some other form, you haven't just proved their type, you've also proved that they're total. 18:22:59 really?? 18:23:19 if you have a diverging term, can't you just prove it's anything? like a bool or a frog or whatever 18:23:32 (by baseless induction) 18:24:06 Well, if evaluating (and X Y) always results in a bool when X and Y are finite boolean expressions, then you know (and X Y) always results in *something*, therefore (and X Y) is total 18:24:19 If you have a diverging term, yes. 18:24:36 Hard to prove the type of a diverging term... 18:24:40 At least in this 18:33:27 grr, now i keep reading the word as "boo-lean" 18:33:32 Boo! 18:33:36 * cpressey tilts to the right 18:33:56 frightfullean 18:34:24 So, induction. Yeah. Fun stuff, teaching a computer how to do mathematical induction. 18:34:48 In MI one of your cases relies on the other. 18:34:54 Is it fair to call the base case a lemma? 18:35:03 of course 18:35:13 cpressey: an example of how better deptypes are 18:35:13 induction = recursion 18:35:23 you prove induction and the function it results in does recursion 18:35:32 induction is not recursion :P 18:35:57 Types are a crutch 18:35:59 the elaboration you did is good but "induction = recursion" is nonsense 18:36:57 Awkward to state it as a lemma because it only proves certain cases 18:36:59 yes i know 18:37:10 Awkward to have cases depend on previous cases too, though 18:37:20 cpressey, types are not a crutch, types are my wheelchair! I couldn't even move without them! 18:37:41 -!- alise_ has joined. 18:37:47 fax: I was going to say, dependent types are an ambulance :) 18:37:48 induction ~ recursion 18:37:49 is what i meant 18:38:11 now that's vauge enough for me not to be able to attack :P 18:38:44 cpressey: yes, they take suffering programmers and, after a while, where they undergo a change in their entire philosophy due to a near-death experience, they are converted into happy progammers 18:38:48 *programmers 18:39:09 too much dependent types and you'll need an ambulance 18:39:29 better dependent than delinquent 18:39:33 * alise_ bans oerjan from life 18:39:59 also it took me a while to realise that (exists (x:T). a) is a dependent tuple... 18:39:59 FWIW hardly anyone can actual program with dependent types 18:40:07 fax: MY LANGUAGE WILL FIX THAT 18:40:14 including alise :p 18:40:22 I don't think I can do the base case as a lemma in my system. A case isn't complete. So I think I have to go with cases being able to depend on previous cases 18:40:26 That's not SO bad, is it? 18:40:38 fax: why did you use sum rather than exists for the exists symbol btw? 18:41:03 convention 18:41:08 -!- ais523 has quit (Remote host closed the connection). 18:41:13 also 'exists' is a proof thing, Sigma is the data version 18:41:14 cpressey: forall P:Nat->*, P 0 -> (forall n:Nat, P n -> P (succ n)) -> forall n:Nat, P n 18:41:18 Prop vs Type 18:41:24 fax: why not have it polymorphic on both 18:41:26 -!- alise has quit (Ping timeout: 252 seconds). 18:41:41 i guess i'm still seeing proof elimination as an optimisation 18:42:22 fax: also is \sum or \sigma more correct? I think \sum since you have \prod for forall 18:42:30 although wait, doesn't that mean that \prod is the data version of forall? 18:42:33 Sigma 18:42:37 uppercase 18:42:42 er right 18:42:48 so \Pi is functions and \forall is just for profs 18:42:51 *proofs 18:43:07 which I think is taking it too far. which is why I think I disagree with separating \Sigma and \exists 18:44:13 feel free to tell me i'm stupid tho :P 18:44:30 fax: so \Sigma or \exists? 18:44:40 erm 18:44:40 I mean 18:44:43 fax: so \Sigma or \sum? 18:44:54 since we also have \Pi or \prod i bet sum 18:45:06 as the coincidence is a bit too much to accept 18:45:23 I don't know what \Sigma or \sum is 18:45:40 uh basically \sum is a big \Sigma like you use for sums.. 18:45:44 same with Pi vs prod 18:45:45 http://dpaste.com/170070/ <-- there's my stab at MI. 18:45:47 different unicode chars 18:46:19 cpressey: Not confluent! Waah! 18:46:25 * fax thinks "mathematical" induction should be primitive, and the other sort should be called "idiotic wrong induction" 18:46:52 wait, what /other/ induction does cpressey have? 18:46:56 alise_: What makes you think it's not confluent? Or are you complaining I haven't proved it such? 18:47:10 it... looks sorta nonconfluent :P 18:47:41 It pisses me off that I can't do (Foo (x:T). a) syntax myself 18:47:48 just (Foo T (\x. a)) 18:47:52 well 18:47:55 I guess 18:48:00 Foo_._ would work if you have (x:T) 18:48:01 | 18:48:01 |\ 18:48:02 presumably \exists and \forall are sums and products in a suitable category... 18:48:05 but (x:T) isn't anything coherent by itself 18:48:08 oh wait 18:48:09 I have no idea if "expand at least once on the LHS" and "expand to anything you want that's legal on the RHS" actually works, it only seems to, to me, right now. 18:48:13 Foo_(_:_)._ 18:48:22 oerjan: yes 18:48:23 duh 18:48:24 I have to prove properties about my proof system :/ 18:48:33 and then define Foo_._ ... but that's ambiguous I think 18:48:33 | 18:48:34 /< 18:48:44 myndzi: oh god not again 18:49:19 Any mathematicians here know anything about Galois connections? 18:49:20 Off by one too 18:49:22 fax: so data ∃(_:_)._ : (a : Set) → (P : a → Prop) → Set where right? 18:49:28 not -> Prop 18:49:30 -!- hiato has joined. 18:49:33 because you use exists to do the computable reals 18:49:36 oh no, off by one error \o/ 18:49:36 | 18:49:36 /`\ 18:50:06 oh wait Foo(_:_)._ isn't acceptable because i need to bind the var and stuff 18:50:52 myndzi: plus ten for that 18:50:53 No wait, case 2 doesn't rely on case 1 18:50:55 confused 18:51:02 galois connections rings a bell... 18:51:04 that can't be good 18:51:54 cpressey: just come to the dark side. 18:52:13 Uh, I need to prove boolexpr ~> boolean, that implies (not boolexpr) ~> boolean 18:52:38 obvious : ∀(P:Prop). Obvious P → P 18:52:50 Give me a proof that a certain proof is obvious, and I'll give you the proof! 18:52:54 Simple! 18:53:06 Obvious "P" -> P 18:53:21 fax: oh, good point 18:53:26 wait, no 18:53:29 it'd be more like 18:53:37 Obvious (x === x) 18:53:41 well forall x that is 18:53:52 hmm maybe you're right 18:57:03 It's not confluent in the sense that if you just used these rules in a rewriting system, and rewrote the term "boolexpr", you would generate infinite boolean expressions 18:58:14 But that is what "boolexpr" means (to me) (right now) (and this is loosely connected to Galois connections) and it certainly seems possible to ignore "runaway" cases when you give an explicit derivation. 18:59:25 Maybe those rules should be backwards, though. 18:59:33 true -> boolean, false -> boolean 18:59:57 That means true and false are indistinguishable 19:00:13 fax: I would use guillemets, though: 19:00:14 In a type system, they are. They're both booleans. I wanted a boolean result, great I have one. 19:00:15 obvious : ∀(P:Prop). Obvious «P» → P 19:01:04 The problem comes in that you don't want to rewrite them too early. Oh wait, I control that with the explciit derivation! 19:01:16 i'm not sure infinitely growing expressions is a problem for confluence, provided that at any step you can start reducing back down instead 19:01:22 *are 19:01:46 cpressey: a -> b doesn't mean that when you choose to rewrite a it results in b 19:01:50 it means that a is /just an alias/ for b 19:02:09 alise_: Not what it means to me 19:02:12 fax: I've been thinking about the interaction axiom 19:02:18 Not even sure what "just an alias" is supposed to mean in this context 19:03:19 axiom interact : Interaction pre final transform result → (ω:Worldish) → pre ω → (result → transform ω → Φ Worldish (λω₁ → final ω₁)) 19:03:24 (where capital phi was my dependent tuple) 19:03:25 or 19:03:26 axiom interact : Interaction pre final transform result → (c:Conditions) → pre c → (result → transform c → Φ Conditions (λc₁ → final c₁)) → (ω:World) → (conditions ω ≡ c) → World 19:03:30 both are unacceptable for the same reason 19:03:38 i.e., that the previous world/conditions don't become unacceptable 19:03:40 to use 19:03:44 so I need to eliminate them, somehow 19:09:34 -!- ais523 has joined. 19:09:39 "a little-known feature of the C standard: it explicitly states that pointer arithmetic is defined only for pointers belonging to the same memory block (i.e. statically or dynamically allocated array or structure). So when you write (char*)malloc(1) - (char*)malloc(1) you get undefined behavior" 19:09:41 ais523: verify? 19:09:49 apparently that's how the memory-safe C compiler works 19:10:01 alise_: yes, that's correct 19:10:08 ha 19:10:29 in fact, even comparing with < can cause a crash in some compilers 19:11:15 anyway, someone posted something in another channel that made Konversation segfault, apparently 19:11:22 I'm not sure whether to shout at them or congratulate them 19:11:46 * hiato chuckles to himself (c2h?) 19:12:35 ais523: hmm... this is making me want to write a pure c compiler 19:15:31 That's not such a little-known feature; it was mentioned on this very channel not many days ago. Though coincidentally only. 19:16:33 -!- alise has joined. 19:16:42 Why does -4^4 = -256 instead of 256? I'm only a high school student, but I know for a fact that -4^4 = 256 and not negative 256. 19:16:43 Is the typed ski + fix turing-complete? 19:16:55 http://community.wolframalpha.com/viewtopic.php?f=32&t=6774 19:17:00 fax: precedence 19:17:05 it's being parsed as -(4^4) 19:18:36 it was a quote 19:19:12 -!- alise_ has quit (Ping timeout: 252 seconds). 19:20:31 alise: it can do everything you need with church numerals can it not 19:20:44 so all recursive functions 19:20:55 oerjan: The point is that typed SK isn't turing-complete, presumably (because typed LC is not). 19:21:03 I'm talking idiotically typed, here 19:21:07 as in arrow and Base 19:21:19 The world’s best browser. Free download for Mac + PC. 19:21:24 So is idiotically-typed SKF complete? 19:21:26 they don't have a Linux version, though 19:21:32 ais523: Correct. 19:21:35 And? 19:21:38 the download page is specifically a Windows one, and they directed me to it 19:21:46 heh 19:21:55 I was messing about with browserchoice.eu 19:22:10 all their advertising doesn't say "os x and windows", but "mac and PC" 19:22:21 alise: hm iirc everything that can be typed in ML can be typed in simply typed lambda calculus with fix, just by duplicating things used with more than one type 19:22:39 vague recall as usual 19:23:28 anyone have that nice ~> symbol? 19:23:34 http://dpaste.com/170084/ <-- last cleanup for now. 19:24:00 ⇝ 19:24:03 is not so nice in my font 19:24:08 -!- kar8nga has quit (Remote host closed the connection). 19:24:14 -!- alise_ has joined. 19:24:17 no, it's just like --> 19:24:21 but the -- is wavy 19:24:38 ⇝ is the closest I can find 19:24:41 ais523: It is in the interest of both Apple and Microsoft to confuse people into thinking that the computer and OS are intrinsically bonded. 19:24:41 I can barely see the squiggling at this font size, but it's there 19:24:43 "rightwards squiggle arrow2 19:24:44 *" 19:25:02 Gregor: I suppose so 19:25:12 except then, why do Apple advertise Parallels? 19:25:16 Maybe it's just a latex thing 19:25:18 Gregor: More so Apple than Microsoft. 19:25:28 nah 19:25:32 pikhq: I would say about equal. 19:25:37 apple even have parallels on their apple store computers 19:25:42 Since Microsoft doesn't care *too* much so long as their OS is running on it. 19:25:46 you think microsoft would advertise mac compatibility? 19:25:55 apple are a hardware company, microsoft not 19:26:04 ais523: They don't advertize Parallels as something to run Linux on, they advertize it as if Windows is just as magically bonded to it as to a PC. 19:26:04 ok then, what about the => char? 19:26:07 that is also acceptable 19:26:10 Apple is first and foremost a hardware manufacturer, and sells their hardware based on OS features. 19:26:16 Gregor: ah, maybe 19:26:52 Although their reasons for wanting people to think there's a magical bond are different, they both have the same want, and probably about to the same degree. 19:26:52 As long as Apple are not a grammar company. 19:27:16 For Apple it's about getting money for something that has little to no benefit in and of itself, for Microsoft it's about squashing all competition. 19:28:00 -!- alise has quit (Ping timeout: 252 seconds). 19:28:41 What Microsoft wants is to confuse people into thinking that "Microsoft" == "program". 19:29:35 Dude, I downloaded this Microsoft, but I think it was spyware, it installed like eight other Microsofts on my Microsoft! 19:29:52 Yes, exactly. 19:30:13 static discharge against a car *through thick gloves* 19:30:13 wth 19:30:16 Gregor: what has little to no benefit? 19:30:18 anyone can explain that? 19:30:45 AnMaster: woolen, or leather? 19:31:01 alise_: The hardware, without the software. It's pretty good as hardware goes, but it's not so good to be worth its rather high price :P 19:31:15 ais523, wool/acrylic mix I think 19:31:27 Gregor: I actually investigated that a while ago. It turns out that actually it's pretty reasonably priced for the components and the boutiqueness of Apple. 19:31:29 possibly some cotton as well 19:31:39 The markup is something like 30% on the lower-end models, typical of boutique products. On the higher end models? Less. 19:31:40 "Boutiqueness" 19:31:45 Yes :P 19:31:50 WTF is "boutiqueness" 19:31:57 AnMaster: well, there are probably air gaps inside the gloves; pushing against the car (say to pull a handle) would have compressed it to the extent that you could get a spark between your skin and the metal of the car through them 19:32:03 The image of it being a high quality product because of its social/fashion status. 19:32:07 Cachet. 19:32:17 alise_: Uhh, isn't that exactly my point? 19:32:27 Gregor: Yes, but it's not a hugely unreasonable margin. But. 19:32:40 For instance the 27" iMac is pretty good value, actually. Just the 27" IPS display would cost about as much as the lowest-end model of it. It's a very expensive component. 19:32:42 ais523, actually by that point I had just laid my finger against it, hadn't yet had time to push the door closed 19:32:58 so it must have been a huge charge 19:32:59 The higher-end model of it comes with a Core i7 - at that point the profit margins just keep diminishing. 19:33:03 the issue is not that Macs are overly expensive for a high-end model, IIRC, but that they don't offer low-end models 19:33:06 still feels somewhat from it in my thumb 19:33:13 It's something like $3k for the whole lot. Add in the huge cost of the the-whole-fucking-thing-is-one-gigantic-bit-of-aluminium... 19:33:28 And the top-of-the-range 27" iMac is probably the cheapest way to get all those components. 19:33:30 I don't think we fully understand static electricity 19:33:31 ais523: pretty much 19:33:37 and its low range has a higher-than-average profit margin 19:34:01 cpressey, oh? 19:34:02 I have seen it be very bad in humid environments and very mild in dry environments in the winter 19:34:12 Which is not how I was told it was supposed to work 19:34:21 cpressey, I usually see the reverse of that 19:34:28 a *lot* when try 19:34:29 dry* 19:34:35 and not very much when humid 19:34:45 I don't doubt it, but maybe there is some other correlate 19:35:06 cpressey, perhaps something specific to that environment? Or was the observation made in different places? 19:35:09 cpressey: static electricity discharges through the air faster when it's humid, but that isn't to say you can't charge it up 19:35:37 the way static electricity discharges from humans work is, you normally build it up over time walking on carpets, etc, and when you touch metal it discharges through that 19:35:43 and if it had charged up far enough, you can feel it 19:35:50 Different geographical locations, yes, I would guess it might vary on something else that was different between them 19:36:09 alise_: what about ↝ 19:36:46 ais my cats ears 19:37:20 Ohhey, looks like we traded out Miss Piggy. 19:37:48 It's now a fax. 19:40:17 Yup 19:40:37 Gregorification. 19:40:52 GreGLORIFICATION 19:40:56 lol 19:41:17 GregLOLification 19:41:37 How Gregarious it is to Greglorify. 19:42:01 dulce et gregorum 19:42:53 Definition DiscreteDerivative (f : Z -> Z) (x : Z) := f (x + 1) - f x. 19:43:34 Notation "∆" := DiscreteDerivative. 19:43:39 alise paying attention?? 19:45:05 huh what now i am 19:45:16 fax: what about it 19:49:21 http://pastie.org/861902.txt?key=71fbadzjph5ovvw9xvbkxa this is pretty but not valid 19:49:42 because `⟪∗⟫ = ∀a. SKF a` means that ⟦_⟧ is too fancy for its own type :( 19:49:44 re. your earlier question: YES 19:50:02 I've forgotten the earlier question. I ask so many... 19:50:31 SKI is equivalent to STLC, but STLC + fix is recursive 19:50:53 by SKI I assume you mean STSKI there 19:50:56 yes 19:51:36 so cool 19:51:46 if my interpreter wasn't broken i'd have done sum tc'ing 19:51:50 mind it is particularly pretty broken code 19:55:25 fax: so why did you define discrete derivative there? 19:55:43 making sure coq is ready for the new age of ultrafinitism? :D 20:01:20 * alise_ tries to devise a logic in which !!x = !x 20:01:41 I'm implementing the finite calculus! 20:02:56 fax: cool 20:02:57 how does Notation work btw? 20:03:42 |||||||||||||\\\\\\\\ 20:04:51 finitists can't have limits either? How do you do calculus at all? 20:05:07 just numerically, with some estimate of the error? 20:05:25 lament, finite calculus is about finite sums :D 20:05:29 lament: i'm talking ultrafinitists here 20:05:32 -!- Azstal has joined. 20:05:40 like Sum[i=1..n] i^2 20:05:46 if IE wasn't being a bitch I'd link you 20:06:03 what specifically's the problem with IE? 20:06:14 thanks, i don't really wanna know 20:06:17 lament: http://www.math.rutgers.edu/~zeilberg/mamarim/mamarimPDF/real.pdf 20:06:21 lament: oh you do, it's hilarious 20:06:29 no i really don't trust me 20:06:35 YES YOU DO :| 20:06:42 ais523: all keyboard shortcuts and commands are being ignored 20:06:51 err, wow 20:06:57 lament: basically there's some defined mesh size of the reals 20:06:58 I'm pretty sure that isn't intentional behaviour 20:07:03 and you treat it as an infinitesimal 20:07:15 (actual, real mesh size, as a "universal constant") 20:07:39 let's say it's 1 20:07:58 since it's gotta be scale-invariant anyway 20:08:11 nice. Reals = Integers. 20:08:16 lament: in real.pdf he does it paramaterisabled 20:08:19 ified 20:08:21 -!- Asztal has quit (Ping timeout: 258 seconds). 20:08:25 -!- Azstal has changed nick to Asztal. 20:08:27 cpressey: and the integers are finite 20:08:31 or more precisely the integers don't exist 20:08:32 probably easier to prove it's scale-invariant and then set it to 1 20:08:40 fax: vacuous : ∀a, (P : ⊥ → ⋆), (x:⊥). P x! 20:08:55 "exist" is more precise than "finite" now is it 20:09:05 ⋆? 20:09:06 cpressey: :D 20:09:14 fax: supertype of set and prop 20:09:43 but what's the ultrafinitist perspective on nullity?? 20:09:55 lament: it's totally yeah man 20:10:25 needs more skolemization 20:10:31 alise_: is that pdf meant to be serious? 20:10:37 ais523: yes 20:10:41 zeilberg is a fucking nutcase :) 20:10:42 I can't tell whether it's a parody, or just deluded people 20:10:56 btw this guy is a professor 20:11:16 vacuous {_} {_} {x} = explosion x 20:11:19 hooray for ex falso quodlibet 20:11:43 "truer" 20:11:47 the best thing is though you can say that 20:11:50 I totally agree. 20:11:57 ∀(x:⊥). x ≠ x 20:12:14 and all sorts of fun stuff besides 20:12:26 "Analogously, my own best ideas, far surpassing anything in my ‘serious’ papers, are contained in my annual April Fool’s jokes, sent to my E-correspondents and posted on my website. This way I can express my ‘off the wall’ ideas without being considered a crackpot." 20:13:00 isn't a similar principle used for distributing INTERCAL? 20:13:05 alise_: if you define !x = x then you get !!x = !x for free ;D 20:13:16 oerjan: hahaha no. 20:13:51 another option is the modal necessity operator 20:13:57 alise_: it's unprovable that all that is wrong; no matter how small a number you suggest, it's always possible that the mesh size is smaller 20:14:02 -!- alise has joined. 20:14:17 alise_: it's unprovable that all that is wrong; no matter how small a number you suggest, it's always possible that the mesh size is smaller 20:14:26 -!- oklokok has joined. 20:14:46 ais523: yep, except not quite 20:14:50 it can't be smaller than the planck length 20:15:02 well unless you pack multiple bits of info into one tiny particle 20:15:07 well 20:15:09 who says that maths and physics have the same fundamental measurements? 20:15:12 i guess not in zeilberger's ultrafinitism 20:15:23 but most ultrafinitists are such because of physical limits 20:15:35 i.e. you can't have an infinite set of natural numbers because you can never compute it all 20:15:54 you can't have a really tiny rational because there isn't the space to show its tininess 20:16:16 I love the talk about sqrt(2) not actually existing after all, because distances don't exist, just areas 20:16:39 Math is a consistent fiction. 20:16:47 Guess what? It's the consistent part that's important. 20:16:55 *"consistent" 20:17:04 "consistent" fiction 20:17:06 LIKE ZFC 20:17:22 ZFC is too powerful for my taste. 20:17:30 -!- alise_ has quit (Ping timeout: 252 seconds). 20:17:32 I like simple theories. 20:17:36 Like !x = x. 20:17:53 I thought you liked consistency :P 20:18:15 ais523: I like how he says that Goedel is "irrelevant" because the things it applies to have no meaning 20:18:16 Well, I ilke !x -> x better. 20:18:20 but that isn't even implied by rejecting all infinites 20:18:26 goedel numbers are huge but not infinite... 20:18:34 and certainly not so huge that we can't represent them 20:19:31 I'm restarting IE. 20:19:45 * fax wonders how to write (x+1)x(x-1)...(x-m+2)-x(x-1)...(x-m+2)(x-m+1) in a proof assistant 20:19:53 fax: just write it :P 20:19:55 "..." means induction I guess 20:20:14 fax: zeilberger will love you 20:20:19 are you defining R := his definition too? :D 20:20:20 mesh size! 20:21:41 -!- alise_ has joined. 20:22:02 -!- whtspc has joined. 20:22:03 what I missed I desire elaboration upon 20:23:14 -!- whtspc has quit (Client Quit). 20:23:39 Wow, what insane garbage. It's not that I inherently object to his premise, either. It's far more that he tries to buttress it with crap. 20:24:03 His writing style is putrid. I'd much prefer my own whiny. 20:24:50 -!- alise has quit (Ping timeout: 252 seconds). 20:24:52 Also, I have an unstoppable urge now to define his paramaterisable finite universe. 20:24:54 "Suppose x is even." "Well suppose it's not!" 20:25:52 hehe 20:28:42 Presumably the mesh size h is an ultrafinitist-rational. 20:28:44 And p is an ultrafinitist-natural. 20:28:49 I imagine he'd just freak out at concepts like "Turing-complete". I mean, you *can't* have infinite memory. You just *can't*. 20:29:13 The problem is that the Ultrafinitism module is paramaterised over h and p, so how do you do it? 20:29:29 I didn't read it as being parameterized. 20:29:36 I read it as h is a constant. 20:29:47 A very small, unidentified constant. But not variable. 20:29:52 Oh, yes. 20:30:01 But he parameterises it later in his analysis. 20:30:06 Oh nice. 20:30:15 (Because you don't know what it is.) 20:30:22 And, of course, we don't know their True Universal Values, so for now we must specify it 20:30:31 Trying very very hard not to LOL, natch. 20:30:34 (me) 20:30:46 Until the Ultrafinitist Physicist Association of America completes its experiments. 20:31:40 With their grant from NAO2^{80}PSA, the National Aeronautics and Observable 2^80 Particles of Space Administration. 20:33:23 fax: are you sure you don't have the link to that site 20:33:28 what site? 20:33:41 it says it was a book that claimed to be from the future, with a bunch of formalised mathematical proofs in it 20:33:50 saying that oh in the past they did this all by hand ha ha ha 20:33:50 I told you I don't know what you're talking about 20:33:53 and it defined a bunch of maths in it 20:33:56 ugghh yes you do you linked to it 20:37:35 just explain it so that I understand what you meanl 20:37:38 fax: it was either in maple or ... i think coq 20:37:48 its name was an acronym, i think a deliberately-amusing one 20:37:51 Ah Zeilbergers book! 20:38:02 haha same guy? 20:38:04 http://www.math.rutgers.edu/~zeilberg/GT.html 20:38:09 how come it wasn't ultrafinitist 20:38:20 Zeilberger is one of my idols 20:38:23 well 20:38:33 you /idolise/ this insane man? 20:38:38 I don't really have idols but I really enjoy his work 20:38:40 he doesn't believe there are any infinite sets... 20:38:50 have you ever seen an infinite set? 20:39:19 (and don't say, yeah in my ZFC textbook: I can write "magic rainbow unicorn" on a bit of paper too) 20:39:27 no, i mean exist as in mathematically 20:39:36 he thinks the definition of the reals is R = hZ_p 20:40:04 No, he thinks it should be 20:40:06 yes, but he's /talking/ about abstract systems 20:40:19 that's radical 20:40:33 and talks about the REAL real line 20:40:33 as if anything abstract is "real" 20:40:37 -!- Gracenotes has joined. 20:40:38 I think if you gave me an infinite amount of time and an infinite lifetime and an infinite supply of paper I could show you an infinite set 20:40:49 *lifespan 20:40:51 -!- alise has joined. 20:40:58 fax: it's a word starting with r 20:40:58 but not radical 20:41:00 i'd go for retarded 20:41:23 no you couldn't, {a^n | n \in N} doesn't contain an infinite word 20:42:25 That's true, it doesn't even, at that. 20:42:53 All the more reason to go ultrafinitish! 20:42:57 fax: seriously the fact that you don't see real.pdf and immediately realise that this guy is completely idiotic shakes my faith in things you say 20:43:29 But wait, it's still an infinite *set*, right? 20:43:58 :P 20:44:08 N = {0, 1, 2, 3, ..., p} 20:44:11 hmm, actually 20:44:18 he never says p is the biggest natural 20:44:19 you are young alise, sometimes you say things which rembind me of that 20:44:20 or indeed the biggest prime 20:44:30 obviously it must be the biggest prime or the definition of R would make no sense 20:44:45 so |N| = p and a bit :P 20:44:54 cpressey: yeah, but at any point you'll have an element of {{a^n | n = 0, ..., k} | k \in N} 20:45:00 -!- alise_ has quit (Ping timeout: 252 seconds). 20:45:11 -!- alise_ has joined. 20:45:33 "oh you don't understand the subtle adultness of considering ultrafinitism... you have to be older to know these things... one day... one day" bullshit 20:45:50 lol 20:47:20 I would probably describe myself as a mathematical generativist, or something. 20:47:36 constructivism, hells yeah 20:47:49 Not exactly constructivist. 20:48:24 i was just asserting my own position 20:48:39 I was just clarifying my own :) 20:49:02 -!- alise has quit (Ping timeout: 252 seconds). 20:50:03 alise_: why wouldn't the definition of R make sense if p wasn't prime? 20:50:24 needs a prime p to be a field ? 20:50:26 i don't really even believe in finite numbers, actually i often wonder whether i exist 20:51:00 It's a matter of whether you regard computations to "halt" or not, I think. 20:51:01 it's not a field, p is so big you can't actually do division 20:51:03 now THAT is radical 20:51:31 CA's never "halt" unless I have some way to recognize what I want "halt" to look like 20:51:33 oklokok: nonono, he asserts that it is prime 20:51:33 but it makes no sense to arbitrarily restrict R's size when the whole point is "there is a limit to these things" 20:51:33 fax: it's not a field, big + n is undefined 20:51:33 oh wait it's modulo 20:51:42 TMs are assumed to "halt" because recognizing it is trivial 20:51:58 * cpressey loves the alisedumps 20:52:06 at least that's how i see ultrafinitism, p sets the bound on anything we do, so if we wanna divide, we run out of Z_p when we try to find the number near p that's the inverse 20:52:45 there is an inverse but it's incredibly big so it's irrelevant 20:53:06 cpressey: alisedumps? 20:53:08 i'd say inverses come from assuming we have such big numbers that when dividing them by each other the rounding errors don't matter :o 20:53:12 no coppro is the poo-lovin' guy 20:54:17 cpressey: what's a matter of whether to regard computations to halt or not? 20:54:26 the constructing an infinite set thing? 20:54:43 alise_: Every so often 4 or 5 lines from you show up at the same time, presumably due to your web->irc gateway thing 20:55:06 cpressey: just 3g stick lag 20:55:08 oklokok: Whether there are finite numbers, or not, or infinite numbers, or not 20:55:17 1 = 1.0000000000.... 20:55:24 i don't see a connection 20:55:42 1 has halted 20:55:44 is 1.0000... an infinite number? 20:55:49 1.0000000.... never halts 20:55:56 Why wouldn't it be? 20:56:18 well it's impossible for 1 to be finite and 1.000... to be infinite, because they are the exact same object 20:56:34 so in fact we're working in some sort of universe of representations here? 20:56:57 * cpressey shrugs 20:57:08 * oklokok too 20:58:04 -!- oklokok has changed nick to o|{|_o9o|_. 20:58:09 i'm not very leet 20:58:24 -!- alise_ has set topic: arys. 20:58:28 oops 20:58:32 i should go clean up random parts of the apartment 20:58:33 -!- alise_ has changed nick to arys. 20:58:42 ~~> 20:58:47 Of course, the ultrafinitist, along with their unacceptance of the concept of Turing-complete, will find the Halting problem trivial. All machines always halt, due to entropy. 20:58:56 -!- arys has set topic: q. 20:59:41 -!- ais523 has set topic: "Gwandocu (n): Extremely strong evidence, far beyond a reasonable doubt." | alise sighting counter currently out of sequence | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 21:01:19 due to entropy? 21:01:21 DFEHGJIKGMLINGPOQIKG$L5RS&TUMVGJI@WJX)YZE)[\R?G^]NEHGJIKGLINGMSR?'aOcbML5R?d5GJVI@L5[\eS&TUMVGJI@WJf - zeilberger 21:01:21 oops 21:01:22 fucking copy from pdf 21:01:33 http://www.math.rutgers.edu/~zeilberg/mamarim/mamarimPDF/goodwin.pdf 21:01:41 he isn't even consistent about ultrafinitism 21:01:44 see first paragraph 21:02:07 joke paper, but 21:02:46 Perhaps he believes Aleph is a finite value. 21:03:02 p+1? 21:04:45 -!- lament has quit (Ping timeout: 245 seconds). 21:04:45 now now he never said that x in N -> x < p 21:04:46 he just /strongly implied/ that there is no bigger prime than p 21:04:59 -!- alise has joined. 21:06:51 -!- lament has joined. 21:06:53 fax: should i learn coq? 21:07:45 how i stopped worrying and learned to love the coq 21:09:12 -!- arys has quit (Ping timeout: 252 seconds). 21:09:49 Eval compute in Discrete_Definite_Integral 1 5 (fun x => x). 21:09:55 = 10 21:09:55 : Z 21:12:00 paste the code somewhere 21:12:16 = 1 + 2 + 3 + 4 + 5 21:12:47 10 =/= 1 + 2 + 3 + 4 + 5 21:12:49 * fax is about to prove Fundamental_Theorem_Of_Finite_Calculus 21:12:52 fax: err... 21:12:53 yeah :P 21:12:58 cpressey, it's correct within experimental error 21:13:01 Unless it does 21:13:06 OK, I'll buy that 21:13:09 fax: experimental error my arse :P 21:23:14 So, my woes are all because a mock object is not sufficiently mocking the the thing it set out to mock, huh? 21:23:22 Nice. 21:32:48 the discrete definite integral from 1 to 5 is the sum from 1 to 4 21:32:59 = 10 21:34:27 -!- hiato has quit (Quit: leaving). 21:35:24 fax: show yer koed 21:35:46 it's because given f we're computing a function g such that g(x+1) - g(x) = f(x), so the sum of f(x), where x goes from a to b is g(b+1) - g(a) 21:36:21 The code sounds like it would be trivial to me. 21:36:28 Who's the o guy...ah, should've guessed 21:36:35 should be pretty trivial 21:37:04 cpressey: yeah but proving fundamental theorem of finite calculus will be fun 21:37:25 what i just said is basically the proof 21:37:38 although i skipped it completely because it's obvious 21:37:54 i mean the "it's because given f ..." thing 21:38:45 no wait actually what's the fundamental theorem 21:38:58 alise, I will when it's done 21:39:12 I'm still working on proving Fundamental_Theorem_Of_Finite_Calculus 21:39:23 can you link the paper? 21:39:27 o|{|_o9o|_: inversitude 21:39:34 presummyby 21:39:43 woah you guys are talking about finite calculus too! what a coincidence 21:39:48 * ais523 reads about the Trojan Horse found in the drivers for a battery charger 21:39:58 fax: because of you :P 21:40:02 aren't we talking about finite calculus because you brought it up? 21:40:23 it's funny seeing the arguments "well, if a battery charger connects to the Internet there's probably something wrong with it" vs. "why on earth would a battery charger company check to see if it connects to the Internet anyway?" 21:42:26 so what's the fundamental theorem? 21:42:35 or alternatively can someone link the paper? 21:42:57 the finite calculus paper? http://www.stanford.edu/~dgleich/publications/finite-calculus.pdf ? 21:43:02 thanks 21:43:12 I thought you already had it 21:44:58 okay yeah then i proved it by saying it's obvious 21:45:10 well i did, i didn't know i did 21:45:41 I don't know how to correct that impression 21:46:32 the theorem doesn't actually have any mathematical content, it's just stated for convenience, so you don't have to think about what happens on the boundaries of the sum and the integral every time 21:46:51 not so! 21:47:12 I'm not some open source hater by any means, but I think the chances that someone who gave a shit about the source of a freaking battery charger driver would be exactly the type of person who would never be dumb enough to buy a battery charger that needs a windows driver install. 21:47:18 this is one of the best flamewars I've seen for a while 21:48:35 It makes me sad 21:49:26 * fax proved the fundamental theorem :D 21:49:49 Right on. 21:49:55 #esoteric is full of proofs today 21:50:00 Maybe we'll open up the bonus level 21:50:03 i really don't see what there is to prove 21:50:18 o|{|_o9o|_, I mean formal proof 21:50:38 if you sum adjacent values of f(x+1)-f(x)'s, obviously all but the left and rightmost ones cancel out 21:50:41 oh in coq? 21:51:02 then i obviously have no idea how hard it is 21:51:04 o|{|_o9o|_, oh and, I used "The Fundamental Theorem" as my definition, which means MY fundamental theorem is their definition 21:51:33 not very hard because Z has already a fair bit of theory in the standard library, without that -- this would not be possible 21:51:54 i believe you 21:51:55 clearly you need to use coq's "obvious" tactic 21:53:12 -!- alise has quit (Ping timeout: 252 seconds). 21:53:33 -!- Daexpos has joined. 21:54:00 Who is the exoterisc? 21:54:38 Him! 21:54:39 Pene 21:54:40 * cpressey points 21:54:44 -!- Daexpos has left (?). 21:55:07 And all present were enlightened, I'm sure. 21:55:15 Pene. 21:55:35 that's the ablative of penis, right? 21:55:56 Fax intends to ablate your penis. 21:56:14 fricative 21:56:16 I don't know what ablate means, but it sounds painful. 21:56:16 ouch 21:56:23 `define ablate 21:56:26 * wear away through erosion or vaporization \ * remove an organ or bodily structure \ [14]wordnetweb.princeton.edu/perl/webwn 21:56:37 It is in fact quite painful. 21:56:47 `define fricative 21:56:49 * fricative consonant: a continuant consonant produced by breath moving against a narrowing of the vocal tract \ * of speech sounds produced by forcing air through a constricted passage (as `f', `s', `z', or `th' in both `thin' and `then') \ [18]wordnetweb.princeton.edu/perl/webwn 21:56:51 Or at best, very shocking. 21:57:01 `define fricate 21:57:03 * Frication - Fricatives are consonants produced by forcing air through a narrow channel made by placing two articulators close together. ... \ [13]en.wikipedia.org/wiki/Frication \ * frication - friction; turbulent and noisy airflow 21:57:08 Darn. 21:57:12 ;) 21:57:19 force air through narrow channel 21:59:07 i forced.... ughr 21:59:17 oh, fricate. not fornicate. 22:01:57 -!- werdan7 has quit (Ping timeout: 619 seconds). 22:02:10 -!- Gracenotes has quit (Quit: Leaving). 22:07:16 hey alis 22:07:17 hey alise 22:08:14 -!- werdan7 has joined. 22:10:29 lament: can you believe I was banned??? :( 22:12:11 Quadrescence: from where? 22:12:18 #nm 22:12:41 and after all this time I thought I was an asset to the channel :((((((((((((((((((((((((((((((((((((((((((((( 22:13:58 what holy shit 22:14:27 lament: |Steve| did because I banned him from ~m 22:15:01 [otherwise no other reason] 22:15:47 wow, what a jerk! 22:16:00 such tit-for-tat brinkmanship 22:16:38 he should have turned the other cheek and made you an op so you can ban him in #nm 22:17:51 * oerjan seems to be having troubles with his sarcasm meter 22:18:29 -!- MigoMipo_Zwei has joined. 22:18:41 -!- MigoMipo has quit (Ping timeout: 260 seconds). 22:19:02 -!- MigoMipo_Zwei has changed nick to MigoMipo. 22:20:14 Quadrescence: i'm using all my diplomatic finesse to get you unbanned 22:20:20 so expect a permaban, probably in #math too 22:20:36 lol 22:20:41 lament: awww 22:20:55 OK, that was funny. 22:20:57 Noooo don't get yourself in trouble 22:21:24 nono i'm not getting *myself* in trouble :D 22:21:37 Hahaha okay good 22:21:49 - famous last words 22:23:42 "oerjan: lol" <<< is it just me or is this really out of character 22:24:06 or was that just the first thing ever you found funny here 22:24:14 I found this quite funny: [16:17.27] * oerjan seems to be having troubles with his sarcasm meter 22:24:20 also god i hate this nick 22:24:50 oerjan leaks this constant flow of hilarious humor 22:24:59 -!- cpressey has changed nick to cpressez. 22:25:41 Quadrescence: i found lament's comment hard to measure 22:25:51 I know 22:25:53 it was funny 22:25:58 the way you said it 22:26:03 at the time you said it 22:26:50 -!- muni_ has joined. 22:27:18 "I love you." "LOL!" 22:27:52 I suppose that's better than "I love you." "ROTFL" 22:28:14 lol 22:28:35 (yeah i'm just messing with o|{|_o9o|_ now) 22:28:50 (ok, and laughing) 22:29:04 limh 22:29:08 (laughing in my head) 22:29:32 why did alise just disappear like that? 22:29:32 sounds painful 22:29:46 fax: THEY found him 22:29:56 yeah not funny 22:31:54 it's an unfunny in-joke in bad taste 22:32:07 the best kind 22:32:12 maybe i should ban myself 22:32:25 can you? 22:32:32 okklopkuabp 22:32:32 presumably 22:32:37 -!- tombom has quit (Quit: Leaving). 22:32:39 yep, he has ops nowadays 22:32:40 you didn't respond 22:32:44 -!- o|{|_o9o|_ has changed nick to oklopol. 22:33:18 didn't respond to what? if it was in pm, i had a different nick for a while, not sure if you noticed because there were only typographical differences 22:33:25 8:/ 22:33:50 you asked me whether 8, or what? 22:34:02 _clearly_ 8 22:34:13 The ratio between 8 and / 22:34:15 that much is obvious 22:34:30 -!- MigoMipo has quit (Remote host closed the connection). 22:34:42 -!- muni_ has left (?). 22:35:03 cpressez: you zuddenlee look very french 22:35:43 this is really frustrating 22:37:01 fax are you hot 22:37:45 Si pressez-vous la bouton 22:38:10 * Quadrescence presse la bouton. 22:38:21 Le monde explode! 22:38:46 Que galère!!! 22:39:11 -!- cpressez has changed nick to cpressey. 22:39:13 Well enough of that. 22:39:33 -!- alise has joined. 22:39:46 -!- jcp has quit (Ping timeout: 258 seconds). 22:39:57 *explose 22:40:00 darn french 22:40:04 depose* 22:41:08 -!- jcp has joined. 22:43:51 bzflag 22:43:54 i remember that game 22:44:07 13:46:32 the theorem doesn't actually have any mathematical content, it's just stated for convenience, so you don't have to think about what happens on the boundaries of the sum and the integral every time 22:44:07 | 22:44:07 /\ 22:44:13 everything that is true is an obvious tautology :P 22:44:25 *facepalm* 22:44:38 *kneeear* 22:44:45 etc. 22:44:49 * Quadrescence snickers 22:44:57 lawl 22:44:57 There are no trivial mathematics, only trivial mathematicians! 22:45:24 myndzi: was that supposed to look dirty? 22:45:28 cpressey: you're quite limber, i take 22:45:48 oerjan: I am on IRC, at least. 22:45:56 ah 22:46:15 argh 22:46:20 -!- BeholdMyGlory has quit (Remote host closed the connection). 22:46:27 \o/ \o/ \o/ \o/ 22:46:27 | | | | 22:46:28 /| |\ /| /| 22:46:39 \o/\o/\o/\o/ 22:46:39 | | | | 22:46:39 |\ |\ >\/\ 22:46:50 /´\ 22:47:01 \o/ 22:47:02 | 22:47:02 /| 22:47:04 \o/\o/\o/ 22:47:05 | | | 22:47:05 >\ >\ >\ 22:47:26 \o/\o/\o/\o/\o/\o/\o/\o/\o/\o/\o/\o/\o/\o/\o/\o/\o/ 22:47:26 | | | | | | | | | | | | | | | | | 22:47:26 >\/| /| /< /< /'\/\/< /< /< |\ |\/`\ |\/< |\/| 22:47:30 \o/ 22:47:30 | 22:47:31 /| 22:47:34 wow awesome 22:47:37 very few of them have dicks. 22:47:38 that is the coolest thing ever 22:47:48 i know \o/ 22:47:48 | 22:47:48 |\ 22:47:57 _o/ 22:47:58 | 22:47:58 /'\ 22:48:01 HAHA 22:48:02 are there actually spaces before? if so, my client strips them >_< 22:48:13 there used to be iirc 22:48:15 get a client that doesn't suck 22:48:24 \m/ \m/ 22:48:25 `\o/ 22:48:25 | 22:48:25 (_|'\ 22:48:25 |_) 22:48:35 LOL WUT 22:48:47 \m/ 22:48:53 \m/ 22:48:55 \m/ \m/ 22:49:03 14:27:52 I suppose that's better than "I love you." "ROTFL" 22:49:04 -!- cheater2 has quit (Read error: Connection reset by peer). 22:49:06 \m/ \m/ 22:49:06 `\o/ 22:49:06 | 22:49:06 /'\ 22:49:06 (_| |_) 22:49:07 *ROTFUL 22:49:27 o 22:49:30 -!- cheater2 has joined. 22:49:34 _o_ 22:49:35 | 22:49:35 /| 22:49:41 wowowowow 22:49:44 that is so cool 22:49:53 -!- alise has left (?). 22:49:59 -!- alise has joined. 22:50:40 that script is the only reason i go to #esoteric 22:50:47 "alise: are there actually spaces before? if so, my client strips them >_<" <<< first whitespace i've ever seen that nnscript *doesn't* strip 22:51:15 in the logs it's spaces /and/ some other char 22:52:07 lament: ur the only reason I go to #esoteric~ 22:52:38 Quadrescence: ur the only reason fax goes to #esoteric 22:52:46 FU*K 22:52:50 -!- cpressey has left (?). 22:52:57 fax has acne and boils 22:53:22 #~esoteric is either the most interesting channel I can think of, or the least, depending on what #esoteric is at the time, 22:53:53 well, I guess it's #(~esoteric), not ~(#esoteric) 22:53:54 so most boring 22:54:10 oh shut up 22:54:45 (I was talking to EgoBot not you alise) 22:54:47 it's transitive 22:54:53 EgoBot is talking? 22:55:05 yeh 22:57:03 !echo I'm human! 22:57:07 I'm human! 22:57:36 he's just using facilitated communication 22:58:33 oerjan: <3 22:58:51 lament: http://i.imgur.com/ZFlbv.jpg 22:59:09 i'm not opening anything at work 22:59:14 * alise wonders if that's the same image Quadrescence linked to me before 22:59:18 if so, lament made the right choice :p 22:59:22 -!- coppro has joined. 22:59:37 "However, under Japanese rules, the game is already considered to have ended. The players attempt to ascertain which groups of stones would remain if both players played perfectly from that point on. (These groups are said to be alive.) In addition, this play is done under rules in which kos are treated differently from ordinary play. If the players reach an incorrect conclusion, then they both lose." 22:59:50 alise: the situation for a disputed endgame in Go is even funnier than I thought 22:59:58 :D 22:59:58 coppro: if you ever need latex help, you're welcome to ask me instead of going to #latex where people treat you like you're 8.5 years old 23:00:14 You get nothing! You LOSE! Good DAY sir. 23:00:14 I love the way that the double loss is given for getting it wrong, rather than for disagreement 23:00:57 i wonder how many famous games of go are actually platonically a double loss 23:01:02 but nobody's realised 23:01:12 alise: except with more honorifics 23:01:41 i wonder how many chess games actually ended with the white winning, but the players thought black won. 23:01:42 alise: probably not that many in famous games, you'd expect the players to get it right 23:02:04 for draws, there probably are such instances 23:02:16 oklopol: a few famous ones (if you allow vice versa); there was one where one of the players lost on time, and the referee accidentally turned the clock round and gave the win to the wrong player 23:02:18 oklopol: None :P 23:02:20 in a relatively publicised tournament 23:02:31 ais523: that's cheating 23:02:35 :P 23:02:50 alise: by the referee? 23:02:53 it was a mistake, rather than deliberate 23:02:58 I wonder how many chess games actually ended with the X winning, but the players thought Y won, and the game ended by the taking of a king, where X =/= Y. 23:03:03 ais523: i mean as an example 23:03:03 it's cheating as an answer to my wonderingment 23:03:06 yeah 23:03:40 Note that X or Y can be "draw" 23:03:41 well, xor 23:03:45 -!- FireFly has quit (Quit: Leaving). 23:04:20 -!- lament has quit (Ping timeout: 245 seconds). 23:05:01 there was a case (again in a serious tournament) where a player offered a draw, his opponent said "make a move first", the player moved, then the opponent resigned 23:05:07 legally, you can still take the draw in that situation 23:05:26 (it's a rule against draw offer spam; if someone offers a draw, you can accept until the end of your next move) 23:05:38 (so there's no point in offering more than once in the same move) 23:05:49 but anyway i think it's technically possible that black moves a piece so that the king can't move anymore, and neither player realizes there's a distant piece making it a checkmate instead of a stalemate 23:06:29 yep, I suppose so vaguely 23:06:33 http://sci.tech-archive.net/Archive/sci.logic/2006-10/msg00751.html 23:06:34 i keep 23:06:34 -!- lament has joined. 23:06:35 reading this 23:06:36 as a 23:06:37 poem 23:06:39 and it 23:06:40 is really 23:06:41 annoying 23:06:41 actually, there are probably loads of draws on time which were claimed as wins on time by mistake 23:06:59 (draw on time: if your opponent runs out of time, but it's theoretically impossible to win given the material on the board) 23:07:15 alise "Yessenin-Volpin"? wow a THIRD ultra-finitist?? 23:07:28 fax: they don't even include what'shisname in that list 23:07:32 the guy we've been talking about 23:07:35 japanese rules allow draws on time??? 23:07:36 so there are FOUR??? 23:07:39 fax: oh crap 23:07:47 no wait, three 23:07:53 fax: the number of ultrafinitists is getting dangerously big 23:07:56 lament: Chess, not Go 23:08:02 this movement has gained its maximum possible mass (I don't believe in 4) 23:08:05 fax: what if it overflows??? 23:08:06 lament, lol 23:08:15 it's always theoretically possible to play Go so badly that your opponent wins 23:08:18 lament: damn you made the same joke as me but beter 23:08:18 lament: dammit stealing my joke 23:08:25 hahaha 23:09:59 alise, you know Freek Wiedijk 23:10:00 ? 23:11:01 i do now 23:11:01 fax: resend your latest /msg, i closed the tab by mistake 23:11:11 ais523: that can't possibly be true, do you see why?? 23:11:19 DUCY??? 23:11:34 lament: the game lasts an infinite length of time if both people try it 23:11:45 i'm sure everyone thought of the joke 23:11:50 hmm, unless you enforce superko, in which case my statement is indeed incorrect 23:12:14 It depends on the form of superko 23:12:20 ais523: why would either of them capture at all? They would pass. 23:12:45 oh, good point 23:12:46 they ought to pass when there's one empty point remaining 23:12:54 I somehow assumed that you'd capture with only one point left 23:12:57 if the game ends 23:13:02 too much exposure to the stupid stupid Yahoo auto-go thing 23:13:11 which has a bug where you can run an opponent out of time by repeated passing 23:13:22 i'm not sure what's the status if the game ends but i guess it's seki 23:13:33 either seki or "both players lose" 23:15:33 SEKSI 23:15:55 what would be funny would be if you somehow got half a stone onto the board 23:15:59 and then claimed a draw despite komi 23:17:19 very easy with cheap chinese stones, they break all the time 23:17:50 Here's a thought: hybridize Go and Chess by simply having a chess board, where the intersections are the points on a Go board, every turn you do either a Chess or a Go move, and the Go game works as usual, including taking out Chess pieces :P 23:18:45 who wins? 23:19:00 Whoever either checkmates or takes out the opponent's king. 23:19:23 Which, I suppose, is problematic for the Go component ... 23:19:27 do you need to surround a piece on four sides to capture is? 23:19:30 -!- ais523 has quit (Remote host closed the connection). 23:19:30 Needs some rough edges smoothed out. 23:19:31 *it 23:19:37 lament: That was the idea? 23:19:39 lament: you could take it with a chess piece 23:19:43 or surround it 23:19:44 Well, yes. 23:19:48 does go have a winning condition? 23:19:50 I don't actually know 23:19:50 Gregor: well it's not quite how Go works 23:19:55 alise: no, people just fuck around. 23:20:20 erm 23:20:20 i mean 23:20:21 an endgame condition 23:20:21 apart from like... running out of pieces 23:20:21 or time 23:21:01 oh 23:21:10 both players pass 23:21:25 note that sometimes you're forced to pass due to not having any valid moves 23:21:32 but in principle a game could go on forever 23:21:44 Gregor: Checkmate/taking out/both passing = game ends. 23:21:47 there's an optional rule, which nobody uses, that disallows repetition 23:21:58 Then you can invent a hybrid chess/Go winning condition to be applied at endgame. 23:22:20 Well, that makes sense since both passing is an endgame condition for Chess anyway, stalemate :P 23:22:36 From what little I know about Common Lisp, I despise it 23:22:46 The problem is that in chess, endgame almost always is because of someone winning. 23:22:49 funcall? Really? 23:22:54 alise: Yuh 23:22:55 In Go that appears to be calculated after the fact. 23:23:00 Sgeo: So you can name a variable "list". 23:23:27 Gregor: You could redefine instead Go's endgame condition to be because of someone winning somehow. 23:23:41 The Go pieces would be controlling areas of the board ... you couldn't move there because you'd be instantly surrounded by opposing pieces. Maybe that's bad :P 23:24:03 Maybe that's AWESOME. 23:24:10 Maybe! 23:24:16 So how does a Chess piece take a Go piece? Maybe jumping over it. 23:24:25 I wasn't considering that possibility ... 23:24:33 Say you have a Go piece to the top-left of a pawn. If the pawn moves one space top-left, the Go piece is taken 23:24:34 etc. 23:24:57 So, Bishops have free take-out powers :P 23:25:21 For knights... No fucking clue. 23:25:23 Gregor: They do anyway :P 23:25:25 I don't think you would use typical Go notions of control 23:25:38 coppro: Probably not quite. 23:25:45 It's not a hybrid if you significantly modify G1+G2 23:25:52 control really just means an area that if you put a piece in, it will die eventually 23:25:53 It's your own game inspired by G1, G2. 23:26:04 alise: Oh nooooooooes 23:26:08 G0? 23:26:15 The only modifications should be to resolve contradictions. 23:26:59 so if you add the ability to leave the area or take one of the controlling pieces, there's no sense in preventing a piece from entering a controlled area 23:27:35 Gregor: You made Chesskers. 23:27:42 Yes, I did :P 23:27:47 You're making Gochess. 23:27:53 So, Gochesskers. 23:27:55 Yes, I am :P 23:27:59 You should add Othello to that mix. 23:28:11 Gothellochesskers. 23:28:16 Yes, I ... wait, whaaaa? 23:28:20 Go, Othello, Chess and Checkers. Living in perfect disharmony. 23:28:20 * Sgeo would never have discovered FICS if XP had "Internet Chess" 23:28:40 Gregor: Wait, what? :D 23:28:49 Haha, imagine Chess pieces flipping colour because you connect a line. 23:29:21 Then subsequently taking Go pieces, which then surround a Checker piece, eliminating it. 23:29:40 Combine ALL board games into one! 23:29:44 Throw some Risk in there! 23:29:49 I think we need some 18xx! 23:29:52 And where's Clue?! 23:29:52 No :P 23:30:02 But Go, Othello, Chess and Checkers are all fundamentally similar. 23:30:27 Abstract pieces on a uniform board, with uniform rules throughout, involving pieces "getting rid" of other pieces, with complex strategy underlying simple rules. 23:30:43 And any two are quite easily hybridised. So.. 23:31:26 * Sgeo wishes FICS had a way of defining your own game that used a chessboard and chess pieces 23:31:40 With some simple not-necessarily-TC scripting language 23:31:49 Sgeo: fork the source 23:32:04 coppro: it's closed 23:32:07 the latest version of the server at least 23:32:09 it is? 23:32:23 well wikipedia says an old version was open and is mum about the current, so.. 23:32:28 *so... 23:32:37 (directly next to each other) 23:32:39 Easy enough to ask 23:33:02 "MAd(1): no" 23:35:32 And now ... 23:35:34 FINLANDIA! 23:36:25 Also, LaTeX's default title font is disturbingly similar to the "font" used for the title of the original publication of Finlandia. 23:36:41 COMPUTER MODERN: Disturbing 23:37:20 not so modern after all 23:37:39 somewhere, on a forgotten sumerian clay tablet... 23:38:18 the first ug was typeset by knuth 23:38:42 definition: a game A totally wins the game B if there's a winning strategy in the mixed game A|B that uses only moves of A 23:40:09 hm is this related to surreal number ordering? 23:40:58 Totally wins; terminology first used by Euclid in his Elements. 23:41:01 Specifically: 23:41:23 "Let there be the games A, B. I say that A totally wins B. 23:41:41 First, let there be a strategy of A. 23:42:04 Let it be that when this strategy is used in AB, it is winning. 23:42:05 i can confirm this because strategy is a greek word. 23:42:20 If this is not so, then instead I say B totally wins A." 23:42:35 that's my piss-poor attempt at emulating the style of Elements... 23:42:39 oh but totally winning is a proper partial order! 23:42:57 so in fact it's not necessarily true that B totally wins A if A does not totally win B 23:43:36 right but that's a modern development of Winning theory 23:43:47 Euclidean winning theory doesn't have that 23:44:09 definition: if A does not totally win B, and B does not totally win A, then we say A|B is not ridiculous 23:44:27 ah 23:44:44 -!- oerjan has quit (Quit: Good night). 23:44:54 now the obvious question is, is go|chess a ridiculous idea? 23:44:54 (Euclid considered "That all entities must be ordered. Take entities A and B and A is not more than B, and B is not more than A. Then A appears before B, and B appears before A. This is an absurdity. So all entities must be ordered.") 23:45:22 :D 23:46:01 oklopol: you're abusing notation, A|B is the common parts of the games A and B 23:46:13 go|chess would be a board with things that move around and remove other pieces, but past that undefined 23:46:17 you mean AB 23:46:41 (euclid wrote A|B as superscript A, subscript B.) 23:46:58 winning theory is like game theory but more indie 23:47:34 (In complex expressions the notation A above B is often used to save space, but for more complex expressions the super/subscript format is used.) 23:47:43 Erm, that is, as a component of complex expressions. 23:49:34 | is an OR-like character, AB is multiplication which is an AND-like operation 23:49:55 exactly 23:50:13 remember that euclid thought of games as primitives 23:50:15 so A|B is the mix of the games, and AB is the common parts. 23:50:35 as such, (go chess) was go & chess, i.e. both go and chess. 23:50:50 that's what AND and OR mean in the philosophy of fuzziness. 23:50:55 eh fine :P 23:51:08 go fish 23:53:28 the common parts operation probably actually makes sense in some cases, because either you get the empty game or you get some basic moves or something. i guess stuff like winning might be completely removed though 23:53:48 is there a good definition for board games somewhere? 23:54:30 clearly winning theory is our chance to invent it. 23:54:37 game theory is to board games sort of what category theory is to algebras, imo 23:54:49 also, euclid didn't even consider common parts by itself to be a valid formula. 23:54:57 he always built it up from there to a full game 23:55:03 -!- MizardX has quit (Ping timeout: 240 seconds). 23:55:13 maybe, maybe 23:56:13 in algebra, the common parts of two algebras are usually directly an algebra, but the mix of two algebras needs to be extended to be a full algebra 23:57:51 game theory doesn't talk about board games at all. 23:58:13 and the second rule of game theory: Do not talk about board games 2010-03-10: 00:02:53 but isn't the way board game players interact, taking turns to manipulate some state, game theoretical stuff 00:04:12 i guess not really 00:04:45 hmm 00:05:04 A|(B C) = (A|B) (A|C), obviously 00:05:15 but does A (B|C) = (A B)|(A C)? 00:05:23 where A B is common parts and A|B is combination 00:06:16 isn't the study of general properties of game trees an important part of game theory? at least the one book i've read talks about it a lot. 00:08:09 oklopol: winning theory could be your chance to include all the ridiculous ideas you've ever thought of into mathematics 00:08:23 so what's the symbol for A totally winning B? 00:08:31 i'm not sure how that maps to what category theory is to algebra though 00:08:42 Tw(A,B)? TW(A,B)? TwAB? A op B? 00:09:02 as always, A | B = A <==> A > B 00:09:13 or maybe more like >= 00:10:40 of course 00:10:43 but totally winning is about strategy 00:11:17 I think op is the best route as you know, operators are awesome and you can invent symbols for them 00:11:24 doesn't mean we should get too creative when defining the algebra of games 00:11:30 Whyever not. 00:11:38 indeedso iguess not. 00:11:48 or do i mean yes 00:11:55 Circled > would be nice. 00:12:02 i'm not really following any of these conversations 00:12:03 Might confuse with just >, but isn't that a good thing? 00:12:09 :| 00:12:14 yeah! 00:16:34 -!- alise has quit (Ping timeout: 252 seconds). 00:19:16 -!- Oranjer has joined. 00:30:42 -!- alise has joined. 00:30:55 what did i miss since what i last said? 00:32:05 beats me! 00:34:15 alise: < oklopol> yeah! 00:34:27 that is it? :P 00:35:25 well also "02:17… Oranjer has joined #esoteric" 00:35:26 that's sort of relevant to what Oranjer said 00:36:16 what is it with chess ais, you give them a huge amount of time because you don't wanna feel pressure and they just sit about doing nothing 00:36:27 you're a computer. you don't panic. stop wasting my time 00:37:50 chess is too hard anyway 00:38:23 what 00:38:37 lament: i don't care, it's entertaining 00:38:47 -!- Ilari has quit (Ping timeout: 268 seconds). 00:38:58 oh I think i may just have set up the ai wrongly 00:39:01 it just sat there and ran out of time 00:39:06 alise: AIs do use up time 00:39:22 coppro: yes but this one played fine with little time. also, as i said, it ended up not moving at all. 00:39:58 how does it end up not moving 00:40:19 lament: yeah i never learned how knights move 00:40:31 * alise tries a different type of clock 00:40:33 Oranjer: by not moving in the allocated time 00:40:42 I think they do the Kansas City Shuffle, oklopol 00:41:22 two steps this way and then one step this way oh and by the way YOU CAN FLY OVER OTHER PIECES, that's just insane 00:41:59 it's just a game after all 00:42:06 flying horses 00:42:25 -!- cal153 has quit. 00:42:47 Chess: the only playable Allegory of Islam 00:43:31 lament: your responses are really boring today, are you drunk on life? 00:43:54 i'm sober 00:44:00 Oranjer: you are way too postmodern 00:44:11 how so? 00:44:18 lament: 00:44:22 -!- Ilari has joined. 00:44:25 Muhammed flys somewhere on a flying ass 00:44:53 Muhammad, sorry 00:45:26 oklopol: empty string 00:49:24 -!- cal153 has joined. 00:57:20 -!- adu has joined. 01:00:10 -!- coppro has quit (Ping timeout: 245 seconds). 01:11:51 In which I play Chess extremely shittily: 01:11:52 1. b4 c6 {+0.17/8} 2. Nc3 Nf6 {+0.31/9} 3. Na4 d6 {+0.21/9} 4. c4 g6 {+0.06/8} 5. d4 Be6 {+0.14/8} 6. c5 Na6 {+0.06/9} 7. d5 Nxd5 {+0.79/8} 8. b5 cxb5 {+1.70/10} 9. e4 Qa5+ {+1.61/10} 10. Bd2 Qxa4 {+1.71/11} 11. Qxa4 bxa4 {+1.98/10} 12. exd5 Bxd5 {+2.00/10} 13. a3 Nxc5 {+3.09/9} 14. Ba5 Nb3 {+3.00/9} 15. Rb1 Bg7 {+3.82/10} 16. Bc7 Rc8 {+5.19/10} 17. Ba5 Nxa5 {+5.87/10} 18. g4 Bxh1 {+10.37/10} 19. Nf3 Bxf3 {+13.43/11} 20. Be2 Bxe2 01:12:06 23. Rb4 Rxa3 {+14.69/9} 24. Rb5 Rh3 {+14.96/8} 25. g5 a3 {+17.63/9} 26. f4 a2 {+22.11/9} 27. Rc5 bxc5 {+26.91/9} 28. f5 gxf5 {+27.85/9} 29. Ke1 Rxh2 {+79.98/28} 30. Kd1 a1=Q# {+79.99/28} 01:12:11 Admittedly a few mistakes were due to the mouse slipping. 01:12:27 That probably made the already ridiculous difference in skill vs the computer vastly worse 01:12:38 But hey, it was entertaining. I am awfully bad though. 01:13:48 how does one read this notation 01:13:48 can the computer give an estimate of how much you sucked? 01:16:16 Oranjer: ignore the bits in {}s 01:16:23 and then just google chess move notation 01:16:27 i'm white 01:16:29 obviously 01:16:30 hi 01:16:38 lament: probably, but i don't feel like hating myself that badly 01:17:34 alise 01:17:51 fax 01:18:00 hello 01:18:03 hello 01:18:18 I love finite calculus 01:18:27 ok zeilberger 01:18:34 ceil(burger) 01:18:38 failculus 01:18:47 it isn't really very calculusy tbh :p 01:19:04 it blows my mind that the are so many stiking similarities with the real calculus 01:20:05 it blows my mind that this blows your mind 01:20:23 given that calculus is obviously the limit of finite calculus 01:20:31 well 1 is basically the infinitesimal of the integers :P 01:20:47 finite calculus isn't calculus on integers 01:20:56 i know 01:21:09 i know you know, i just like saying it 01:21:11 it's catchy 01:21:18 ?? 01:21:22 it's not calculus on integers? 01:21:28 are you reading the same paper as me? :P 01:21:49 oh well it's calculus from integers 01:22:02 but the functions still go to R 01:22:11 fax: why not on booleans 01:22:12 mine are Z -> Z 01:22:17 boolean calculus, do it now 01:22:24 alise, I am actually reading George Booles paper on this right now 01:22:28 er book 01:22:39 haha man I'm laughing too much at the idea of boolean calculus 01:22:53 * fax frowns 01:23:00 fax: no you /must/ do it on Bool -> Bool where true : Bool, false : Bool and nothing else 01:23:03 well the reason the paper doesn't talk about Z -> R, i think, is that integers always sum to integers, so you can restrict it that way, unlike normal calculus 01:23:11 I guess I'm basically asking for calculus from naturals mod 2 01:23:13 so DO IT 01:23:16 >:3 01:23:34 -!- augur has quit (Ping timeout: 264 seconds). 01:24:01 well it could be Q -> Q also 01:24:03 but that's not as elegant 01:24:12 why are you talking 01:24:17 boolean calculus 01:24:17 now 01:24:28 alise, it's your idea, you do it! 01:24:41 i don't have a cock compiler 01:24:50 just s/Z/Bool/ in your code, job done 01:24:56 um :P that wont do it 01:25:02 i think it's very elegant from Z to R 01:25:06 hey I just realized Bool is a field 01:25:24 what's Bool? 01:25:27 oklopol, why is Z -> R better than Z -> Z? 01:26:05 gf 01:26:08 true/true = true 01:26:11 true/false = undefined 01:26:17 that's one fucking awesome field xD 01:26:19 "= undefined" *barf* 01:26:26 as in "is undefined" 01:26:27 because if we consider Z a measure space with cardinality as the measure, then sums are just integrals 01:26:29 false/true = false 01:26:32 false/false is undefined 01:26:40 *unbarf* 01:26:41 and with integration we usually have functions from our measure space to R. 01:26:42 so basically X/true = X anything else is undefined 01:27:04 oklopol, wait what 01:27:07 so the multiplicative inverse is 01:27:10 true^-1 = true 01:27:12 that's it 01:27:16 worst field ever 01:27:31 oklopol, ooh I wonder if there's a Z[i] calculus with all the nice harmonic, holomorphic stuff 01:27:31 then again multiplication is boring on booleans anyway 01:27:33 whoa 01:27:38 multiplication is division on booleans 01:27:43 wait no 01:27:49 except for half of it (/false) >_< 01:27:53 alise, unitary calculus!! 01:28:02 fax: the crazy dude's paper talked about discrete analytic functions 01:28:06 for all the cases where / is defined on bools it is identical to * 01:28:15 01:27 < alise> for all the cases where / is defined on bools it is identical to * 01:28:19 oops 01:28:24 oklopol: if you're using his notation you say R but you mean hZ_p 01:28:25 or mentioned them 01:28:26 looked neat 01:28:29 (where Z is a finite set) 01:28:37 do not pervert /our/ discourse :P 01:28:52 tbh addition on booleans is pretty nice, being xor 01:28:57 hmmmm 01:29:18 true - true = false; true - false = true; false - true = true; false - false = false; 01:29:19 heh - = + too 01:29:23 this is the best discovery I have made :)))))) 01:29:28 fax: what is 01:29:28 finding this finite calculus 01:29:36 dude it's just some addition and subtraction 01:30:48 hey fax DID YOU KNOW you also have exponentiation on booleans 01:30:54 x^true = x; otherwise undefined 01:31:04 lol 01:31:04 in fact, you can even use the ackermann function on them. 01:31:07 it's clear sums are integrals because every function is simple 01:31:07 from Z, with the usual measure 01:31:07 err wait what 01:31:07 that's bullshit, let me gather myself. 01:31:09 okay maybe it's not completely obvious 01:31:11 "Vladimir Arnold forcefully stated in one of his books that it is wrong to think about finite difference equations as approximations of differential equations. It is the differential equation which approximates finite difference laws of physics" 01:31:12 now you have INFINITE OPERATORS!!!!!!!!! 01:31:39 so fax is now the fifth ultrafinitist i gather 01:35:20 this pleases me 01:35:30 fax: I'll love you if you make a Coq module with ultrafinitist definitions of the following, paramaterised on the rational h and the prime p: Naturals, so that there is no prime greater than p; Integers, presumably with each half of the integers dedicated to a sign; Rationals, divided once more (h must fit into one of these); and Reals, defined as hZ_p. 01:35:48 Along with associated operations, the calculus he defines, and properties. 01:35:51 alise, I will help you do it :) 01:35:54 And by love you, I mean hate you love you. 01:36:06 fax: Well... I started writing it in my language but couldn't be bothered. 01:36:10 alise, I should implement (normal) construtive reals though 01:36:21 those are easy 01:36:30 following the sketch in my constructie functional analysis text 01:37:07 Sigma (f:Q+->Q), Forall (e1,e2:Q+), abs (f e1 - f e2) <= e1 + e2 01:37:08 boring 01:37:19 fax: now do it, ultrafinitistic peon 01:39:53 fax: Actually I suppose that all those sets don't neccessarily have to have the same size because they all coexist. 01:40:19 So having the integers be twice the size of the naturals (minus 1, because there's only one 0...) and having rationals be the size of the naturals plus the integers would be OK. 01:40:31 The reals have to be hZ_p by Order of Zeilberger. 01:42:30 The nice thing is that we don't need any pesky functions or anything to define these because there's a simple, finite number of cases. 01:46:53 p would be what? The largest known* mersenne prime (* known by http://coqprime.gforge.inria.fr/ ) 01:47:10 p and h are parameters to the module 01:47:43 they are universal constants like physical ones but we don't know what they are (zeilberger says that the True Value either p or h - i forget which - is unknowable so uh whatever) 01:47:50 so we just plug in values we like. 01:48:10 -!- augur has joined. 01:48:22 Time for a nick change. 01:48:39 -!- uorygl has changed nick to uorygl[hireMe]. 01:48:43 :P 01:48:45 fax: if you have an awful lot of cpu time on your hands the largest mersenne prime would be a good choice for p, yes. 01:49:03 h would be the result of pressing 0., holding down 0 for a long while, then pressing 1, probably. 01:49:23 shouldn't h come from a physical/science experiment 01:49:28 like the fine structure constant or something 01:49:43 Zeilberger claims they are separate to physical constraints and that he is a platonist. 01:50:01 Since we are following his school of ultrafinitism, not the usual physical-constraints one, that is not required. 01:50:14 1/p is a good value for h if you have that in your system. 01:50:26 What is hZ_p? 01:50:30 p is a natural and rationals = size of naturals + size of integers, so 01:50:36 1/p should always be acceptable 01:50:42 uorygl[hireMe]: Z is the integers 01:50:44 _p is subscript p 01:50:54 And h is an h? 01:50:57 Zeilberger, an ultrafinitist that believes no infinite sets exist, defines the reals as hZ_p 01:50:59 That explains so much. 01:51:06 where h is a very, very small number 01:51:09 and p is a very, very large prime 01:51:22 lol 01:51:24 01:50 < uorygl[hireMe]> That explains so much. 01:51:26 ^^^^ lol 01:51:39 So what does hZ_p mean? 01:51:50 It means hZ_p. :-P 01:52:04 That is not a definition! 01:52:23 Or, if it is a definition, then your mom is a perfectly good model of hZ_p. 01:52:27 Since your mom is your mom. 01:52:29 'Tis true 01:53:37 Z_p = Z/Zp I guess? 01:53:49 Galois field 01:53:51 Yeah, I figure Z_p is the integers modulo p. 01:53:57 I have no idea what the h is supposed to be. 01:54:13 F_p = Z/pZ 01:54:27 h is the fundamental mesh constant, it's smaller than 1 01:54:42 so hZ_p = {...-h,0,h,2h,3h,...} 01:54:56 h: It's Smaller Than One. 01:55:04 So you multiply each number by h? 01:56:08 lol 01:56:20 alise you should make slogans 01:56:22 so if h is the fundamental mesh constant, what's the cool name for p 01:56:39 uorygl this is my interpretation, but I am by no mean an expert on this 01:57:41 it doesn't actually do anything 01:57:42 Hmm, ultrafinitists don't even let you have a type of types. 01:57:54 After all, it's infinite. 01:58:00 Unless you have a finite number of sets, which would be cool. 01:58:03 oklopol: what doesn't? 02:00:01 I guess the best thing is to have the integers be of size p. 02:00:43 Which means that the naturals are of size (p+1)/2. 02:00:58 What does let you have a type of types? 02:01:05 So the rationals are of size p+((p+1)/2). 02:01:11 I know of... not many systems under which that's possible. 02:01:12 uorygl[hireMe]: Anything? 02:01:14 Nat : Set. 02:01:27 Yes, but Set !: Set. 02:01:38 Obviously. 02:01:43 But Set is still infinite. 02:02:08 So, the reals have the same size as the integers. 02:02:16 Which means that the reals are smaller than the rationals. 02:02:23 This Makes No Sense (not that ultrafinitism does); start over. 02:02:41 The naturals are of size (p+1)/2. 02:02:44 The integers are of size p. 02:02:52 your mom 02:02:52 The rationals are of size p. 02:03:06 Half negative, half positive. 02:03:11 also the h 02:03:19 So (p-1)/2 each. 02:03:26 Here's some ultrafinitism for you: take ZFC, remove the axiom of infinity, add an axiom of non-infinity. 02:03:52 fax: i don't know coq man I can't do this :( 02:06:34 alise, (p-1)/2 is valid Coq 02:07:09 yes it is 02:09:09 hmm 02:09:13 the size of the integers must be prime 02:09:41 that would make integers a field - weird 02:10:01 isn't that awesome not weird :) 02:10:14 see these are the possibilities ultrafinitism gives you dude 02:10:28 lol I will ttyl 02:10:37 I have to go 02:10:52 * Sgeo should have gotten an F on his history exam. Instead, I got a B+ 02:11:27 1234567890123456789012353 is a prime number 02:12:16 Sgeo: you've turned into a history person! 02:13:03 an historical personage 02:13:36 I got a 36/50 02:19:01 Things about the rationals: 1/p is a rational. 02:19:14 So, for every integer, there are p elements in the rationals for it. 02:19:26 p is the maximum size of a set. So, the rationals suck. 02:19:30 So, I must sacrifice something. 02:19:34 I sacrifice 1/p. 02:19:34 -!- Asztal has quit (Ping timeout: 265 seconds). 02:21:23 -!- fax has quit (Quit: 1234567890123456789012353). 02:38:14 -!- coppro has joined. 02:42:44 It would be interesting to see how varied an ultrafinitist system is. 02:42:45 My bet: Not at all. 02:47:07 -!- oklopol has quit (Ping timeout: 265 seconds). 02:51:54 http://sibeli.us/ 03:15:31 The best ultrafinitist system is a Galois field. 03:15:37 -!- uorygl[hireMe] has changed nick to uorygl. 03:16:01 what language lends itself to reflection the most? 03:16:20 BackFlip. :P 03:16:56 -!- alise has quit (Quit: Page closed). 03:16:58 not that kind of reflectiong 03:26:01 -!- werdan7 has quit (*.net *.split). 03:26:02 -!- rodgort has quit (*.net *.split). 03:26:02 -!- ttm has quit (*.net *.split). 03:28:18 Aura! 03:28:24 -!- ttm has joined. 03:28:26 jamaica! 03:28:35 Or whatever that's called. 03:29:03 -!- rodgort has joined. 03:40:39 -!- werdan7 has joined. 03:50:57 -!- Gracenotes has joined. 04:13:45 Gah, I'm so unclear sometimes. 04:17:52 I'm tempted to throw neutrons at you. 04:18:02 But that wouldn't really help. 04:18:29 -!- jcp has quit (Ping timeout: 260 seconds). 04:18:39 Sgisotype 04:43:28 -!- coppro has quit (Read error: Operation timed out). 04:59:52 -!- coppro has joined. 05:08:13 -!- coppro has quit (Ping timeout: 276 seconds). 05:24:30 Hm, smeta.na is available for the low low price of $4,000/yr 05:25:38 -!- coppro has joined. 05:34:19 -!- Oranjer has left (?). 05:39:42 * Sgeo is half tempted to use PSOX with Scheme 05:39:45 >:D 05:40:41 * Gregor three-quarters tempted to mock Sgeo's use of fractional temptation. 06:09:36 -!- skeeto has joined. 06:10:55 is it possible to write the identity function in Fractran? I don't think it's possible. 06:23:05 -!- skeeto has left (?). 06:33:24 So, what does PSOX look like? 06:33:44 One can not see PSOX. 06:33:50 One can only ... /experience/ PSOX. 06:33:56 * Sgeo decides that uorygl has been living in a bubble since the end of 2007 06:33:59 Does it provide the Unix standard library? 06:34:11 I don't think PSOX is famous. 06:34:33 It is infamous in these parts 06:35:11 It gives alise aneurysms 06:35:35 If it gives alise aneurysms, I'm almost bound to probably be slightly irritated by it. 06:45:05 -!- FireFly has joined. 06:49:15 -!- oerjan has joined. 06:56:10 Sgeo: Isn't PSOX about as well-maintained as PEBBLE these days? 06:56:27 pikhq, if PEBBLE was abandoned, yes 06:56:45 I've not touched it since, oh, 2007. 06:56:49 If people start showing interest, I may regain interest in maintaining PSOX 07:00:06 -!- kar8nga has joined. 07:06:43 -!- tombom has joined. 07:29:32 -!- oerjan has quit (Quit: leaving). 07:39:42 * Sgeo goes to try Smalltalk 07:51:44 -!- tombom has quit (Quit: Leaving). 07:52:53 -!- cheater2 has quit (Ping timeout: 246 seconds). 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:02:50 -!- cheater2 has joined. 08:13:19 -!- FireFly has quit (Quit: Leaving). 08:15:54 -!- cheater3 has joined. 08:17:55 -!- coppro has quit (Quit: I am leaving. You are about to explode.). 08:19:53 -!- cheater2 has quit (Ping timeout: 256 seconds). 08:20:29 -!- zeotrope has quit (Ping timeout: 256 seconds). 08:21:04 -!- zeotrope has joined. 08:32:21 -!- OxE6 has quit (Ping timeout: 260 seconds). 08:33:24 -!- adu has quit (Quit: adu). 08:36:59 -!- adu has joined. 08:38:20 -!- MU has joined. 08:38:29 -!- MU has left (?). 08:52:01 -!- MizardX has joined. 09:15:03 -!- lament has quit (Ping timeout: 240 seconds). 09:15:10 -!- lament has joined. 10:16:32 -!- kar8nga has quit (Remote host closed the connection). 10:23:36 -!- oklopol has joined. 10:25:28 oerjan come quick 10:37:46 oklopol! :o 10:43:52 hi 10:44:28 do the types by any chance form a quasigroup in your a/b b\a type thingie? 10:45:23 what 10:46:12 i'll take that as a no 10:46:21 no no, dont take it as anything 10:46:26 i dont know what you're asking 10:46:30 oh okay 10:46:32 i'm talking about that 10:46:48 linguistics thing you tried to teach me and someone else and he was like whaaaaaa 10:47:06 (C)CG? 10:47:08 and you were like okay this is going nowhere i'm gonna go do something otherthing. 10:47:20 oh, right 10:47:32 lecomte and retore's minimalism 10:47:34 it was about semiconflabulent grammars 10:47:39 ah minimalist 10:48:00 i dont know if the types for a well defined structure. i doubt it 10:48:04 form** 10:49:31 hmm minimalism has (a/b)*b = a, but does it have (a*b)/b? i guess that makes no sense 10:50:07 well, * is an operation on lexical items that bear types 10:50:17 i just noticed a similarity when reading about quasigroups, but i haven't actually given it any thought 10:50:21 not a type constructor 10:50:25 right 10:50:33 so a*b isn't even defined in general 10:50:41 well, it is 10:50:44 therefore it can't form an algebra 10:50:45 oh? 10:50:47 its just not a type constructor 10:50:57 look at it like this 10:50:58 but is it defined no matter what the types of a and b are 10:51:07 thats correct 10:51:12 but / is a type constructor 10:51:15 * is not 10:51:29 so you cant do (a*b)/c 10:51:33 why? because a*b is not a type 10:51:43 so you cant use / on it 10:51:52 oh alright 10:51:58 think of it like haskell 10:52:04 a -> b is a type in haskell 10:52:11 a + b is not a type 10:52:17 so you cant have some type 10:52:19 (a + b) -> c 10:52:51 so i can't really say (A/B)*B = A either, i can say c*d : B if c : (A/B) and d : B? 10:53:33 pretty but. i mean, (A/B)*B would be seen as just an operation over the type objects 10:53:37 which is fine 10:53:42 its just not a type constructor 10:53:52 its an operation on types. 10:53:58 brb 10:54:11 but as an operation over type objects, isn't it partial? 10:55:01 say we just have the types A and B, how can A*B be defined if * isn't a type constructor 10:55:37 also how can it be defined on the objects or whatever, if a : A, b : B, what's the type of a*b? 10:56:53 it is indeed partial 10:57:31 A*B is undefined. only A/B * B and B * A\B are defined 10:57:43 for all types A and B 10:57:47 okay, so they do form an algebra, but it's partial 10:57:54 therefore it clearly can't be a quasigroup 10:57:55 its just function application dude 10:58:11 its literally beta reduction 10:58:17 on types instead of functions 10:58:27 and the types are directional 10:59:02 what's the difference between type constructors and type operators? both are operators that take types to other types 10:59:15 constructors are used to define the universe of types, yes, but i don't see how that's relevant 10:59:34 i probably shouldn't be looking at this quite this algebraically. 10:59:38 sure but a type constructor is, at least in this case, and i think in all cases, total 10:59:47 ah, well yes, okay 10:59:51 -> : T x T -> T 11:00:07 * : (T x T) x T -> T 11:01:14 theres also the tensor product thing that they had tho fight 11:01:27 they had a second type constructor, x 11:01:30 so (T, /, \) forms an algebra, but it doesn't really have any structure... so i guess you should just think of those as type constructors instead of an algebra 11:01:41 well, it DOES have structure 11:01:45 its just not a well known one 11:02:08 or rather, its not an interesting one 11:02:43 if you did math, for instance, + or * over the integers has all sorts of fun properties 11:02:49 well right, that's what i meant, it's the free algebra on two binary operations, sort of 11:02:51 like, sometimes you can get back what you gave it 11:02:58 or you can go in circles 11:03:03 etc 11:03:13 / and \ are not like that 11:03:30 yeah therefore free 11:03:47 which is to say, there are finite subsets of Z which are closed under + or * 11:04:03 there is no subset of T that is closed under / or \ 11:04:13 T as a whole is closed, but no subset of it is 11:04:24 that's not true 11:04:29 yes it is 11:04:35 the subalgebra generated by A/B is a subset 11:04:37 that's closed 11:04:43 what? 11:04:59 sorry, no finite subset 11:05:05 yeah that's true 11:05:13 obviously 11:05:33 but it's freeness that's the point 11:05:39 but there ARE finite subsets of Z which are closed under *, lets say 11:05:42 {1} for instance 11:05:54 or {0} or {0,1} 11:06:06 why are you telling me this? 11:06:13 im just saying 11:06:21 oh well i guess that's allowed 11:06:25 the structure of Z under + or * is more interesting than \ and / 11:06:40 simply because you can get substructures that are interesting like this 11:08:11 you can do all sorts of fun stuff with * and + that you cant do with / and \ simply because / and \ are, you might say, information preserving 11:08:26 yeah, you might even say it's free. 11:08:45 the result of addition is not something that has a uniquely identifiable origin 11:08:56 1 + 1 = 0 + 2 = -1 + 3 = ... 11:09:19 but A/B is just A/B. theres only one way to get A/B. 11:10:15 -!- Slereah has quit (Ping timeout: 240 seconds). 11:10:27 -!- comex has quit (Ping timeout: 276 seconds). 11:10:35 i don't really know the exact definition of freeness, but that's exactly what i mean by free in the case of an algebra that doesn't have any sort of identities. 11:11:43 there's a base and there's only one way to get everything from it. in the case of no identities, we have the stronger thing that every individual operation is completely reversible 11:12:24 anyway 11:12:57 if you let * be a type operator (which it technically isnt; it operators on things _with_ types, but we can pretend it can operate on just types for convenience) 11:13:15 then you get \ / and * forming some sort of "non-free" object, as you might say 11:13:18 identities being where the structure comes from, in the free monoid we can still have ab*c = a*bc even though it's free, where {a,b,c} is the base, because we have an identity that makes them the same, but if the operation satisfies no identities, then it's fully information preserving 11:13:52 they form a partial algebra, if that's the term 11:14:06 e.g. (A/B * B)/B, ((A/B)/B)*B, etc. 11:14:32 might still be free though 11:14:39 hmmhmm 11:14:49 maybe. im just saying that there you now get the non-uniqueness of histories. 11:14:59 trues 11:15:50 i'm actually literally atm reading a book that would completely explain the role of identities in universal algebra, if i just read like 20 pages ahead 11:16:00 :P 11:16:13 -!- Slereah has joined. 11:18:25 :) 11:20:40 -!- cal153 has quit (Ping timeout: 276 seconds). 11:22:02 (which also might be why i'm obsessing about the algebraic side of these things) 11:27:07 -!- cal153 has joined. 11:50:50 -!- cal153 has quit (Ping timeout: 248 seconds). 11:54:39 -!- cal153 has joined. 12:32:09 -!- fax has joined. 12:36:12 -!- alise has joined. 12:43:23 -!- oklopol has quit (Ping timeout: 245 seconds). 12:50:24 Gregor: I finished sibeli.us 12:50:43 Your score: 175822 / Points possible: 660500 / Grade: 26% (F) 12:50:50 I couldn't go any swbps because of my kb matrix 12:50:52 *do 12:51:00 alise is kool 12:52:40 augur: + /is/ an operation on types tyvm 12:52:40 it's (Either a b) in haskell syntax 12:53:14 a*b (same thing as cartesian product) = (a,b) 13:02:13 alise: oh, well ok. :P 13:02:30 i meant + as integer addition tho 13:02:40 thats all 13:04:22 -!- alise has quit (Ping timeout: 252 seconds). 13:04:36 -!- alise has joined. 13:04:39 o hai 13:04:42 Your score: 480612; Points possible: 660500; Grade: 72% (C-); this could do swbp (1234) most of the time, though I got some key-jammery there somewhere. I have to wonder if it would've been easier with the music, though. 13:05:20 Your score: 380183 Points possible: 660500 Grade: 57% (F) 13:05:33 1234 would have worked too? That'd have made it easier 13:05:47 "Use the keys '1', '2', '3' and '4' (or 's', 'w', 'b' and 'p') for strings, woodwinds, brass and percussion." 13:05:52 That's what it says on the front page. 13:05:54 Yeah, I missed that bit. 13:06:04 I just pressed "play" without reading the instructions. 13:06:14 Sounds exactly like the sort of thing you'd do! 13:06:53 swbp is highly inconvenient on Colemak; all left hand and in 2143 order 13:06:54 HA 13:06:54 Deewiant loses at something! 13:07:09 A first! 13:07:40 XD 13:07:41 But yeah, I started thinking ohh this is easy 13:07:41 And then it was all, like, SSSWSWSWISBWndhFoiDSJpKAFPAJDOIHWDSOIWJD 13:08:04 I dreaded the fast bits from the start :-P 13:08:05 fizzie: It's worse with the music, trust me 13:08:22 With a 100+-key keyboard, though, shouldn't you be controlling just about every instrument? 13:09:24 :D 13:09:24 Deewiant: I've heard the whole thing like... once before 13:09:54 And I, several 13:09:54 So a couple of times I thought "thank god, it's over" and then more shit popped up 13:10:44 Being .fi, it's sort-of required reading, I think. 13:11:00 Or listening. Anyway. 13:11:34 It's rubbish 13:11:34 You Finlanders suck :P 13:12:21 Deewiant: More automatic tweetery, though this is a bit Finnish-only: [2010-03-10 14:53:19] Tweeted: verikissanhiekka valtaa kanavia internetissä / akuutti rautaneito kuin laiteristiriita / laiminlyöty ja kukertava (runogen) 13:12:56 What. 13:13:03 heh 13:13:40 It's automagical poetry-generation; a rather old (10 years?) bit of code that I was suggested to make auto-tweet too. 13:15:57 1234 was a lot more comfortable if not easier: Your score: 418757 Points possible: 660500 Grade: 63% (D) 13:16:12 alise: I don't think my poetic skills are up to a faithful translation, but if you want a mostly literal one... "blood-cat-litter takes over channels on the Internet / the acute iron maiden like a device conflict / neglected and colorful". 13:16:25 Though "colorful" is a crappy word for "kukertava"; I don't really know what it should be. 13:16:35 fizzie: xD 13:16:48 Wiktionary's entry -- http://en.wiktionary.org/wiki/kukertaa#Finnish -- lacks a definition. 13:17:19 fizzie: flowery? 13:18:29 I'm not sure. Perhaps, though the connection to actual flowers is (at least to me) less there. 13:18:39 1. flowery -- (of or relating to or suggestive of flowers; "a flowery hat"; "flowery wine") 13:18:39 2. flowery, ornate -- (marked by elaborate rhetoric and elaborated with decorative details; "a flowery speech"; "ornate rhetoric taught out of the rule of Plato"-John Milton) 13:19:07 It's not sense #2, but it's maybe not exactly sense #1 either. 13:19:45 Interwebs say: "It's a Finnish word for a colour that isn't of any particular colour, I think." 13:20:08 xD 13:20:11 Right 13:20:21 Weird-ass word; to me it suggests flowers 13:20:50 Deewiant: Here's one poem I created earlier: "saatanan aarre ei ole valopuu / humanistien aurinko ymmärtää antaa kuin ruoska / kaipaus ei ole käytävä eikä brainfuck" 13:20:51 But evidently that's not what it means 13:21:07 fizzie: :-D 13:21:09 *word. 13:21:09 fizzie: translayt 13:21:21 -!- kar8nga has joined. 13:22:10 alise: "The treasure of Satan is not a light-tree / the sun of humanists knows to put out like a whip / longing is not a corridor, nor brainfuck". 13:22:31 "ymmärtää antaa" is another a bit difficult one. 13:22:34 fizzie: I'd've said "insinuates" 13:23:07 Deewiant: But that's "antaa ymmärtää", isn't it? 13:23:23 Yes, but with poetic license you can write it the other way around. 13:23:39 Oh, but it's not that, in fact; that thing there in the poem is the other half from the saying "antaa ymmärtää, muttei ymmärrä antaa". 13:23:39 I don't know, that just made more sense to me. 13:24:10 The translation used the "6. put out -- (be sexually active; "She is supposed to put out")" sense of "put out". 13:24:10 Then I'd just say "understands to give" 13:24:25 And to me, that wasn't implied :-P 13:25:13 Well, you'd have to know the guy whose irc behaviour was used as a model when constructing that particular wordlist. :p 13:25:14 those would make goodterrible lyrics 13:25:14 for a goodterribleterrible song 13:26:19 Deewiant: "ymmärtää antaa" is only in the "naula" wordset, c.f. http://www.pelulamu.net/naula/ 13:26:45 I learned long ago not to visit pelulamu.net 13:27:08 So yeah, okay. :-P 13:27:09 pelulamu.net? 13:27:40 Anyway, that generator is a handcrafted CFG, mostly not by me; there's four wordsets ("poetic", "gothy", "funny" and "naula") you can tell it to use. 13:28:01 If you do "-w goth", you get out stuff like: "sinä olet pääkallo / risti kylpee veressä / pikkutyttö kylpee veressä tulvillaan kipua sydänyöllä" 13:28:08 :-D 13:28:42 pelulamu.net? 13:28:42 also TRANSLATE :| 13:28:50 Do you have this available? I could put this in /etc/profile.d 13:29:16 alise: google.com/translate_t 13:29:43 Deewiant: Sowwy, but there's only a binary-only version available; I'm supposed to clean up the code before release; have been for the last ten years. 13:29:46 no :| 13:29:49 Deewiant: http://maija.irtie.org/runogen/ anyway. 13:30:23 specially as i'm going in ... 20 seconds? 13:30:23 but srsly what's pelulamu.net 13:30:23 like finnish rotten.com or sth? 13:30:28 alise: Well, the gothy one is approximately "you are a skull / a cross bathes in blood / a little girl bathes in blood full of pain at midnight". 13:30:45 fizzie: Can you hook me up with a 64-bit binary? 13:30:47 :D 13:30:54 Deewiant: Um, sure, I guess. 13:31:15 Deewiant: Don't you have any 32-bit compatibility libs, though?-) 13:31:21 No, I do not 13:31:26 -!- alise_ has joined. 13:31:28 I have a 32-bit chroot, which I'd rather avoid when possible 13:31:32 what was said since um sure i guess 13:31:48 Three lines that are available in the tunes.org clog log 13:32:05 well as i'm leaving right now 13:32:06 :p 13:32:16 Deewiant: It also generates the output in iso-8859-1; is that a problem, or can you pipe it through iconv or something manually? 13:32:31 well bye 13:32:48 Presumably something iconv-like is no problem 13:32:52 alise: Bye 13:33:40 http://zem.fi/~fis/runogen in that case -- the server will send it as text/plain, unfortunately. 13:34:24 Awesome 13:34:45 It seems something between the program and my screen even automatically understands the 8-bittiness 13:34:55 Cheers 13:35:10 -!- alise has quit (Ping timeout: 252 seconds). 13:37:00 -!- alise_ has quit (Ping timeout: 252 seconds). 13:37:10 Yes, it's a bit strange; the output looked just fine in rxvt-unicode when I ran it directly, but when I had the Python script print it out, it came up as the missing-character ? signs. I guess Python might do something there, though I was under the impression that if I just used os.popen and read() to get a 'str'-type 8-bit string and then print that, it shouldn't go and alter the bytes. 13:37:32 Though I had to manually utf-8ify it anyway for Twitter posting. 13:38:52 Unless I'm mistaken, there was also one undocumented (by -h) command line option, though I can't remember what it did. 13:39:32 Using "-v -v -v" will give you some printouts of the rule-parsing at least. :p 13:41:04 Written in C, presumably? 13:41:13 Written in very ugly C. 13:41:17 :-) 13:41:20 That's the main reason there's only binaries. 13:41:35 Gah, that thing's written in 2002; I'm ashamed of myself. 13:42:55 Deewiant: Here's a representative snippet of code quality: http://pastebin.com/XvpEJHVv 13:43:08 Looks good to me 13:43:25 Maybe I'm overly critical. 13:43:31 ;-) 13:43:53 alise is a girl 13:46:09 Deewiant: Well... the win32 gui code at least is a mess. :p 13:46:19 Ah, but it always is 13:48:10 Deewiant: http://pastebin.com/KMqHn2e6 13:48:20 Deewiant: There's even a manually implemented checkbox-listbox thing. 13:48:50 I like Outo virhe 1 and 2 13:49:41 Heh. I don't quite know what they mean. 13:49:42 And I wonder what's going on with the number 20000 in get_opts 13:50:02 Also, the loop: for (i = 20002; i < 20013; ++i) { if (i == 20012) break; ... } is nice 13:52:17 At least the messages are cheerful 13:53:28 I think the mapping there is that 20000+N (for N = 2 .. 10) means to generate a poem of N lines; and 20011 means that the length is taken from some textfield. 13:56:18 Deewiant: Nnngh. Look at this nonsense: mii.dwTypeData = strdup("&Muu pituus... (xxxxxxxxxxxxxx)"); sprintf(mii.dwTypeData, "&Muu pituus... (%d)", dw); 13:57:04 Nonsense? :-D 13:57:34 Makes sense to me; strdup is just a not very efficient way of doing it 13:58:40 (And of course it assumes a 32-bit DWORD but I guess everybody does) 13:59:41 I could've just used snprintf to calculate the length. Except that I guess MSVC calls that _snprintf and it doesn't actually return the number of bytes that were needed, so maybe not. 14:01:12 You should use the safer _snprintf_s! 14:01:54 -!- adu has quit (Quit: adu). 14:02:42 I don't think MSVC6 had the _s functions yet, in fact. 14:02:49 Probably not 14:39:36 -!- cpressey has joined. 15:07:18 -!- ais523 has joined. 15:27:22 http://dpaste.com/hold/170444/ 15:29:33 cpressey its very long :| 15:29:56 Yeah and it doesn't tell you much you didn't already know, either :) 15:30:08 I don't really get why don't you just use types to do this proof.. 15:30:37 But it helped me work out the system (so the comment is really the most valuable) 15:30:51 In short, because I don't want to be tied to any particular type system. 15:31:10 This method of (basically) pure rewriting lets you roll your own. 15:31:53 Hm, I guess I could have just done 'nand' to make it shorter. 15:32:20 -!- oerjan has joined. 15:34:07 oerjan come quick <-- er.. 15:37:45 * Sgeo should not have stayed up until 4 last night 15:38:20 Sgeo: now you'll _never_ catch up 15:43:44 cpressey what does tied to a particular type system mean? what I am suggesting is that a type system could be on you side, rather than against you 15:44:32 I guess there's no way to make a smalltalk system look like it's native? 15:53:44 wow alise is gonna love this http://www.paulkabay.com/#trivialism 15:57:23 -!- FireFly has joined. 15:57:34 -!- augur has quit (Ping timeout: 276 seconds). 16:02:53 fax: Well, people make up new type systems all the time, as research. I'd like to have something that supports that effort, rather than picking one type system and saying "That's all I got". 16:03:08 I gotta say, I love trivialism already. 16:03:10 bbiab. 16:03:13 -!- cpressey has left (?). 16:05:33 -!- cpressey has joined. 16:07:40 fax: To me, type systems are just a special case of abstract interpretation. 16:07:53 isn't that true in general? 16:08:20 Uh... yes? Not sure what you're referring to. 16:08:27 well you don't need to say "to me" 16:08:37 Oh, well 16:09:04 why don't you have an abstract interpretation module and use it to prove this boolean stuff in a much more effecient way? 16:09:53 That was kind of the plan, but I think it turned out that this proof construct thing *is* my abstract interpretation module... 16:10:19 Abstract interpretations can be mathematically modelled as Galois connections. 16:10:43 And these rewrite rules, with types going one way and evaluations going the other way, seem to be... close to that idea. 16:12:11 (I guess read my first statement as "Type systems are just a special case of abstract interpretation. Most people seem content to work inside the special case. But I want to design very general things.") 16:14:20 Galois connections?? 16:15:07 Oh, I barely understand it myself :/ 16:16:22 http://en.wikipedia.org/wiki/Galois_connection vs my shitty explanation http://catseye.tc/about/galois-connections.html 16:17:12 Also, my examples are wrong, and I think I say "element" where I mean "subset" in one place. 16:17:13 abstract values (such as {int, even, odd, power-of-two, prime, ... }). 16:17:20 ^ THIS AER TYPES!@! 16:17:35 Yes, I know. 16:20:09 And "turing-machines-that-always-halt" is a type, too... 16:21:04 Just, good luck proving that your function always evaluates to one. 16:23:58 aerotypes, just so much hot air? 16:26:28 -!- augur has joined. 16:27:16 Is !x -> x just as inconsistent as !x = x ? In the former, every statement has the same normal form, but there's only one normal form. In the latter, there are no normal forms. 16:28:59 -!- Gracenotes has quit (Quit: Leaving). 16:29:52 with intuitionistic logic otherwise, it is. 16:30:06 !false -> false, for example 16:31:04 or hm, x -> !!x is a theorem, so 16:31:17 x -> !!x -> !x follows 16:34:33 guess who's 24 today :D 16:34:53 oerjan: I agree it's ... on the same level, I just don't know if there is terminology to distinguish between the two. 16:34:56 augur 16:35:21 Hey, augur shares Chuck Norris's birthday. 16:35:31 cpressey: they're equivalent by my argument, in intuitionistic logic 16:36:48 oerjan: Well, maybe replace ! with @ to drop the connotation of "not" ... I'm just thinking symbolically. In both systems, you can pick any two arbitrary statements, like @@@@@x and @@x, and show they are equal. 16:37:19 without the connotation of "not" neither is inconsistent 16:37:25 Only diff is the first says they're equal because they're both equal to x. The second doesn't have to pass through x. 16:37:58 er, by "pass through" I mean "refer to x directly" 16:38:20 um neither has to pass through x 16:38:24 or wait 16:38:31 Oh, you're right. 16:38:33 Well, ... 16:38:48 :( 16:39:08 I still think they're inconsistent. 16:39:15 when you say !x -> x do you mean that there _exists_ an x for which this is true? in which case !x -> x is not inconsistent, just take x = true 16:39:55 oerjan: I mean, for all x, this is true. 16:40:06 Well, not "true" 16:40:28 cpressey: @x = x is not inconsistent if @ has nothing to do with "not" 16:40:32 x is a valid evaluation of !x. 16:40:54 oerjan: OK, then I totally don't understand formal logic. 16:40:58 * cpressey goes back to school 16:41:39 cpressey: and by nothing to do with "not", i mean that you throw away all the other axioms of ! 16:41:40 ?? 16:41:46 what's !x? 16:41:51 fax: not x 16:41:57 in a particular system? 16:42:02 (if so, which one) 16:42:18 fax: i don't think cpressey knows yet :D 16:42:22 maybe the problem is that the term "inconsistent" refers to logical systems and by discarding the "logical" meaning of the system, you can no longer use that term? 16:42:50 cpressey: if you have just @x = x, you cannot prove x = y for all x and y 16:43:10 one of them has to be a number of @'s applied to the other 16:43:44 (or to something common, but that happens to be the same thing in this case) 16:44:33 I think we need to clarify the universe, like what x and y can be 16:44:58 clarify the universe by melting it down and seiving it 16:45:08 mmmmmm 16:45:10 tasty. 16:45:11 cpressey: for example say that @x has the meaning !!x 16:45:36 then it is definitely consistent for @x = x to be true, because it's true in classical logic 16:46:05 although not necessary, since it is not always true in intuitionistic logic 16:46:16 If x and y elem {0, @0, @@0, ...} then we can prove x = y for any choice. 16:46:23 yeah 16:46:53 If you start picking them from {0, 1} or something, yeah, I see how you can't prove arbitrary things. 16:47:27 OK. Will mull this over. 16:50:56 -!- BeholdMyGlory has joined. 16:53:29 fax D: 16:53:30 :D 16:53:31 D: 16:53:33 :D 16:53:36 :D 16:53:41 * augur uses email instead 16:53:45 ? 16:53:58 so slow :| 16:58:51 OK, let me restate. In a system where there is only one value (call it 0), is @x -> x considered just as "inconsistent" as @x = x (which is just shorthand for {@x -> x, x -> @x}), or are there two different terms for "everything reduces to the same normal form, so we can prove any statement" vs. "there are no normal forms, so we can prove any statement"? 16:59:40 * cpressey 's jaw drops 16:59:44 my unit tests actually passed 17:00:24 cpressey: if there is only one value, then @x = x is obviously true 17:02:11 I might need to rethink again. 17:04:00 Like, what is a value. If we add another axiom #x = #x, then there are a bunch of irreducible terms #0, ##0, ###0, which are all distinct from 0, at least syntactically -- are they values? Is @@@0 not a value (well, it can't be distinguished from 0 or @0 or any other expression involving @, so maybe not?) 17:05:25 (Logic always was my least favourite esolang...) 17:06:08 -!- tombom has joined. 17:07:04 cpressey: also it is not a requirement of logics to be defined by reductions or have normal forms... 17:07:48 cpressey, oh I see what you mean, like adding a new 'function' as an axiom, without giving it reduction rules 17:07:48 oerjan: Yeah, I realize that. Kind of. 17:08:59 Kind of like saying it is not a requirement of graphs to be directed :D 17:09:26 Or to have degeneracies 17:11:04 -!- oklopol has joined. 17:11:07 how old am i? 17:11:17 i just turned either 21 or 20 a few weeks ago 17:11:24 argh 17:11:39 http://en.wikipedia.org/wiki/Anus_language 17:12:15 i'm almost sure it's 20 17:12:21 didn't i talk about this here? 17:12:29 i'm sure i've mentioned my age 17:12:38 fax: you'd think that page should have been protected... 17:13:01 oklopol: why donto you figure it out based on your date of birth 17:13:03 oklopol: well i recall you turning 20 i think, and it was more than a few weeks ago 17:13:11 okay, good 17:13:17 fax: sounds like a lot of work 17:13:29 as in, quite possibly a year and a few weeks ago 17:13:43 ... wtf. 17:13:49 also i think my memory problems are funny, which is also a reason to ask 17:14:20 * oklopol checks what year it is 17:14:35 okay so this year i turn 2010-1989 = 21 17:14:40 so in fact i just had to turn that. 17:15:14 oh right i had to be 20 and not 19 because of something alise said about 19 last year 17:15:27 i would remember if it'd applied to me 17:15:39 clearly oklopol is a being outside time and space 17:15:49 with troubles adapting 17:15:53 oklopol, quick, fetch a GPS! 17:16:07 Hmm 17:16:17 except that it depends on the location being on earth 17:16:23 which is a small subset of space 17:16:26 ._. 17:16:42 FireFly: you'd think it should be usable in low earth orbit too 17:17:00 I guess, but still just a small subset 17:21:54 lol my compositions from ~6 years ago are craaaazy 17:31:24 in theory, you could use GPS to determine your location anywhere in space 17:31:31 but it would be rather inaccurate far from the Earth 17:33:26 When you're far enough away that the Earth is basically a point, triangulating is hard :P 18:34:21 -!- augur has quit (Ping timeout: 260 seconds). 18:39:13 Quadrescence: success 18:39:41 lament: what is success 18:41:13 i mean failure 18:41:24 but you're unbanned in #Nm 18:41:37 n/m- 18:42:07 should i join it 18:42:45 of course not 18:42:57 you should take a stand 18:43:04 o 18:54:26 fizzie: I just got one starting with "lohikäärme on lohikäärme ja lohikäärme on lohikäärme"... maybe you should've enforced a bit of variety ;-) 18:54:57 Although I guess that's arguably validly poetic 18:55:04 `translate lohikäärme 18:55:12 dragon 18:55:16 dragon 19:00:14 -!- MizardX has quit (Ping timeout: 256 seconds). 19:02:00 -!- MizardX has joined. 19:06:23 Deewiant: I think there's supposed to be some sort of enforcement like that. 19:07:06 Deewiant: Apparently not for that rule, though. 19:13:06 Apparently :-P 19:23:05 -!- MizardX has quit (Read error: Connection reset by peer). 19:23:19 -!- MizardX has joined. 19:33:21 -!- oklopol has quit (Read error: No route to host). 19:33:44 -!- oklopol has joined. 19:42:11 -!- augur has joined. 19:47:21 fax: Actually I have other motivations for doing it this way, but they're... of questionable value 19:56:09 -!- kar8nga has quit (Remote host closed the connection). 20:12:48 -!- jcp has joined. 20:27:08 -!- Phantom_Hoover has joined. 20:27:30 Is there any need for a modern-day version of INTERCAL? 20:27:46 I don't think there's been any need for INTERCAL all along 20:27:51 it's still fun to work with, though 20:27:56 Is there any point, then? 20:28:08 there isn't a whole lot of point to much of what we do here 20:28:16 although, there's always the chance we might learn something about programming 20:28:17 Would it be interesting? 20:28:18 besides, it's fun 20:28:22 Or fun? 20:28:25 Phantom_Hoover: have you seen C-INTERCAL and CLC-INTERCAL? 20:28:30 Yes... 20:28:34 quite a lot of work has gone into modernising INTERCAL already 20:29:26 OK 20:29:28 -!- Phantom_Hoover has quit (Quit: ChatZilla 0.9.86 [Firefox 3.5.8/20100214235838]). 20:29:35 that was strange 20:30:34 Yes. 20:33:53 -!- augur has quit (Ping timeout: 240 seconds). 20:38:35 Practical INTERCAL for the modern enterprise programmer 20:38:55 ais523: you just _know_ you need to write that book 20:39:08 not now, though 20:43:29 there's always the chance we might learn something about the deepest fantasies of wombats, as well. 20:43:35 it's just much, much smaller 20:43:49 ... probably 20:46:47 hey we'll need to do _some_ animal testing of our telepathic sensors before using them on humans, wombats should be excellent. 20:48:52 I just got back 20:48:54 and read the line 20:48:58 " there's always the chance we might learn something about the deepest fantasies of wombats, as well." 20:49:01 -!- augur has joined. 20:49:02 it was rather strange 20:49:07 * AnMaster tries to locate the context 20:49:25 i'm not entirely sure there was any 20:49:44 oerjan, that is rather worrying 20:49:54 AnMaster: yep, it was completely out of context 20:49:56 although, there's always the chance we might learn something about programming 20:49:57 which is why it was so strange 20:50:08 oerjan, and "INTERCAL for dummies"? 20:50:44 oh I get it now 20:51:18 well, sufficiently hyperintelligent dummies 20:51:48 or possibly crash test dummies. that might fit even better, actually. 20:52:15 :E 20:52:18 err 20:52:19 :D* 20:52:45 ...wherein AnMaster reveals himself as really being cthulhu. 20:52:50 hah 20:53:05 oerjan, or that I'm using qwerty 20:53:24 well i have no idea if they're close in dvorak or not 20:53:36 but that would be too simple of course 20:55:11 do crash test dummies dream of roadkill sheep? 20:58:10 Do people in #esoteric dream of inflatable sheep? 20:58:19 not normally, no 20:58:22 at least, I don't 20:58:35 mystery of the cube? 20:58:44 i cannot honestly say i'm sure i've ever done so 20:58:56 I haven't dreamt about that either 20:59:25 flying and cardinal sheeps possibly. But if so I must have forgot about them 20:59:38 what's a cardinal sheep? 20:59:53 oerjan, I believe that pun only works in Swedish 20:59:54 or rather 20:59:58 English/Swedish mix 21:00:11 what is the swedish 21:00:17 "karda" is a part of the process for making thread out of wool 21:00:25 I'm somewhat fuzzy on what exactly it involves 21:00:40 hm karde in norwegian 21:00:43 and the bits "kard" and "card" are produced the same in Swedish 21:00:47 well would be 21:00:53 we don't have the latter in any word afaik 21:02:37 inflatable sheep my be a cardinal sin 21:02:39 *may 21:03:30 (A sin often practiced by cardinals) 21:06:49 -!- jcp has quit (Quit: I will do anything (almost) for a new router.). 21:10:58 -!- jcp has joined. 21:20:09 -!- alise has joined. 21:24:30 -!- alise has quit (Ping timeout: 252 seconds). 21:26:55 -!- alise has joined. 21:26:58 05:41:13 Written in very ugly C. 21:27:01 the standard dialect of C 21:27:47 05:43:53 alise is a girl 21:27:48 inded. 21:27:48 *indeed 21:30:45 -!- ais523 has quit (Remote host closed the connection). 21:32:06 07:53:44 wow alise is gonna love this http://www.paulkabay.com/#trivialism 21:32:07 alise http://www.paulkabay.com/#trivialism 21:32:20 * cpressey applauds the psychic connection 21:32:20 Sorry, I'm already a preëventualist (http://viewsourcecode.org/why/preeventualist/; some links broken) 21:34:36 I'm a Stuckist, myself. 21:35:47 -!- pikhq has quit (Read error: Connection reset by peer). 21:36:03 /Philosophically/ I guess I cannot reject the proposition that all things are true. 21:36:15 -!- pikhq has joined. 21:36:16 But only because the question is a bit meaningless: from what frame of reference? 21:36:30 Even if you supply one, you must define the terms you use - and you cannot do that precisely. 21:36:39 So perhaps I actually believe that truth doesn't really exist, rather. 21:38:12 Nah, too easy. 21:38:21 Something exists, else why am I doing this? 21:38:31 And if it exists, might it not be true? It might. 21:39:03 alise philosophically 21:39:05 alise #philosophically 21:39:28 -!- alise_ has joined. 21:41:00 -!- alise has quit (Ping timeout: 252 seconds). 21:41:31 13:38:21 Something exists, else why am I doing this? 21:41:33 I don't know why you're doing this. 21:41:38 I gave (ack 4 1) half an hour, and it still didn't finish evaluating. It must hate me. 21:41:50 Also, the things that exist for you might differ from the things that exist for me. 21:42:04 Solipsism, while a ludicrously unlikely premise from inside our frame of reference, is still possible. 21:42:13 And philosophy is all about the possible yet unlikely. 21:42:27 But it's a sucky basis for action. 21:42:32 If I assumed cogito-ergo-sum, that wouldn't really be valid in philosophy, since it'd only be valid for me. 21:42:40 Solipsism, that is. 21:42:48 And philosophy shouldn't really only work for the author, otherwise it's ... not philosophy. 21:42:55 So objectively, nothing can be said to exist for certain; 21:42:57 *certain. 21:43:11 Truth is still ill-defined either way, though. 21:43:18 We have a rigorous definition of provability, but not truth. 21:43:27 We call things true if they seem to be true to us. 21:43:45 Oh, the Axiom of Choice is probably true. But that doesn't really mean anything, it's just human folly. 21:43:53 So, really, I guess I technically don't believe in anything. 21:44:11 In practice though, from this frame of reference, solipsism is bullshit, philosophical zombies don't exist, the universe is objective, and truth is a useful notion. 21:44:11 cpressey make ack doesn't terminated 21:44:59 A must confusing jumble of tenses, fax. 21:45:16 fax: ... I think I wrote it correctly, (ack 3 2) and such gave a result which corresponded with what I thought I saw when I had the impression I was looking at the Wikipedia page on the Ackermann function 21:48:30 or, what they *claim* is the Ackermann function 21:48:55 -!- Asztal has joined. 21:59:22 I should probably disappear from IRC for a while. 21:59:45 what, again? 22:00:30 Yes, again. 22:00:32 Bye! 22:00:34 -!- cpressey has left (?). 22:01:54 Bitchin' 22:02:00 *most 22:02:33 alise_: muphry's law in action 22:03:02 *Murhpy's 22:03:12 I just caused a stack overflow of the meta tower. 22:03:28 no, yes, wait, argh 22:04:48 bufuhukfbawf 22:05:00 -!- lament has quit (Ping timeout: 276 seconds). 22:05:26 fax: that's a very naughty word 22:05:35 my style is strictly ruude 22:05:38 aramakayhe 22:05:59 * alise_ wonders what's a better name for "data" that more strongly suggests induction and not just boring... data 22:06:06 "Inductive" is a bit too long. 22:06:14 -!- lament has joined. 22:17:59 -!- cheater2 has joined. 22:21:05 -!- cheater3 has quit (Ping timeout: 260 seconds). 22:30:29 -!- tombom has quit (Quit: Leaving). 22:46:12 -!- jcp has quit (Quit: I will do anything (almost) for a new router.). 23:02:45 doing classical logic in constructivist logic is fun 23:03:38 Try doing the non-contradiction theorem! 23:05:57 -!- oklopol has quit (Ping timeout: 260 seconds). 23:07:48 -!- oklopol has joined. 23:08:20 Slereah: What, not (p and not p)? 23:08:33 Yeah 23:08:35 That's in constructivist logic too :P 23:08:41 IS IT? 23:08:54 Or am I thinking of p or not p 23:08:55 Yes. 23:09:05 -!- coppro has joined. 23:09:07 We get rid of (p \/ ~p), not ~(p /\ ~p) 23:09:13 Ah yes 23:09:20 I often confuse them 23:09:21 The way to do classical logic in constructivist logic is to write everything as (p \/ ~p) -> ... 23:09:25 Contradiction and... 23:09:29 What's the other name 23:09:39 you can define classical P OR Q :<=> ~~(P \/ Q) 23:09:39 Law of the excluded middle. 23:09:42 and so on, 23:09:52 then you can prove classical tautologies 23:10:09 taut eulogies 23:10:10 http://pastie.org/864149.txt?key=efscdf3wmdhlbyfpnxqfdw 23:10:41 proof of (p->q) -> (~p->~q) -> q -> p classically 23:10:55 You have a taut body 23:10:56 I love the beauty of just letting LEM hand us a contradiction, at which point we simply take its word and prove the thing we want to prove, whatever it is, from it. 23:11:00 I can tell from your taut pants 23:11:23 Trivial system ~ 23:11:25 -!- oklopol has quit (Read error: Connection reset by peer). 23:11:29 Everything is true! 23:11:56 -!- oklopol has joined. 23:12:34 There are no trivial mathematics, just trivial mathematicians 23:12:56 -!- FireFly has quit (Quit: Leaving). 23:12:59 shut up 23:13:15 -!- BeholdMyGlory has quit (Read error: Connection reset by peer). 23:13:16 lament feels singled out there 23:13:51 -!- alise__ has joined. 23:14:10 * alise__ realises he redefined modus tollendo ponens in that proof 23:14:50 Well, almost. 23:15:14 -!- alise_ has quit (Ping timeout: 252 seconds). 23:17:27 modus penis 23:18:38 alise__: are the implications left-associative or right-associative? 23:19:15 right-associative. Obviously. As they're also the function arrows. 23:19:39 oh. wait what? 23:19:55 Curry-Howard isomorphism. Types = statements in constructivist logic. 23:20:03 Values = proofs. 23:20:03 (In a dependently-typed language.) 23:20:04 * coppro explodes 23:20:08 It's the future, mon. See: Agda, Coq, Epigram. 23:20:23 future 23:20:26 FUTURE 23:20:37 I'll believe you when I see it in .NET :P 23:20:46 .NET: The Future 23:20:47 non-dependently typed too. just you only get propositional logic then, or thereabouts. 23:21:03 .NET is looking to be the future, regrettably 23:21:32 oerjan: propositional logic is for butts 23:22:13 i see an obvious pun but i'll leave it for Slereah 23:23:48 nice of you to throw him some scraps of meat that you can't be bothered to pick from the bones 23:24:59 it's more like it seems more his style 23:25:07 (see above) 23:28:10 metastruct will be so cool :| 23:28:49 does anyone know a program that will simply ask X to clean up any temporary resources it has hanging around? 23:29:00 i n *hit by falling anvil* 23:29:01 so that I don't have to write one myself 23:29:28 yes 23:29:38 foo : (ProgDescription -> Prog) -> Prog 23:29:47 shutdown -r 23:29:53 foo p = englishDescr "ask X to clean up any temporary resources it has hanging around" 23:29:56 erm 23:30:01 foo p = p (englishDescr "ask X to clean up any temporary resources it has hanging around") 23:30:13 the program is (foo _) 23:30:15 where _ is obvious. 23:33:21 -!- augur has quit (Ping timeout: 252 seconds). 23:38:13 -!- oklopol has quit (Ping timeout: 240 seconds). 23:56:33 -!- oerjan has quit (Quit: Good night). 23:57:05 -!- oklopol has joined. 23:57:26 coppro: kill -9 23:57:36 (note: all resources considered temporary) 23:57:47 haha 23:58:39 Resources should totally include their extents. 2010-03-11: 00:00:10 -!- nooga has joined. 00:00:16 hell-oh 00:01:50 Hell, oh. 00:07:25 Hell? Ohhhh 00:08:58 oh hell 00:15:22 -!- dev_squid has joined. 00:15:27 Hey guys. 00:15:44 Does anyone know anything about Lambda Calculus syntax? 00:16:28 yes 00:17:28 What's to know? 00:17:39 http://codu.org/lambda/lambda.html , btw 00:27:15 I know absolutely everything about lambda calculus syntax. 00:28:41 I've implemented it as a library in C. 00:28:46 >:D 00:28:52 dev_squid: Yes. 00:30:31 dev_squid: An expression is either λx.E where x is an identifier and E is an expression, a b where both a and b are expressions, or an identifier (preferably enclosed in a series of lambdas, one of which has this identifier as part of the head of the lambda-term, otherwise the program makes no sense). 00:30:32 What else do you want to know? 00:30:33 There's about three things to know :P 00:30:51 Oh, and parenthesisation is allowed, the E in a lambda-expression extends as far as possible, and application is right-associative. 00:31:20 You only need to know a few more things. The reduction rules. 00:31:22 And an identifier is, say, any string of alphanumerics (perhaps disallowing numerics for the first character). Maybe even with some number of primes on the end, etc. 00:31:33 pikhq: That's not syntax. 00:31:57 Oh, he specified syntax. Darn it. 00:33:21 Evaluation of lambda calculus terms: eval _ = _|_. 00:33:26 Like my nifty lambda calculus solver btw? :P 00:33:31 Since _|_ -> a, we can show that this is isomorphic to any other evaluation function we might define. 00:33:35 Hooray for turing-completeness! 00:33:53 Gregor: What syntax does it accept? 00:34:04 Also, it doesn't even work in IE8. :-( 00:34:15 Lambda calculus, with the caveat that you type ^ instead of lambda. 00:34:22 And IE8??? WTF? 00:34:26 I doubt it even works on IE6. 00:34:39 Gregor: *Nothing* works on IE6. 00:34:44 Er... IE8 has /superior/ support for web standards. 00:34:49 At least, nothing sane. 00:34:52 Your "even" is incredibly confusingly misplaced. 00:34:52 -!- oklopol has quit (Ping timeout: 240 seconds). 00:34:57 IE8 is actually pretty good for standards. 00:35:06 IE8 is finally a tolerable web browser. 00:35:21 Not great, but it at least *supports* standards sanely. 00:35:28 Oh yeah, I remember writing that note on the solver :P 00:35:53 alise__: The note is conditional on IE usage, not on a version or a feature. 00:35:54 I hypothesise that perhaps your program has an error, since my estimation of IE8 being able to run sane, valid JavaScript is pretty high. 00:35:59 Using IE's conditional commenting thing. 00:36:23 00:36:25 I know, but it /literally doesn't work/ in IE8. 00:36:25 As in, produces errors. 00:36:30 Oh. 00:36:51 Length is null or not an object, line 76, char 17. 00:36:52 I have no IE8 to test on. 00:37:24 IT's in iswhite 00:37:24 *It's 00:37:43 var toks = lex(str); 00:37:53 > That should definitely work. 00:38:35 alise__: Uh, "var toks = lex(str);" isn't in iswhite... 00:38:35 Don't looka me. 00:38:48 pikhq: That's where 'str' in iswhite is coming from. 00:38:54 Ah. 00:38:56 Okay. 00:39:12 http://vimeo.com/4339116 neat 00:40:47 OK, .value works. 00:41:54 And yet, clearly it does not. 00:41:58 Gregor: Can you add alert(str) to the start of handleInputPrime? 00:42:01 It does, I checked it with alert. 00:42:14 So it's getting fucked up between accessing and getting to the parser 00:42:26 Does anything before iswhite mutate str? 00:42:27 alise__: YOU can add alert(str) there, just download it :P 00:42:55 Too lazy. 00:43:03 ffs use debugger instead of calling alert() 00:44:00 * nooga is thinking about booting ruby interpreter on bare metal 00:44:21 Ah yes, a truly worthwhile accomplishment that would be. 00:46:09 You could shoot yourself in the foot by reopening Foot and defining its shot? method to always return true, and it'd only take years to evaluate. 00:46:57 Ah, Ruby. 00:47:02 Walking-the-tree semantics. 00:47:14 shouldn't be so hard, interpreter depends mainly on libc 00:47:34 Well in that case, just link with a stubbed newlib. 00:47:48 that's the plan 00:47:50 Fill in the stubbed bits with raw interfaces as you go. 00:49:07 It is truly astonishing. 00:49:14 %] 00:49:15 Gregor: Stubbed bits? Is that like stubbed toes, but even worse because it's on your genitals? 00:49:15 If so, I agree. 00:51:20 I suggest as a resolution his immediate termination. 00:51:38 wtf 00:55:33 -!- dev_squid has quit (Ping timeout: 260 seconds). 00:59:24 nooga: Oh, there's no point in arguing against it. 01:00:12 oh hell 01:01:36 -!- alise has joined. 01:02:14 -!- dev_squid has joined. 01:02:17 -!- fax has quit (Quit: Lost terminal). 01:02:18 -!- alise__ has quit (Ping timeout: 252 seconds). 01:02:43 http://us.metamath.org/mpegif/avril1.html 01:02:48 Obviously. 01:03:22 I agree, that URL is very obvious. 01:03:54 [Theorem at http://us.metamath.org/mpegif/avril1.html.] 01:03:55 Obviously. 01:05:27 So what does that theorem state? 01:05:45 I don't know what conjoining with a relation means. 01:06:41 It may be helpful to realise that the whole thing, although completely valid, makes something in the vicinity of 0 units of sense. 01:07:04 And that "quidquid germanus dictum sit, altum viditur" means "everything in German sounds profound". 01:07:25 And that the First of April is the First of April. 01:07:38 maybe tinyrb would be better choice 01:08:14 besides that it uses boehm gc, pcre and other external deps 01:08:46 -!- oklopol has joined. 01:08:51 So is this theorem useful chiefly because it doesn't make much sense? 01:09:13 Who said it was useful? 01:11:39 I keep saying the wrong words. 01:11:42 s/useful/interesting/ 01:14:53 who are you two anyway? 01:18:54 -!- adu has joined. 01:19:43 -!- oklopol has quit (Read error: Connection reset by peer). 01:20:42 Who, me and alise? 01:21:12 I am e; alise is ehird. 01:21:12 yes 01:21:14 s/e/me/ 01:21:48 You shouldn't have told him that I'm me; maybe he thought /two/ people enjoy disparaging him to the max as a sort of idle hobby. 01:22:54 i should check the idents first but soehow i knew that only ehird could use such gay nick while still trying to be poignant :| 01:23:13 alise is a girl 01:23:48 named elliott 01:24:11 Ellietta 01:25:06 elliotta 01:25:09 Technically I'm an unnamed gender that is male in every way apart from (a) name and (b) correct pronouns. 01:25:09 Also, I wasn't attempting poignancy. 01:25:40 I merely remove all my built-in anti-extreme-silliness filters when talking about you. 01:25:44 gay is not a gender 01:25:54 Is lesbian a gender? 01:25:55 OR IS IT 01:26:26 01:26:26 No, but gaylesbian is. 01:29:45 alise: you are automatically disparage all my ideas when i share them 01:29:59 why? 01:30:06 WHY? 01:30:24 WHYYYYYYYYYY?!!! 01:30:30 I need someone to drive to hopeless self-despising, and you talk about how stupid you are all the time so I figured I could do worse. 01:31:17 okay 01:31:29 (And we're calling them ideas now? That's a step ;u 01:31:30 sounds fair 01:31:32 *up.) 01:40:00 gasp 01:40:17 this won't compile ;[ 01:47:25 -!- Asztal has quit (Ping timeout: 260 seconds). 01:54:15 I haz a quechion. 01:54:59 I'm sure you haz several quechions. 01:55:26 Naw, juzt 1!11!111! quechion. 01:55:50 I'm sorry, I don't speak stupid. 01:56:47 wtf 01:56:57 Could you try speaking smart? 01:57:12 Is there a name for postfix-notated statements in which the second argument in the notation (last-in argument, if you consider the statement to be a stack) is the first argument in the operation? 01:57:37 I supposed #esoteric would know just as well as anywhere else. 01:57:56 So, this: 2 2+ ? 01:58:36 Like... 23* in postfix is 2*3 in infix... 01:59:03 That's... Reverse Polish Notation... 01:59:04 If you look at the statement as a stack, it'd make sense that it'd be written in postfix notation as 32*. 01:59:23 Orly? 01:59:44 Unless you're asking for some sort of retarded "RPN but the arguments are flipped" thing. 01:59:52 Oh, thanks! I just wanted to know if there was a name for it. 01:59:56 *That* is called "DEAR GOD WHY". 02:00:40 it's Polish and Reversed, what can be worse 02:00:44 Lawl. 02:00:57 nooga: RPN is quite a nice notation. 02:00:59 So 2/3 is 32/ in RPN right? 02:01:21 No. 02:01:23 23/ 02:01:34 What you're asking for, then, is "DEAR GOD WHY". 02:01:44 ...that's just postfix notation. 02:01:47 ... Do you like making your parsing harder or something? 02:02:09 ... AKA reverse polish notation. 02:02:18 What you're asking for is a capital offense. 02:02:30 it really depends on your implementation of / 02:02:56 Well. Yeah, you could just do (flip (/)) and voila. 02:03:00 If you really want to know, it's because I'm making a constructed (non-computer) language based on a LIFO stack where you have binary and ternary operators, which operate on the prefixed arguments in reverse order. :) 02:04:03 bike me [rides on] 02:04:11 how stupid is that 02:04:25 In the world of languages, it make sense. 02:04:54 So "X Y *" would become "Push X, Push Y, Pop A, Pop B, Ret A*B". 02:04:59 Sort of. 02:05:33 What you are doing makes things harder. 02:05:44 In terms of language, you're stating the object first, then the subject, then the action. 02:07:51 So am I looking for...Polish Notation? 02:08:11 Nevermind. 02:09:12 In my mind, making the object closest to the operator the "subject" in the calculation (as opposed to the "object") makes more sense. 02:12:18 how would you write your last sentence then? 02:13:47 Hmm? 02:13:50 Lawl. 02:13:50 Bikes I ride on; the bikes, interesting. Bikes I ride on, interesting; Bikes, interesting, I ride on. 02:13:52 English is RPN. 02:14:00 Well, "poetic" English. 02:14:00 English is infix. 02:14:09 No. 02:14:13 It's multiple fixitiesl 02:14:15 *fixities. 02:14:22 It CAN be postfix, but not normally. 02:14:23 You suck. = postfix 02:14:28 Suck ass. = prefix 02:14:31 You suck ass. = infix 02:14:36 Okay, point taken. 02:14:43 And some are not really any in particular. 02:14:55 But "Bikes I ride on" is both valid poetic English and postfix. 02:17:38 -!- alise has quit (Quit: Page closed). 02:18:39 mine mind of sense calculation "subject" in operator object closest making makes in 02:18:57 It's actually easier to read that right-to-left. 02:19:11 That's in RPN where the operands are reversed. 02:19:48 please try to synthesize some practical phrase using this rule 02:20:27 * nooga pukes on tinyrb source 02:21:02 Okay. 02:21:46 -!- cal153 has quit. 02:22:15 "The white dog barks at the frightened man", ignoring articles, becomes "man frightened dog white barks". 02:22:26 The adjectives being unary operators. 02:26:22 And the verbs being binary operators. 02:27:02 -!- cal153 has joined. 02:27:44 -!- GreaseMonkey has joined. 02:29:49 Besides, poetic English tends to violate the grammatical laws of spoken English. 02:30:37 But, yeah, "Bikes I ride" is an example of what I'm talking about. 02:32:13 A postfix notation in which the operands of binary operators are reversed, effectively creating an object-subject-verb structure. 02:32:19 That doesn't violate the grammatical laws of English, it merely uses one that hasn't been common for a few centuries. 02:32:29 It's archaic then. 02:32:33 Yes. 02:32:46 It still parses fine, though. 02:33:01 I was considering making a language based on lambda calculus. 02:33:04 An example, give us. 02:33:29 Or maybe combinatory logic. 02:33:36 -!- augur has joined. 02:34:56 dev_squid: Lojban, then? 02:35:27 pikhq, I'm not entirely familiar with it, but I know it's hard to to parse mentally. :) 02:35:44 What's it have to do with lambda calculus. 02:35:49 ? 02:37:44 Lojban is based on predicate logic. 02:39:33 -!- MizardX has quit (Ping timeout: 240 seconds). 02:40:04 Lojban if pretty much f#$&*d up 02:43:39 -!- comex has joined. 02:45:32 I'm pretty sure Lojban has practically nothing to do with lambda calculus. 02:45:48 If you can find a single lambda expression in it anywhere, let me know. 02:46:23 Where's alise? 02:46:47 -!- comex has changed nick to Network. 02:47:17 -!- Network has changed nick to Guest83798. 02:47:48 -!- Guest83798 has changed nick to comex. 02:47:51 comex is attenuating. 02:47:55 Never mind. 02:48:03 Sgeo: I wrote a SCHEME program today 02:48:25 How difficult would it be for me to make my own Scheme? 02:48:29 You know, as far as I can tell, Lojban is based on predicate logic to about the same extent that English is. 02:49:11 OOOOOH 02:49:11 BURN 02:49:18 English has verbs, which act as predicates; nouns, which act as arguments to them; and adjectives and adverbs, which modify those. 02:49:23 Quadrescence, to do what? 02:49:33 Lojban has brivla, which act as predicates; brivla, which act as arguments to them; and brivla, which modify those. 02:49:46 Sgeo: It pretty prints MATH 02:49:50 in ASCII 02:50:26 I suddenly feel an urge to capitalize all languages and language-like things. 02:51:13 lojban, more like loljban 02:51:14 har har 02:51:46 Hardy har har. 02:52:10 If you think about it, though, language has a lot to do with mathematical notation. 02:52:23 that's because mathematical notation is based on language 02:52:24 well sure, it'd be more natural to express math in something familiar 02:52:28 There's a reason we write math the way we do. 02:53:30 IMHO, English makes very little sense as a language, as compared to other languages with more uniform notation. 02:54:26 Postfix/prefix notation in math or language makes more sense. It eliminates the need to declare precedence...although declaring precedence may be easier to read. 02:56:00 You don't need to declare precedence to have infix notation so long as you also have parenthesis. 02:56:51 about scheme http://vimeo.com/4339116 02:59:57 -!- coppro has quit (Remote host closed the connection). 03:04:12 I think the human brain simply doesn't like parentheses. 03:04:22 Um, I love parentheses 03:04:27 for lispie lisp lisp 03:04:52 So when you're writing a long expression from beginning to end, do you intuitively know how many parentheses to put at the end? 03:05:32 Yes 03:05:42 Especially due to how I indent 03:05:58 Do you know how many to put at the end when you don't indent that way? 03:06:05 When you use no line breaks at all? 03:06:25 I might have a slight feeling, but not definite. 03:06:43 I (think ((the (human brain)) (simply (doesn't (like parentheses 03:06:59 I think the human brain doesn't like clusterfucks of anything 03:07:00 After writing that, I had no idea how many parentheses to put at the end. Six, maybe? 03:07:09 Also, I once had to go back and add a parenthesis. 03:08:47 Oh, the human brain likes /certain/ kinds of clusterfucks ... 03:09:15 Gregor: Well yes yes 03:09:18 yes of course 03:17:26 Quadrescence, are there any particular standards for what an event framework in Scheme should look like? 03:17:46 no 03:18:32 * Sgeo was thinking, until just a few seconds ago, of having, say, evt-listen take a promise as an argument 03:18:41 But taking in a function makes more sense, really 03:20:59 Actually, I can have delay simply be a macro written in pure Scheme, right? 03:21:16 yes 03:26:07 So, my implementation might provide, say, an lle-listen, used like: 03:26:47 (lle-listen (lambda (chan name id msg) (ll-owner-say msg))) 03:27:13 What sort of macro would make using lle-listen simpler? 03:27:40 [Also, did I use lambda correctly?] 03:27:40 -!- zeotrope_ has joined. 03:28:12 you used lambda fine 03:28:39 And it's hard to say what would make it simpler 03:29:26 -!- jcp has joined. 03:29:39 Aiee, a lambda expression taking arguments that don't appear in the body. 03:29:46 i'm a goddamn bat 03:29:55 i work @ night and sleep @ day ;[ 03:30:03 -!- zeotrope has quit (Ping timeout: 240 seconds). 03:30:05 But lle-listen tells the implementation to call the function with four arguments 03:31:11 Also, I'd have to convince users of a crappy C-like language to actually learn Scheme >.> 03:31:27 And hope that my implementation isn't too pathetically slow 03:31:48 What are you implementing? 03:32:12 Scheme, in the crappy language known as LSL 03:32:30 Ah, interesting problem here; 03:32:31 : 03:32:42 LSL has builtin types that act somewhat like objects 03:33:00 A "vector literal" is written as <0.0, 1.0, 2.0> for example 03:33:20 And if assigned to a variable my_vec, I can use my_vec.x, my_vec.y, my_vec.z 03:33:37 I need to allow use of vectors in LSL-Scheme, and not have them be confused with Scheme vectors 03:34:17 Similar with rotations, but once the vector problem is solved, rotations are close enough 03:34:32 There's also a thing called a key, but they're pretty much simple strings, so 03:37:57 -!- comex has changed nick to toast. 03:38:42 I have no clue how I'd implement closures 03:39:14 Represent them as a function pointer and a closed-variable pointer, if possible. 03:39:29 If something vaguely similar isn't feasible, good luck. 03:39:32 No such thing as function pointers in LSL 03:39:44 For that matter, no such thing as pointers, perioud 03:39:47 *period 03:39:48 So, you can't reference a function? 03:39:55 Correct 03:40:11 Well, statically, you can call them. llSetPayPrice() works 03:40:25 ... 03:40:27 But you can't store a function name or address or anything like that in a variable 03:40:41 And there are no multidimensional lists 03:40:44 Good luck. 03:41:20 Maybe there's a simpler language than Scheme that I can try to implement 03:41:37 Uh. What you are going to do is pretend LSL is an assembly language. 03:42:07 You are going to be using a switch-statement-esque thing to implement functions, with a manual call stack. 03:42:25 And you will implement data structures by treating an array as memory. 03:42:50 And you will do manual garbage collection. 03:42:50 This would be a *royal fucking pain*. 03:43:45 I may completely omit call/cc 03:44:15 For what it's worth, LSL arrays are heterogeneous [in a statically typed language] 03:45:34 -!- pikhq has quit (Read error: Connection reset by peer). 03:59:40 Can let be written in terms of let*? 04:04:52 -!- coppro has joined. 04:08:31 -!- augur has quit (Ping timeout: 265 seconds). 04:26:43 -!- augur has joined. 04:30:41 -!- Gracenotes has joined. 04:37:33 -!- dev_squid has quit (Ping timeout: 240 seconds). 04:46:47 -!- pikhq has joined. 05:07:10 -!- coppro has quit (Read error: Connection reset by peer). 05:11:28 -!- coppro has joined. 06:08:28 An interpreter for any language can be written in any TC language (as long as that TC language supports access to external resources that the language being interpreted uses). Is it possible to compile any language to any TC language? 06:08:28 o.O trivially yes. It can just be an interpreter + the source in the language 06:08:28 That shouldn't count. 06:08:28 maybe you should specify "in polynomial time" 06:15:17 Sgeo: you mean to rewrite it? 06:15:40 yeah, you can do interpreter + source 06:16:11 more direct translations are possible, but, dependending on the similarity of the languages, it may be more or less the same thing 06:36:27 -!- adu has quit (Quit: adu). 07:08:13 -!- dev_squid has joined. 07:20:26 -!- dev_squid has quit (Ping timeout: 248 seconds). 07:24:51 -!- tombom has joined. 07:26:24 -!- dev_squid has joined. 07:32:10 -!- jcp has quit (Quit: I will do anything (almost) for a new router.). 07:51:34 -!- tombom has quit (Quit: Leaving). 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:06:00 -!- coppro has quit (Remote host closed the connection). 08:20:26 -!- dev_squid has quit (Ping timeout: 246 seconds). 08:23:13 -!- kar8nga has joined. 08:38:58 -!- coppro has joined. 09:00:34 -!- zeotrope has joined. 09:01:56 -!- ais523 has joined. 09:02:37 lovers of stupidly named Turing tarpits! 09:02:40 -!- zeotrope_ has quit (Ping timeout: 245 seconds). 09:02:45 I think I created a new one, in my head, last night 09:16:14 Misread that as "lovers of stupidity named Turing tarpits"; thought that a strange name for a group of people who love the stupid. 09:18:49 -!- GreaseMonkey has quit (Quit: HydraIRC -> http://www.hydrairc.org <- Nobody cares enough to cybersquat it). 09:20:00 -!- Asztal has joined. 09:26:19 anyway, the new one's called Confloddle 09:28:10 it's based around foldl and cons, which is amazingly enough to be TC by itself, I think 09:31:22 how could I live without you, bash -.- 09:32:20 you could use zsh and tell it to emulate bash 09:33:14 I've ended up just executing bash in csh, the default shell of a FreeBSD server my school uses. 09:34:21 hum, confloddle has functions and pattern-matching? 09:34:32 or at least unconsing 09:34:52 no, and no 09:34:55 it's a tarpit 09:35:16 tarpits still need syntax for expressing things 09:35:21 it has functions to the extent that C does, but only so that you can give foldl its argument 09:35:27 you can't actually execute them 09:35:39 yeah, I get that 09:36:31 anyway, syntax is reverse polish; : is cons, <> is foldl (with the function to fold on going inside the angle brackets; e represents the element, and r the return value from the previous element) 09:36:45 I'm trying to think of it in terms of lambda calculus, where a simplified foldl works on Church numerals nicely.. hm. 09:36:54 and it always uses the null list as the initial argument 09:37:01 well, initial r 09:37:03 for the foldl 09:39:22 from that, you can start building up a more standard set of primitives 09:39:48 for instance, maps any list to the null list, so you can use, say, e to get a null list, which is how you get started in the first place 09:40:09 returns the last element of a list, and reverses a list, so you can get the first element of a list with 09:45:16 what do the lists contain again? 09:57:38 other lists 09:57:42 there's nothing else for them to contain 09:58:23 but you don't get an infinite regress because the null list is legal 09:58:45 finally, to make the lang actually TC, you make the whole program a <> foldl call, and run it on an infinitely long list of null lists 09:59:10 which allows you to get one infinite loop, which is enough 10:02:33 -!- cal153 has quit (Ping timeout: 252 seconds). 10:11:18 -!- cal153 has joined. 11:58:01 now all I need to do with this lang is spec it, implement it, and compile some TC lang to it 12:04:08 -!- kar8nga has quit (Remote host closed the connection). 12:34:03 -!- cheater has joined. 12:39:50 hi 12:40:07 is there a functional version of b****fuck? 12:44:05 Lazy K is the closest analogue. 12:47:46 I would hardly call Lazy K a functional version of Brainfuck, but I suppose it's an equally evil functional language :P 12:51:39 Gregor: It's the closest analogue, not "a functional Brainfuck". Because of course that makes no sense otherwise. :P 12:51:50 True. 12:57:51 Are there any small languages that are actually enjoyable/useful to code in? Please try to understand the nature of my question before you tell me "i like brainfuck, that's enjoyable to code in" 12:58:01 I am talking about languages that actually can get stuff done. 12:58:49 i like brainfuck, that's enjoyable to code in 13:21:13 I think Glass is a bit of a get-stuff-done language, and still enjoyable. It might not be quite what you were looking for, though. 13:21:36 There's a pleasant Forthish feel, though I guess that's just the stack. 13:28:18 "Just look! I just find manual how to login gmail account without ANY 13:28:18 username!" 13:41:34 -!- MizardX has joined. 13:47:01 -!- cheater2 has quit (Ping timeout: 264 seconds). 14:01:37 -!- oklopol has joined. 14:03:57 o 14:03:57 o 14:03:57 o 14:03:57 o 14:03:58 o 14:03:58 o 14:03:58 o 14:03:59 o 14:03:59 o 14:04:00 o 14:04:02 ^ MY o's 14:04:33 okokokokokokokokokokokoko 14:04:41 okokokokokokokokokokokokokokokokokoko 14:05:07 ok 14:05:22 being on just two courses is like being on vacation 14:05:36 Quadrescence: befunge-93 is relatively small and useful 14:06:21 ais523: meh 14:10:30 It's a bit hard to get anything large-scale done in such an unstructured language, though. 14:10:45 At least in Glass you can LEVERAGE the PRODUCTIVITY of the object-oriented ENTERPRISE paradigm. 14:11:22 Thutu is also capable of having useful programs written in it, as long as they're the right sort of useful programs 14:11:28 it's TC, but much better at some things than others 14:11:34 and you'd want to use a wimpmode for things like arithmetic 14:18:12 Would using PSOX be considered such a wimpmode? 14:19:52 it's of a different nature, so I'd say no 14:20:00 it's not a wimpmode, but a wrapper 14:20:11 wimpmode's when you change the syntax or semantics of a lang to make it slightly less awful 14:21:54 I wonder how small one can make a decent forth compiler in C 14:52:30 -!- oklopol has quit (Ping timeout: 276 seconds). 15:34:49 -!- augur has quit (Ping timeout: 260 seconds). 15:36:33 -!- jcp has joined. 15:42:25 -!- MigoMipo has joined. 15:50:24 -!- dev_squid has joined. 16:07:04 -!- fax has joined. 16:08:48 -!- toast has changed nick to comex. 16:13:42 -!- FireFly has joined. 16:23:53 -!- augur has joined. 16:29:58 -!- coppro has quit (Ping timeout: 256 seconds). 16:34:25 -!- BeholdMyGlory has joined. 16:53:25 -!- coppro has joined. 17:01:34 -!- coppro has quit (Quit: I am leaving. You are about to explode.). 17:16:52 -!- tombom has joined. 17:25:47 -!- oerjan has joined. 17:46:33 -!- dev_squid has quit (Quit: Leaving). 17:49:11 -!- cheater2 has joined. 18:07:56 Quadrescence: Brainfuck is actually quite useful, so long as you don't care about file descriptors other than 0 and 1. ;) 18:08:23 Yeah sure it is. 18:08:49 Quadrescence: have you looked at io? 18:08:56 yes 18:09:07 I don't remember much from when I looked though 18:09:18 i don't know if it's enjoyable or if it gets stuff done 18:09:25 but it's definitely pretty small 18:09:52 so are forth and factor and scheme i guess 18:10:10 like r5rs scheme is actually small 18:10:23 factor is just growing and bloating 18:10:31 forth is small, scheme is small 18:11:04 factor should be renamed product then 18:19:06 -!- sshc has quit (Ping timeout: 248 seconds). 18:19:20 -!- tuffm has joined. 18:19:38 -!- tuffm has left (?). 18:19:51 -!- tuffm has joined. 18:20:04 -!- tuffm has left (?). 18:20:14 -!- ais523 has quit (Remote host closed the connection). 18:30:00 -!- sshc has joined. 18:40:48 -!- sshc_ has joined. 18:45:10 -!- sshc has quit (Ping timeout: 264 seconds). 19:01:19 -!- sshc_ has changed nick to sshc. 19:05:58 Topology: Proving your childhood dreams impossible since 1736. 19:06:30 what did topology do to you now 19:06:34 Well... 19:06:51 once a great topologist solved a famous problem by jumping off a bridge 19:06:51 what was that dream? 19:07:16 lament: i _think_ you may have misremembered that story a tiny bit 19:07:32 One of my childhood dreams was to come up with a formula that could uniquely represent every line using a pair of real numbers, continuously. 19:07:59 Unfortunately, the topological space of lines is not equivalent to the topological space of points, so my dream is impossible. 19:08:00 one of my childhood dreams was to own a tank. 19:08:03 uorygl, weird childhood dreams 19:08:37 hm are they even the same dimension 19:08:42 Yes. 19:08:50 The topological space of lines is the punctured real projective plane. 19:09:03 uorygl, and you need more than a pair to identify a line in anything more advanced than "normal" 2D spaces 19:09:16 hm right most lines are defined by where they intersect the x and y axis 19:09:21 you need a 3-tuple for 3D for example 19:09:38 and well weird topological spaces, I have nfc? 19:09:44 The insight I had is that a line can usually be defined by its closest point to the origin. 19:09:51 s/\?/./;s/,/?/; 19:09:53 i'm sure a 3-tuple is too little for 3D 19:09:53 All lines can, except for lines passing through the origin. 19:10:04 oerjan, two of them I mean 19:10:17 oerjan, I was talking about data type for the two "things" 19:10:22 he said two pairs 19:10:33 Flip this space inside-out; the horizon becomes a missing point, and the origin becomes the horizon. 19:10:40 so I pointed out you need something like two 3-tuples for 3D 19:10:50 and a 3-tuple is not a pair 19:11:06 I did mean lines in 2D Euclidean space. 19:11:32 AnMaster: no he said two real numbers 19:11:39 uorygl, well, given two points they represent exactly one line in 2D Euclidean space 19:11:50 AnMaster: that is not unique 19:11:56 oerjan, oh I read it as "two pairs" 19:12:08 oerjan, if you mean that there is more than one way to represent the same line: true 19:12:39 AnMaster: and two real numbers work for almost every line, but you cannot make it work uniquely and continuously 19:12:47 (homeomorphically) 19:12:48 anyway, you could use y=kx+m as long as the line in question is not vertical 19:13:13 in which case you could use x=m 19:13:17 Yeah, there are lots of sets of lines that you can do this for. 19:13:25 You just can't do it for all of them. 19:13:26 AnMaster: yeah that's one option. no matter what you do you'll either leave out something or duplicate something 19:13:50 oerjan, so provide two variants, one for almost all, and then a variant for the one you can't cover 19:14:05 AnMaster: but that doesn't become continuous 19:14:07 to tell the truth, I fail to see the issue with having to use two different variants 19:15:00 There's no "issue" with it. It's just that the problem I posed is to do it continuously. 19:15:02 oerjan, what exactly do you mean with continuous here? The functions in question are each continuous (well, I'm not sure about x=m, but I can't see why it shouldn't be, since here you have x as a function of y...) 19:15:12 so it must mean something else 19:15:52 Intuitively, if you're representing lines as pairs of real numbers, "continuous" means that as you move the line around in a continuous manner, the real numbers change in a continuous manner, and vice versa. 19:16:00 ah 19:16:10 well okay, what about using point + vector then? 19:16:20 and putting some restrictions on where you can place the point 19:16:50 Try it; there's no way you'll get it down to two points, give a unique representation for every line, and be continuous. 19:17:01 such as "if it ever intersects with the y axis, that point should be the base point, otherwise the point where it intersects with the x axis should be used" 19:17:12 oh wait 19:17:18 use what I said, but then not a vector 19:17:26 instead use the dx/dy value 19:17:53 or just the angle compared to the x axis in radians 19:18:10 hm, but then you need to tell if it is the x or the y axis that is the base, don't you? 19:18:15 Right. 19:18:16 unless you can encode that in the angle 19:18:20 which you can 19:18:33 The thing is though, you can't uniquely, continuously represent angles. 19:18:38 if the angle is pi/2 then it passes the x axis 19:18:54 uorygl, oh well I guess that either it isn't unique or it jumps, true 19:19:00 Right. 19:19:24 uorygl, but what about dx/dy? 19:20:20 Well, how are you going to make that work for vertical lines? 19:20:36 would you accept using R extended with infinity? 19:20:47 Nope; that's a different problem. 19:20:53 hrrm 19:21:17 uorygl, actually it is simple, for vertical line it reduces to a single number 19:21:37 Well, the problem says you have to give a pair of numbers. 19:22:14 hrrm 19:22:34 Gee. I think the topological space of lines is a Mobius strip. 19:22:51 AnMaster: there are a million (understatement) ways of hacking around this. there is however no continuous, bijective mapping from R^2 to the space of lines in R^2. 19:23:56 (the inverse is automatically continuous so it would have to be a homeomorphism, see http://en.wikipedia.org/wiki/Invariance_of_domain) 19:23:59 this is trivial if you only have positive x and y values 19:24:15 and may have negative values in the pair 19:24:59 Technically, I never said that every pair of real numbers must represent a line, only vice versa. 19:25:08 because then you can represent which axis it passes as a single number, + for y and - for x, and abs(that value) is where along said axis 19:25:09 ah. 19:25:29 and you can select some suitable way to represent the direction 19:25:45 oh wait, it wouldn't be continuous... 19:26:10 AnMaster: there are a million (understatement) ways of hacking around this. there is however no continuous, bijective mapping from R^2 to the space of lines in R^2. <-- has this been proven? 19:26:13 Hmm. If you ignore all lines that don't pass through the firt quadrant, you can do it easily. 19:26:41 AnMaster: i assume uorygl discovered the theorem and that's what started it. i don't recall it myself. 19:26:53 *started this discussion. 19:27:00 uorygl, well yes I gave an idea for it above, but not sure how to represent the direction of said line in a continuous way 19:27:26 and, it would run into issues for lines crossing both x and y axis in said quadrant 19:27:38 sure you could give one preference, but then it would jump 19:28:58 Okay, I think the topological space of lines can be represented more elegantly as a Mobius strip. 19:29:13 * AnMaster suspects this is possible with complex numbers btw 19:29:18 but I'm not certain 19:29:30 uorygl, how do you mean? 19:29:32 Topologically, a complex number is just a pair of real numbers. 19:30:10 uorygl, well yes, but don't forget that you get 4 numbers that way 19:30:15 Right. 19:30:19 Well, your angle around the Mobius strip is the angle of the line; rotating the line by 180 degrees takes you all the way around the strip. 19:30:27 wait, actually, a 3-tuple or a complex number and a real one might be enough 19:30:37 And then your distance above the Mobius strip's center line is your distance above the origin. 19:30:58 And you can s/above/to the right of/ as necessary. 19:31:21 And I think you'll agree that it's impossible to lie a Mobius strip flat. 19:31:23 hm btw 19:31:45 an infinitely long and infinitely wide Mobius strip sounds interesting 19:31:49 Actually proving that it's impossible to lie a Mobius strip flat is probably really difficult... 19:31:51 * oerjan cannot recall the technical name for the space of lines in R^2 19:32:09 AnMaster: what does it mean for a circle to be infinitely long? 19:32:23 uorygl, well, I'm not a topologist, I don't know 19:32:27 I leave it to them to work it out 19:32:52 Anyway, it doesn't need to be infinitely wide; the entire real line can be compressed continuously into an interval line (0,1). 19:33:02 Which is what the atan and tanh functions do. 19:33:14 And I think you'll agree that it's impossible to lie a Mobius strip flat. <-- I disagree 19:33:23 as you didn't give any surface 19:33:30 it could lie flat on another Mobius strip 19:33:34 with a suitable size 19:33:39 Mmkay, it's impossible to lie it flat on a plane. 19:34:00 uorygl, well that is a completely different statement :P 19:34:47 btw, I have to say I never, ever, used (sin|cos|tan)h 19:34:58 Wait, I don't think it's possible to lie one Mobius strip flat onto another. 19:35:02 uorygl, oh? 19:35:07 * AnMaster gets some paper 19:35:33 uorygl: identity function 19:35:50 oerjan: it's impossible to place two physical objects in the same place. 19:35:57 oh wait hm 19:36:07 One strip would end up on one side, the other strip would end up on the other side. 19:36:12 But there's only one side, so that doesn't work. 19:36:14 yes you cannot do it in R^3 19:36:55 uorygl, oh *physical* one? 19:37:17 Physical ones, yeah. 19:37:37 well, then it could lie flat on some weird 4D surface probably 19:38:28 or an object of suitable shape in 3D. though probably that object would need to be assembled around said Möbius strip 19:38:53 http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.55.9544 19:39:17 although it cannot be that which is the actual theorem of that paper... far too new 19:39:22 uorygl, also I think Mobius is actually an incorrect name for it. Möbius seems to be what wikipedia uses, and also is what is used in Sweden for it 19:40:18 oerjan: the abstract sort of implies that that is indeed a new theorem. 19:40:29 Since it says that it has implications. 19:40:40 uorygl: but that is ridiculous 19:40:48 it's far too simple to be new 19:41:13 the implications could be new though 19:41:19 I'll go around asking my professors how long it's been known that the space of lines in R^2 is isomorphic to the Mobius strip. :P 19:41:44 that isomorphy seems weird to me 19:42:13 i'm sure it's well-known. in fact i'm sure i've seen a name for that space but i cannot remember it 19:42:24 Yes, that space is called the Mobius strip. 19:42:25 * uorygl coughs. 19:42:36 * oerjan swats uorygl -----### 19:42:53 not just the topological space, silly 19:43:19 So, now I wonder about the space of planes in R^3. 19:43:55 uorygl, well, a point and a normal vector to the plane works 19:44:07 or a point and two vectors 19:44:17 uorygl: i'm sure those were just special cases of the notation i'm looking for :( 19:44:51 I guess the space of planes in R^3 forms a sort of analogue to the Mobius strip. 19:45:57 What do you call a topological space that looks locally like a product space? 19:46:20 hm what about a Möbius strip but with one of the ends in the "join" rotated 180 degrees? No not in the direction where you get a "normal" circle of paper. I mean rotate with the overlapping ends laying flat on top of each other 19:46:51 in one direction you get a trivial loop, but the other direction looks quite interesting 19:47:12 It sounds like you mean a two-twist Mobius strip. 19:47:24 and if you rotate a full 360 degrees you get a two-twist one yeah 19:47:28 hm 19:47:56 wait... 19:47:59 that can't be right 19:48:06 uorygl: fiber 19:48:15 Right, right, a fiber bundle. 19:48:41 A Mobius strip is a "fiber product" of a real projective line and a line segment. 19:48:51 isn't something weird supposed to happen if you cut a Möbius strip along the middle iirc? 19:48:55 Likewise, this 3D Mobius strip would be a fiber product of the real projective plane and a line segment. 19:49:07 I can't check since I can't locate any scissors atm 19:49:25 AnMaster: a two-twist mobius strip is topologically identical to a non-twisted one, it's just the embedding into 3D space which is different 19:49:33 If you do that, I think you get an ordinary, untwisted strip, except maybe entangled with itself in some strange way. 19:49:47 I mean, you get something topologically identical to an ordinary strip. 19:50:40 uorygl, yes you get a single strip, with a few twists it seems 19:50:53 hm 19:50:56 it seems one sided 19:51:11 at least my thumb following it passed both sides of the joined up point 19:51:18 uorygl: incidentally your space of planes in R^3 etc. is obviously some kind of fibre bundle in the same way - just take the plane and _translate_ it to origo to get a map onto something projective 19:51:28 wait no 19:51:38 I forgot there are now two joined up points 19:51:46 *origin 19:52:13 It's definitely two-sided. 19:53:05 and if you cut this one one in half you seem to get two loops that are entangled with each other 19:53:25 which seems fairly interesting 19:54:00 -!- cal153 has quit. 19:54:05 anyone care to explain why these things happen 19:54:06 ? 19:54:20 in a way that doesn't require me to learn topology first 19:54:50 Imagine coloring the paper strip red and blue... 19:54:57 sure 19:55:02 the two sided one? 19:55:08 Any paper strip. 19:55:11 So that on each side, it's red on one half and blue on the other half, and the dividing line runs down the strip. 19:55:17 ah 19:55:20 hm 19:55:26 -!- sshc_ has joined. 19:55:27 And when you flip the paper strip over, the colors don't switch places. 19:55:43 So no matter how you twist this strip of paper before joining it, the colors match. 19:55:59 And then if you cut down the dividing line, you always end up with something that's red on one side and blue on the other. 19:56:02 uorygl, oh, is that physically possible? 19:56:31 Physically possible to color it that way? 19:56:38 yeah 19:56:51 Sure, as long as the colors go on top of the paper, not in it. 19:56:56 Use paint, not dye. 19:57:01 I would assume not wrt. that " So no matter how you twist this strip of paper before joining it, the colors match." 19:57:17 because if you twist it half a turn that won't work would it? 19:57:28 ah 19:57:31 They still match if you twist it 180 degrees. 19:57:43 AnMaster: the paper is differently colored on each side 19:58:05 I'm tempted to make such a strip of paper and then make a video. 19:58:14 oh yeah true 19:58:16 it does work 19:58:30 -!- sshc has quit (Ping timeout: 245 seconds). 19:58:34 AnMaster: i was confused like you for a moment there 19:58:40 well, how do we go on from there 19:58:47 to the original question I asked 19:59:01 oerjan, heh 19:59:28 well now what happens when you cut that strip along the dividing line? 20:00:13 now you suddenly have a strip with consistent coloring on each side - so it must be a two-sided strip 20:00:14 if joined together as a möbius one, then it would end up as a two sided double twisted thingy I assume? 20:00:22 not sure where the colours would end up 20:00:50 The colors would end up one on one side, the other on the other side. :P 20:00:59 uorygl, ah 20:01:15 and then what about that new one going to two intertwinned loops? 20:01:27 which was what I was actually asking about 20:01:35 not the one sided -> two sided 20:01:42 but the next "transformation" 20:02:46 Colors don't help you determine whether the loops are intertwined or not. 20:03:32 uorygl, well then what does 20:03:33 -!- gm|lap has joined. 20:03:51 -!- charlls has joined. 20:03:53 * oerjan assumes knot theory :D 20:04:18 oerjan, which sounds like topology on steroids. 20:05:10 topology contains things far weirded than knots 20:05:14 *weirder 20:05:34 what use is this btw? I mean, outside mathematics 20:05:39 I don't know. Stuff like knot theory is kind of difficult, because if you're inside a knot, you can't tell that you're inside a knot. 20:05:57 Sometimes, math, though interesting, is absolutely useless. 20:06:14 In the real world, you sometimes need to embed one space into another. 20:06:28 uorygl, examples? 20:06:47 Suppose you have a circuit shaped like a Mobius strip, and you have to make it into a two-dimensional integrated circuit. 20:07:00 the only thing that vaguely rings a bell with knots is string theory, which doesn't exactly help 20:07:01 Or maybe it's shaped like a torus. 20:07:06 How many layers do you need? 20:07:17 -!- sshc_ has changed nick to sshc. 20:07:24 hm 20:07:30 With a Mobius strip, you need two layers; with a torus, you need four; with a just plain strip, you only need one. 20:07:50 uorygl: oh right, but that's more a planar graph thing than knot theory isn't it 20:08:07 There's an interesting and strange isomorphism between knot diagrams and circuit diagrams. 20:08:10 uorygl, I never seen anyone beginning by designing an IC circuit on anything but a flat surface, but I'm no expert in that field 20:08:40 or maybe those are deeply connected fields, sounds sensible actually 20:08:42 AnMaster: sometimes, you want to build a circuit reflecting an existing topological space, like if you want to build a circuit for cellular automata. 20:09:22 hm 20:09:53 uorygl: why would you need four with a torus, don't you just take one layer with the upper half and one with the lower half 20:09:57 however, I'm not sure things like game of life on a torus would count as a "real world application" :P 20:10:12 oerjan: hmm, quite right. 20:10:34 So, this isomorphism. Your knot diagram's edges rope off regions; the regions we're interested are the ones where to get to the outside of the knot diagram, you need to cross an odd number of edges. 20:10:39 oerjan, what about the join in the other direction? 20:10:55 oerjan, as in, what you said works for a tube, but I'm not sure about a torus 20:11:10 These regions become nodes in the circuit diagram. Wherever there's a crossing, two of these regions meet; the crossing becomes a resistor connecting the two nodes. 20:11:17 AnMaster: you use an actual circular arrangement? 20:11:23 oerjan, of what? 20:11:26 If the crossing goes one way, it's a one-ohm resistor; if it goes the other way, it's a negative-one-ohm resistor. 20:11:30 of each half 20:11:31 oh wait 20:11:35 right 20:11:37 that would work 20:11:46 would be an awesome cpu 20:11:51 if it was circular 20:12:01 And strangely, all the Redemeister moves, the things you can do to a knot diagram that leave it unchanged, are also things that leave the circuit essentially unchanged. 20:12:14 ?? 20:12:16 As far as I can tell, this is simply a massive coincidence. 20:12:17 strangely? 20:12:19 uorygl, !!!! resistors don't have directions 20:12:20 as in 20:12:25 they work the same both ways 20:12:35 unlike, say, a transistor 20:12:46 uorygl: what do you need for a klein bottle? >:) 20:12:48 (which has more than two legs) 20:12:48 AnMaster: let me make some ASCII art illustrating this. 20:13:42 uorygl, look, I'm currently studying AC electric theory at university. Did DC a month back or so. And if there is one thing I'm certain of, it is that resistors work the same *in both directions* 20:14:01 I know. And crossings look the same in both directions. 20:14:31 uorygl, sure, and you can't get negative resistance except by using some arrangement of transistors or such to "emulate" that 20:14:54 I know. 20:15:09 Still, negative resistors are mathematically well-defined. 20:15:29 The paste, if you care for it: http://pastebin.ca/1834339 20:15:49 uorygl, sure, but they don't actually make any physical sense 20:16:13 It's math! It doesn't need to make sense! 20:16:36 uorygl, and sure, if you rotate it 180 degrees, it looks the same except you now have a reverse B and a "forall" symbol 20:16:46 but what about it? 20:16:49 -!- adam_d has joined. 20:17:00 It's a neat isomorphism. 20:17:01 uorygl, where does the negative one ohm come into it 20:17:23 Well, if the crossing goes the other way, it's a negative resistor. 20:17:31 uorygl, also how exactly is it isomorphic to a 1 ohm resistor? 20:17:58 It's isomorphic to a 1-ohm resistor because the isomorphism maps it onto a 1-ohm resistor. 20:18:10 uorygl, and what is that isomorphism? 20:18:11 The bijection is an isomorphism because knot diagrams and these circuits obey the same laws. 20:18:23 huh 20:18:49 uorygl, so where are the poles in that ascii art? 20:19:01 is it the ends of the lines? if so, why 4? 20:19:53 The poles are the regions A and B. 20:20:52 okay... 20:21:18 this seems fairly complex 20:21:47 uorygl, and how do you represent a capacitor of 0.1 µF in that sort of thingy? 20:21:59 (modulo typos) 20:22:20 By understanding this much better than I do. 20:22:25 heh 20:22:29 good answer I guess 20:22:32 hi 20:22:42 Hi, Wareya. 20:22:46 uorygl, what about something simpler like a 1.25 Ohm resistance? 20:27:34 btw, are there matrices in more than 2 dimensions? I can't see why not, but I have never seen any such 20:27:49 use 4 parallel copies of 5 serially connected 1 Ohm resistors. maybe. 20:28:16 oerjan, hm there should be resistances that you can't reach by doing such operations 20:28:21 oerjan, what about pi Ohm for example 20:28:33 oerjan's idea is what I would have said. 20:28:47 AnMaster: um do you consider an n by n matrix as 2- or n-dimensional? 20:29:14 oerjan, well in this case as 2D. Since you can locate a given number in it by taking column and row numbers 20:29:22 which is analogous to x and y coordinate 20:29:30 in that case you probably want to look at tensors 20:29:58 The thing is, I tried making the knot diagram corresponding to three parallel copies of three serially connected one-ohm resistors, and I'm pretty sure the result was not equivalent to simply a one-ohm resistor. 20:30:06 oerjan, ah, I heard that word before. Tell me, does it extend to n dimensions for any n in R, or just to some boring fixed number n? 20:30:53 AnMaster: any natural number n. also you don't call it dimensions, that's for the underlying space (i.e. n in n by n) 20:30:58 afaik 20:31:02 oerjan, ah I see 20:31:43 uorygl, maybe you did the connection of those in the wrong way? 20:32:28 AnMaster: the term used seems to be "order" 20:32:38 oerjan, silly mathematicans ;P 20:34:26 AnMaster: i assume you can only reach rational resistances that way, at least by combining serial and parallel separately (serial adds the resistances and parallel adds their inverses iirc) 20:34:31 It's pretty simple and regular. 20:34:48 So I don't think I make a mistake. 20:35:10 oerjan, the formula is 1/R_new = 1/R_1 + 1/R_2 + ... + 1/R_n 20:35:27 well that's what i _said_ isn't it 20:35:32 oerjan, so yes, add their inverses, *plus* then invert that 20:35:58 oerjan, the sum of their inverses is 1/R_new after all 20:36:12 um right that may have been unclear 20:36:30 oerjan, I'm tempted to say: s/unclear/forgotten/ 20:36:41 not really 20:36:49 okay 20:37:34 Serial adds the resistances to get the new resistance. Paralle adds their inverses to get the new inverse. 20:37:35 why is it 1/A = 1/B + 1/C? 20:38:18 fax: well, you can derive that using Ohm's law and some basic knowledge of how circuits work. 20:38:32 oerjan, the interesting thing is that if you have a sinus formed alternating current, and write capacitances and inductances as specific complex values you can calculate as if it was all direct current 20:38:35 how do circuits work 20:38:47 fax, by suitably advanced magic 20:38:53 err, I mean technology of course ;P 20:39:15 fax: it has to do in my intuition with how resistance is the quotient of voltage and current, and serial vs. parallel adds voltage and current respectively 20:39:45 why does parallel add current? 20:39:49 oerjan, the former is called Ohm's law 20:39:56 fax, err what? 20:40:21 oerjan, what do you mean "serial vs. parallel adds voltage and current respectively" 20:40:23 Well, every pole has a voltage, and every component has a current, and the currents in and out of a pole must add up to the same thing, and every component has an equation of some sort determining the relation between voltage and current. 20:40:30 I'm unable to decode that in a sensible way 20:40:35 because for a fixed voltage across, you get the current flowing across _each_ branch for that branch 20:40:54 When you place two components in parallel, the voltage across the entire group is equal to the voltage across each component. 20:41:13 And the current across the entire group is equal to the sum of the currents across each component. 20:41:18 aha 20:41:36 what uorygl said was a lot more sensible. 20:41:37 If you want to know how analog circuits work, this applet makes it crystal clear: http://falstad.com/circuit/ 20:42:03 fax, think of parallel it as opening more roads for the traffic to drive along to the same goal 20:42:08 s/it// 20:42:31 AnMaster: well he explained why it's the case... 20:43:01 oerjan, your statement seemed somewhat confused. As in what do you mean "serial adds voltage"? 20:43:02 also i've never learned alternating current 20:43:11 what exactly does that even mean 20:43:28 AnMaster: the potential between the ends is the sum of the potentials across each step 20:43:29 AnMaster: well, do you know what he meant by "parallel adds current"? 20:43:39 oerjan, oh it is fun. You just write currents and voltages on polar form, plus what I said above for the components, and calculate the same 20:43:59 then you just pick the pieces back to the non-complex form for the final result 20:44:04 When you place two components in series, the current through the entire group is equal to the current through each component, and the voltage across the entire gruop is equal to the sum of the voltages across each component. 20:44:12 AnMaster: the potential between the ends is the sum of the potentials across each step <-- well sure 20:44:30 AnMaster: well, do you know what he meant by "parallel adds current"? <-- I can have a guess, but it isn't how I would express it. 20:45:15 uorygl, I know how to do the math, I just don't think his way of describing the operations made a lot of sense 20:45:35 to the extent I was unable to decode what operation he meant 20:46:38 * uorygl nods. 20:46:51 whatEVER 20:47:04 uorygl, plus I'm somewhat challenged when it comes to the English terms for these things. The course is in Swedish 20:48:23 current = strøm, voltage/potential = spenning, if the norwegian terms help 20:48:42 oerjan, that doesn't work as we have voltage = spänning potential = potential 20:49:05 and current = ström I know 20:49:06 well i'm a little vague on the difference between those two 20:49:13 oerjan, also what about impedans? 20:49:15 -!- jcp has quit (Quit: I will do anything (almost) for a new router.). 20:49:23 isn't that impedance 20:49:31 I suddenly wonder why you guys are speaking English. :P 20:49:32 * AnMaster looks on wikipedia 20:49:41 uorygl, oh? 20:49:44 i think it's impedans in norwegian too 20:49:57 oerjan, seems it is impedance from a quick look at wikipedia 20:50:08 It would be neat if you spoke Norwegian and Swedish and I tried to follow along. 20:50:22 at least i recall my dad using that word (he's an electrical engineer) 20:50:41 uorygl, well we would have some issues between ourselves. While the languages are similar, they are not that close 20:50:47 so some confusion would certainly arise 20:50:52 uorygl: Nei det ville det ikke 20:51:09 and that if directly translated to Swedish is somewhat silly 20:51:22 for a start what on earth does "det" refer to in there? 20:51:30 the second one that is 20:51:32 but also the first 20:51:52 AnMaster: the "It" of uorygl's sentence 20:52:19 a literal translation from me would be: "no that want that not", an "idiomatic if it was Swedish" would be "no it won't it" or such. 20:52:25 or rather, 20:52:34 i suppose you could add "være" at the end for better precision 20:52:49 oerjan, I think your "det" can be used somewhat differently than "det" in Swedish perhaps? 20:53:36 AnMaster: i don't know anything about that. it corresponds to both "it" and "there (is)" in english though, though swedish was the same 20:53:39 *thought 20:53:42 Eh. Everyone, just learn Spanish. :P 20:53:44 oerjan, please give an English idiomatic translation of the whole thing, because I haven't figured it out 20:53:49 uorygl, agreed! 20:53:55 AnMaster: "No, it wouldn't be" 20:53:56 oh wait 20:54:00 Let's see, I don't have a Swedish keyboard installed. 20:54:01 I thought you said Swedish 20:54:03 not Spanish 20:54:06 blerh 20:54:08 blergh* 20:54:13 oerjan, ah... 20:54:22 oerjan, "nej, det skulle det inte vara" 20:54:38 AnMaster: so "det" wasn't the problem actually? 20:54:40 oerjan, so the issue is "ville" which means "want" but not "would" 20:55:00 (well, vill is the base form rather) 20:55:05 börk 20:55:06 well i knew that about swedish, i think 20:55:27 oerjan, which mean what you said didn't make a lot of sense to me. I was wondering what was wanting what 20:55:32 (perhaps for a bday present?) 20:56:03 ville/skulle is a little awkward to translate i guess 20:56:04 uorygl, you know, that is so completely un-Swedish as you can get, to a Swede that is 20:57:49 oerjan, the word doesn't map 1:1 to English would for all forms, as in, the ground form "ska" maps to ~will (as in "foo will turn into bar" or whatever, not as in "last will") 20:58:32 "last will" seems to make more sense if you set in the Swedish "vill", so it turns into "last want" 20:58:45 perhaps it is some old form of a word still left in that phrase or such? 20:58:47 siste vilje 20:59:28 (in norwegian) 20:59:41 oerjan, yep similar in Swedish. though if it is the legal document you mean it would be "testamente" 20:59:53 yeah 21:00:10 I'm tempted to speak Norwegian, but as the only words I know are "skillingsbolle" and "smultring", I can't. 21:00:11 "last will and testament" 21:00:22 uorygl: at least you won't starve 21:00:30 uorygl, what is the first? 21:00:40 Cinnamon roll. 21:00:53 the latter I can guess, if it is actually sv:"smultron"? (not sure if that is spelled with o or å though) 21:01:02 * oerjan would call that kanelbolle... 21:01:12 oh kanelbulle 21:01:26 oerjan, are your bullar spheres or what? 21:01:27 ;P 21:01:30 `translatefromto sw en smultron 21:01:32 Don't ask me why Wikipedia calls it a skillingsbolle. 21:01:37 AnMaster: approximately 21:01:44 smultron 21:01:45 uorygl: oh it's probably called that too 21:01:59 oh wait 21:02:05 `translatefromto sv en smultron 21:02:07 strawberries 21:02:14 what the heck 21:02:15 oerjan, since sv:boll = en:ball. thus "kanelbolle" sounds like a ball of kanel to me 21:02:31 AnMaster: _definitely_ not smultron, then (would be "jordbær") 21:02:31 Wiktionary says that smultringer are called "munk" in Swedish. 21:02:40 oerjan, then what is "smultring" then? 21:02:42 Or "flottyr-ring" or "ringmunk" or something. 21:02:59 oerjan, also strawberries seems wrong... 21:03:00 http://sv.wikipedia.org/wiki/Munk_%28bakverk%29 21:03:08 Those munkar look delicious. 21:03:20 AnMaster: plain donuts, was the conclusion of our discussion here 21:03:27 oerjan, http://sv.wikipedia.org/wiki/Smultron 21:03:36 which are *not* strawberries, but a related thingy 21:03:57 en:strawberry = sv:jordgubbe 21:03:59 They are strawberries 21:04:03 Just not the same kind 21:04:15 hm 21:04:17 perhaps 21:04:23 I'm no specialist on that sort of thing 21:04:24 en:strawberry = fi:mansikka, sv:smultron = fi:metsämansikka 21:04:27 AnMaster: markjordbær vs. jordbær in norwegian 21:04:55 oerjan, the former seems somewhat silly. "ground earth berries" and the latter "earth berries"? 21:05:24 Swedish Wiktionary says that smultron are Fragaria vesca, which English Wikipedia says are commonly known as woodland strawberries. 21:05:30 s/Wiktionary/Wikipedia/ 21:05:37 oerjan, why not "ground earth zero-altitude berries" next 21:05:52 AnMaster: well "mark" here sounds me like it means "in the wild" in this case 21:06:03 oerjan, aha 21:06:24 oerjan, there are no such connotations of that word in Swedish 21:06:29 Lowly ground earth dirt berries! 21:06:35 while the other kind is a farmed variety, which iirc is a hybrid of markjordbær with an american relative... 21:06:42 probably it would be called "vilda &" or "vild&" or such 21:06:50 (where & as in sed) 21:06:59 (i think i heard that mentioned on television recently) 21:07:13 which must mean christmas, since that was last i watched tv 21:07:37 Wiktionary says that smultringer are called "munk" in Swedish. <-- sv:munk is *also* en:monk 21:07:39 just to confuse things 21:07:51 Yum, monks. 21:08:11 so if you google translate a Swedish article about either and happen to get some of the other things you now know the cause 21:09:00 http://sv.wikipedia.org/wiki/Munk_%28olika_betydelser%29 <-- apparently it can also be something related to hydrology 21:09:05 I have no idea what 21:10:14 `translate Munk är inom hydrologin en regleranordning för att kunna reglera inloppet eller utloppet till en damm. 21:10:18 Monk is in hydrology a regulated regime to regulate the inlet or outlet to a pond. 21:10:26 oh wait wikipedia disagrees with me 21:10:35 A regulated regime. 21:10:40 "The garden strawberry was first bred in Brittany, France in 1740 via a cross of Fragaria virginiana from eastern North America , which was noted for its flavor, and Fragaria chiloensis from Chile and Argentina brought by Amédée-François Frézier, which was noted for its large size." 21:10:44 uorygl, mistranslation 21:10:55 `translate Ursprungligen betecknar ordet munk ett vertikalt rör, där vatten kan strömma in över kanten när vattenytan i dammen överstiger kantens höjd. 21:11:00 Originally, the word denotes a monk, a vertical pipe, where water can flow onto the top when the water in the pond exceeds the edge height. 21:11:08 uorygl, it would be "regulation apparatus" 21:11:13 or some such 21:11:13 or with my recollection, rather. anyway neither ancestor was actually markjordbær then 21:12:41 strangely afaik in norwegian "munk" means only the same as english "monk" 21:12:51 heh 21:12:57 never heard any of the other meanings 21:13:37 oerjan, flottyr-ring works in Swedish too (for the non-monk-or-hydrology type of munk that is) 21:13:43 well 21:13:47 drop that - 21:14:03 it seems out of place 21:14:35 uorygl, what is your native language then? 21:14:48 heh sw:munk as bakery is named for the monk hairstyle :D 21:14:57 hah 21:14:59 that explains it 21:15:04 oerjan, also: sv not sw 21:15:12 yeah yeah 21:15:17 English. 21:15:45 uorygl, then I feel sorry that you can't almost freely concatenate words to form new longer ones! 21:15:51 :) 21:15:56 (with a well defined meaning of course) 21:16:00 We can do that; it's just that we still put spaces in between. 21:16:15 uorygl, then it isn't true concatenation 21:16:18 So we say "Grand Valley State University Honors College application" instead of "Grandvalleystateuniversityhonorscollegeapplication". 21:16:19 so it doesn't count 21:16:42 uorygl, we need to add a few binding letters in there in Swedish between some of them 21:16:54 it will take a few seconds to translate that 21:17:22 ordsammensetningsumulighetssorg 21:17:49 oerjan, "umulighet"? 21:17:55 `translatefromto en sv grand valley state university honors college application 21:17:57 Grand Valley State University utmärkelser högskola ansökan 21:18:04 omöjlighet? 21:18:09 oerjan, ah 21:18:15 Apparently Google knows what Grand Valley State University is. 21:18:27 uorygl, I'm unable to translate "collage" 21:18:34 to anything except "universitet" 21:18:38 which we already have 21:18:47 In this case, a college is a sub-unit of a university. 21:18:53 Stordalgångslänsuniversitetshedersansökan 21:18:56 and well 21:19:02 state had to be translated to län 21:19:07 which is the not exactly 21:19:14 but we don't have a real word for an US state 21:19:31 except, stat, which is also a synonym to land (country) 21:19:47 Well, "state university" has a special meaning. 21:19:49 a Swedish län is *way* smaller than a US state 21:19:56 uorygl, oh? well then I have no clue 21:20:16 A state university is a public university funded by an individual state. 21:20:29 Apparently Google knows what Grand Valley State University is. <-- no it doesn't since it didn't translate it 21:20:35 or if it is a name then I guess it does 21:21:05 uorygl, oh and it's "högskola" for "college" is not a sub-unit of a university 21:21:15 it is closer to what in UK I think used to be called a polytechnic 21:21:21 -!- pikhq has quit (Read error: Connection reset by peer). 21:21:40 It did translate it. It translated it from "grand valley state university" to "Grand Valley State University". 21:21:52 uorygl, which makes no sense in Swedish 21:21:58 since you don't do caps in the names like that 21:22:05 Well, it's an English name. 21:22:11 uorygl, we don't have title case you see 21:22:17 "Grand Valley State University (GVSU) er et universitet med hovedbase i Allendale i Michigan i Amerikas forente stater." 21:22:31 uorygl, that was norwegian 21:22:35 True. 21:22:36 or perhaps Danish 21:22:38 can't really tell 21:22:40 Norwegian. 21:22:57 mhm 21:22:59 i think danish would be "forenede" 21:23:03 or something like that 21:23:05 förenta in Swedish 21:23:13 and "er et" would be "är ett" 21:23:23 and hovedbase would be "huvudbas" 21:23:30 but that would sound awkward in that context 21:23:40 it sounds like some military main base or such 21:23:44 i'm not sure there would be any other differences between danish and norwegian there 21:24:23 * AnMaster would write it in a different way to get idiomatic Swedish 21:24:46 danish wikipedia has no article on GVSU 21:24:51 probably instead of "with main base in" it would be like "located in" 21:25:37 um main base would imply there could be other bases elsewhere 21:25:50 it seems to me 21:26:05 oerjan, perhaps, well I would check if there was, and then write something that fitted that 21:26:21 also I guess the more idiomatic English term would be HQ 21:26:34 of course the english article uses "located" :D 21:26:40 which reminds me of RTS 21:27:09 GVSU does indeed have multiple campuses. 21:27:26 The main one is in Allendale, there's another one in downtown Grand Rapids, and there are a couple of tiny ones in other places. 21:27:39 -!- pikhq has joined. 21:28:45 uorygl, "with campus in Allendale, foo, bar and so on", with the Swedish translation for "and so on" sounding a lot better in the context than it does in English 21:29:04 "med flera" (literally: with more) 21:29:09 well no that isn't a literal translation 21:29:24 I think we would tend to use "and others". 21:29:27 oerjan, English doesn't have different words for mer and fler does it? 21:29:36 uorygl, closer to the Swedish yeah 21:29:37 With campuses in Allendale, Grand Rapids, Holland and others. 21:29:52 uorygl, shows I'm not a native speaker, not thinking of that English way 21:30:04 The Holland campus is really inconvenient because it's in a different continent. 21:30:07 AnMaster: i think not, it has "less" vs. "fewer" but not the other way iirc 21:30:13 yeah 21:30:31 which is rather unsymmetrical when you think about it 21:30:38 And they speak Dutch on that campus. 21:30:40 uorygl, don't you agree? 21:30:47 I really have no idea why GVSU has a campus there. 21:30:55 Yeah. 21:30:56 uorygl, I was just about to ask you heh 21:31:20 Of course, I'm entirely kidding, and Holland is actually a city in Michigan. 21:31:31 uorygl, err? really? 21:31:44 now that is confusing 21:31:45 There is a city called Holland, Michigan, yes. 21:31:51 Paris, Texas 21:31:58 should anyone in Michigan actually *want* to travel to the real Holland 21:32:08 like, when ordering tickets 21:32:11 Once, before I knew about it, my mom said, "Bye! I'm going to Holland!", and I thought, "Wait, what?" 21:32:16 at least if the city also have an airfield 21:32:46 Isn't it quite a common thing for US people to do to name their cities and such after "real" places? 21:33:03 fizzie, why did you have to put quotes around real there? 21:33:07 it ruined the thing 21:33:38 I notice it whenever I go to maps.google.com and type in a city without bothering to scroll away from the default US-centered start view; then it zooms to somewhere in Texas or whatever. 21:33:46 Azeroth, California 21:33:53 -!- gm|lap has quit (Quit: HydraIRC is a child molester -> http://silverex.net/news <- i couldn't change my quit message). 21:34:03 Azeroth? 21:34:10 that sounds somewhat familar 21:34:15 World of Warcraft. 21:34:23 uorygl, I don't play that 21:34:24 Or just Warcraft. 21:34:25 so can't be 21:34:28 nor that 21:34:47 Wikipedia says that Holland, Michigan has two airports but no commercial flights. 21:34:58 two!? 21:35:06 what kind of metropol is that? 21:35:25 Population 35,000. 21:35:32 okay that is just weird 21:35:40 I think they're the sort of airport that consists of a hanger and a runway. 21:35:44 s/e/a/ 21:35:46 even so 21:35:54 a runway takes a lot of space 21:36:02 A road also takes a lot of space. 21:36:07 Incidentally, now that I went to test that maps.google.com, it seems to jump to the actual places I was actually looking for. Maybe they've changed that a bit. 21:36:13 usually 1 km x 20 m or so at least 21:36:14 Michigan has plenty of rural space to spare. 21:36:52 Is that 20 meters for the runway itself or also for the surrounding cleared area? 21:37:38 -!- pikhq has quit (Read error: Connection reset by peer). 21:37:41 I guess we have some roads that are about 20 meters wide. 21:37:47 uorygl, of it itself, but this varies widely with the intended use of the runway 21:37:50 some can be much wider 21:37:52 The local "small" airport here in Helsinki seems to have runways of approximately that width. 21:37:53 and much longer 21:38:06 (Based on Google's satellite imagery.) 21:38:35 consider KEDW, that has some *very* wide runways 21:38:41 (don't know exact values) 21:39:01 The "main" (Helsinki-Vantaa) airport runway width, eyeballing from that satellite photo, seems to be around 50 m. 21:39:11 well http://www.airnav.com/airport/KEDW gives 4R/22L as 91 meters wide 21:39:17 which is very wide 21:39:34 also it is over 4.5 km long that one 21:39:52 Aw, I can't check my eyeball measurements, that site seems rather US-centric. 21:40:09 fizzie, what is the ICAO code for it? 21:40:39 fizzie, well? 21:40:57 fizzie, I could probably look it up with relative ease if I can just get the ICAO code for it.. 21:41:17 it would start on E (north Europe) I know that 21:41:25 -!- pikhq has joined. 21:41:30 I don't know what the second letter is for finland 21:41:45 EFHK. 21:42:08 It's F for Finland. (Or maybe it's just a happy accident and not by design.) 21:42:31 Does K mean United States? 21:42:49 uorygl, yes, you have 3 letters for inside the US 21:43:00 iirc france has a single letter prefix too 21:43:04 and a few other big countries 21:43:23 I just realized that I don't know what France calls itself. 21:43:41 fizzie, I forgot how to extract this from the flightgear airport data... 21:44:06 They call themselves France. That was easy enough. 21:44:22 _la_ France 21:44:22 fizzie, what is your equiv of luftfartsverket? 21:44:54 they should have some sheets of info on the airport 21:44:59 on their website 21:45:27 AnMaster: I guess it's called Finavia nowadays. And yes, I guess they'd have that. 21:45:28 with stuff like VOR freqs and any ILS glideslopes and landing patterns and what not 21:45:35 AnMaster: hey you're not supposed to spell that exactly the same as in norwegian! 21:46:27 fizzie, "Finavia" sounds like some company flying cheap flights to tourist filled up islands or such 21:46:32 hm actually it's no longer called that in norwegian 21:46:47 Avinor now 21:46:56 ooh that sounds as silly... 21:46:58 as the Finnish one 21:47:11 fizzie: shall we beat him up? 21:47:38 oerjan: Yes. Do you want to be the one doing the beating, or the holding? 21:47:47 hah 21:47:49 ouch, choices 21:48:01 oerjan, also from which direction to attack? 21:48:08 and how to represent it? 21:48:24 stealth attack! -----### 21:48:28 as a vector? If so, what would the base (is that the correct English term?) be 21:48:34 oerjan, no 21:48:41 oerjan, you got that wrong i think 21:48:52 hm? 21:48:55 oerjan, it seems to be one - short 21:49:13 no 21:49:23 fizzie, btw http://www.finavia.fi/files/finavia2/Taulukot/Airport_Facts_Chart_Jan09.pdf 21:49:37 Five hyphens and three pounds, right? 21:49:43 fizzie, your measurement is way off, those are all about 60 m wide 21:50:07 the one I gave was for a rather small airport 21:50:15 uorygl: as it should be! 21:50:22 AnMaster: It still rounds to 50 if you quantize things with large enough granularity. 21:50:28 also, just CAT II ILS heh 21:50:37 is there a larger airport near there? 21:51:03 if not I'm really surprised at the main Helsingfors airport not having a CAT III ILS 21:51:21 There's nothing larger than Helsinki-Vantaa in Finland, no. 21:51:27 fizzie, heh 21:51:48 But the one I approximated at 20 m width was another place. 21:52:38 fizzie, oh? you said EFHK when I asked 21:52:53 Yes, that was for the 50 m figure. 21:53:02 The "main" (Helsinki-Vantaa) airport runway width, eyeballing from that satellite photo, seems to be around 50 m. 21:53:11 fizzie, I was asking about the 20 meter one, I must have missed that line 21:53:34 That one; it's EFHF for the tiny almost-in-the-city-centre airport. 21:54:28 It's not listed in that facts chart either; it's possible that it's still administered by the (apparently still existing as a subset of another government thing) Finnish Civil Aviation Authority thing, and not by the Finavia state-owned-enterprise nonsense. 21:55:26 ffs, lfv.se has redesigned, I'm unable to find the data on Swedish airports 21:55:32 flight weather yes... 21:55:36 -!- Gracenotes has quit (Quit: Leaving). 21:55:41 but not the landing patterns and so on 21:55:45 I know I have read it before 21:55:49 If I read https://ais.fi/ais/eaip/aipcharts/efhf/hfad.pdf right that 20 m is actually 30 m. (At least in the N x M numbers the N matches the listed runway lengths.) 21:56:23 fizzie, charts like that plus a lot more I remember seeing on lfv.se ... 21:56:23 I like it how they have that other runway exactly 2^10 metres. 21:56:25 AnMaster: clearly it's to confuse the terrorists 21:56:46 oerjan, -_- 21:57:23 fizzie, yes seems to be 30 meters wide asphalt 21:57:53 fizzie, also note the listing with the four runways down in the corner 21:58:06 fizzie, do you know where the two "missing" ones are ;P 21:58:35 what about you oerjan? 21:59:26 Are those just the same things in both directions? It sure looks that way. 21:59:32 fizzie, indeed 22:00:01 fizzie, I expect oerjan would have answered before you if the directions had been given as radians instead of magnetic heading 22:01:07 what is the google thingy to search for things that links to a given url? 22:01:20 Anyhow, https://ais.fi/ais/eaip/en/ seems to be the site for that sort of detailed information; it's Finavia-operated, but couldn't find any links to it from the mostly-PR-stuff finavia.fi site. At least Google helped. 22:01:36 I suddenly wish .523 were a TLD. 22:01:43 uorygl, why? 22:02:50 AnMaster: Do you mean the link: operator? 22:02:57 fizzie, ah thanks 22:02:58 (http://www.google.com/intl/en/help/operators.html) 22:03:01 well, that didn't solve it 22:03:51 Doing "link:" searches seems to work rather randomly nowadays, anyway. 22:04:26 aha http://www.lfv.se/sv/LFV/Flygtrafiktjansten/FPC/IAIP/AD-0-4/AD-2/ 22:04:28 there we go 22:04:42 wow that is a lot of separate pdfs: http://www.lfv.se/sv/LFV/Flygtrafiktjansten/FPC/IAIP/AD-0-4/AD-2/S/ 22:05:18 AnMaster: i might have answered before fizzie if i had either (1) been looking at your page (2) not been browsing reddit 22:05:32 oerjan, suuuure ;P 22:06:33 fizzie, oh and it seems ESSA at least have CAT III ILS :P 22:06:47 -!- werdan7 has quit (Ping timeout: 615 seconds). 22:09:34 AnMaster: because then we could have ais.523. 22:14:18 -!- werdan7 has joined. 22:16:01 uorygl, -_- 22:18:32 -!- MigoMipo has quit (Read error: Connection reset by peer). 22:29:11 Quadrescence: thermo says STAY OUT of #nm 22:29:29 so you should probably join just to piss him off 22:32:25 lament, what is #nm about? 22:32:31 nanometers? 22:32:37 nautical miles? 22:32:52 naughty midgets 22:33:33 no mathematicians 22:34:00 or perhaps naughty mathematicians 22:34:23 would that be like not writing => when you should? 22:35:59 What's the irssi command to swap the current window with the given window 22:36:05 ^H? 22:36:08 oerjan: hmm, what was it again - two contumacious cubits per naughty midget? 22:36:20 olsner, ??? 22:36:38 -!- MizardX has quit (Read error: Connection reset by peer). 22:36:44 AnMaster: !!! 22:36:45 why cubits? 22:37:06 olsner: itym cupids 22:37:07 oh wait, not qubits? 22:37:26 "A cubit is the first recorded unit of length and was one of many different standards of measurement used through history." 22:37:28 says wikipedia 22:37:29 AnMaster: for their contumacity, of course 22:37:46 olsner, and itym qubits 22:37:59 oerjan: not that I did, but I could have meant it 22:38:53 -!- MizardX has joined. 22:39:20 `define cubit 22:39:23 * an ancient unit of length based on the length of the forearm \ [19]wordnetweb.princeton.edu/perl/webwn \ * CUBIT is an open source multi-touch system designed by Stefan Hechenberger and Addie Wagenknecht for NOR_/D. It was developed to "demystify multitouch" technology through making its software and hardware 22:40:45 -!- tombom has quit (Quit: Leaving). 22:41:36 -!- charlls has quit (Read error: Connection reset by peer). 22:45:48 -!- zeotrope has quit (Read error: Operation timed out). 22:48:29 -!- zeotrope has joined. 22:53:01 -!- nooga has quit (Ping timeout: 264 seconds). 23:00:00 -!- nooga has joined. 23:14:26 -!- adam_d has quit (Quit: Leaving). 23:30:18 -!- BeholdMyGlory has quit (Remote host closed the connection). 23:54:37 -!- fax has quit (Quit: Lost terminal). 23:57:18 -!- coppro has joined. 23:57:53 -!- FireFly has quit (Quit: Leaving). 2010-03-12: 00:11:42 -!- coppro has quit (Remote host closed the connection). 00:12:37 -!- coppro has joined. 00:15:22 -!- Oranjer has joined. 00:46:18 -!- augur has quit (Ping timeout: 248 seconds). 00:50:42 -!- oerjan has quit (Quit: Reboot). 01:01:34 -!- oerjan has joined. 01:48:12 -!- oerjan has quit (Quit: Good night). 02:04:03 -!- lament has quit (Ping timeout: 240 seconds). 02:05:23 -!- lament has joined. 02:38:51 -!- jcp has joined. 02:49:22 -!- augur has joined. 02:55:17 -!- coppro has quit (Remote host closed the connection). 02:55:52 -!- coppro has joined. 02:56:01 -!- coppro has quit (Remote host closed the connection). 02:56:52 -!- coppro has joined. 03:08:53 -!- Asztal has quit (Ping timeout: 265 seconds). 03:40:41 -!- rodgort has quit (Ping timeout: 246 seconds). 03:43:51 -!- Asztal has joined. 03:53:10 -!- rodgort has joined. 04:01:59 -!- Azstal has joined. 04:04:08 -!- Asztal has quit (Ping timeout: 255 seconds). 04:04:22 -!- Azstal has changed nick to Asztal. 04:16:44 -!- zzo38 has joined. 04:17:14 Those people on #ubuntu won't help me I need to make a autorun CD that can download the following program from the internet: http://wiki.freegeekvancouver.org/w/index.php?action=raw&ctype=text/css&title=Qc.sh 04:17:33 -!- Azstal has joined. 04:18:42 -!- Asztal has quit (Ping timeout: 252 seconds). 04:18:42 -!- Azstal has changed nick to Asztal. 04:25:10 -!- adu has joined. 04:26:30 -!- zzo38 has quit (Remote host closed the connection). 04:29:22 -!- MizardX has quit (Ping timeout: 276 seconds). 04:47:15 -!- zzo38 has joined. 04:47:22 Also, I would like to see if you can like this game and if you can figure it out: http://zzo38computer.cjb.net/GAMES/100level.zip 04:50:44 -!- Oranjer has left (?). 04:55:43 -!- zzo38 has quit (Remote host closed the connection). 05:10:59 -!- SimonRC has quit (Ping timeout: 246 seconds). 05:20:15 -!- SimonRC has joined. 05:26:49 -!- Asztal has quit (Ping timeout: 260 seconds). 06:48:05 -!- Libster has joined. 06:48:10 hello 06:48:55 oh hi Quadrescence didn't know you were in here too 06:49:22 Libster: http://www.youtube.com/watch?v=An5afQemAV4 07:01:18 -!- cheater2 has quit (Read error: Connection reset by peer). 07:01:44 -!- cheater2 has joined. 07:06:34 -!- tombom has joined. 07:11:59 should i spam this channel [ ] yes [ ] no 07:12:47 eh don't have the energy to troll here tonight 07:12:49 -!- Libster has left (?). 07:38:44 -!- jcp has quit (Quit: I will do anything (almost) for a new router.). 07:50:53 -!- tombom has quit (Quit: Leaving). 07:56:54 -!- oerjan has joined. 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:24:17 -!- oerjan has quit (Quit: leaving). 08:48:53 -!- Quadrescence has quit (Quit: omghaahhahaohwow). 08:52:15 -!- cheater has quit (Ping timeout: 245 seconds). 08:52:18 -!- cheater has joined. 09:05:21 -!- lament has quit (Ping timeout: 258 seconds). 09:08:03 -!- lament has joined. 09:28:53 -!- lereah_ has joined. 09:28:57 "In 1990, for instance, Cristopher Moore devised a kind of idealized pin-ball machine which is capable of universal computation." 09:28:59 Duuuuude 09:29:08 Why didn't anyone implement that! 09:31:26 Because it requires a frictionless environment and perfect aim and timing, I imagine. 09:31:44 previous work is from 1982 - http://en.wikipedia.org/wiki/Billiard-ball_computer 09:31:47 Then again, a powered computer can overcome such concerns. 09:32:13 I've written two different programming language specs based on the billiard ball machine! 09:33:11 :D 09:35:37 To actually implement a billiard ball computer, I think you'll want an array of magnets that turn on and off periodically. 09:37:07 Should be pretty easy to simulate and create. 09:56:56 I'm tempted to do that. 10:20:37 -!- adu has quit (Quit: adu). 10:27:43 http://i.imgur.com/0B8s9.gif 12:10:03 -!- zeotrope has quit (Ping timeout: 240 seconds). 13:10:05 -!- lereah_ has left (?). 13:10:11 -!- lereah_ has joined. 13:24:04 -!- MigoMipo has joined. 13:31:54 -!- FireFly[DS] has joined. 13:45:45 -!- ais523 has joined. 13:51:56 -!- MigoMipo has quit (Remote host closed the connection). 14:05:51 hello esoterians 14:05:54 how are you doinging 14:06:30 well... 14:06:35 it's well 14:06:48 like, wif wata? 14:08:00 Though I, like, have to go soon 14:08:37 make since 14:10:41 like, now 14:10:43 -> 14:10:48 -!- FireFly[DS] has quit (Quit: ClIRC - IRC client for Nintendo DS). 14:47:23 -!- MizardX has joined. 15:24:21 -!- fax has joined. 15:24:39 -!- fax has quit (Changing host). 15:24:39 -!- fax has joined. 15:55:09 -!- ais523 has quit (Read error: No route to host). 15:58:52 lament? 15:59:28 I am not sure real analysis IS the limit of the finite calculus 16:04:15 fax, hm? what is real analysis about exactly? 16:04:17 -!- ais523 has joined. 16:04:21 hi ais523 16:04:22 -!- ais523 has quit (Changing host). 16:04:22 -!- ais523 has joined. 16:04:44 hi 16:04:53 ais523, suggestion: identify before joining channels. Freenode sends a fake quit nowdays for host mask changes 16:04:58 * ais523 (~ais523@147.188.254.119) has joined #esoteric 16:04:59 * ais523 has quit (Changing host) 16:04:59 * ais523 (~ais523@unaffiliated/ais523) has joined #esoteric 16:06:20 AnMaster, like infintesimals, or limits -- it's all about the continuum of real numbers and functions on real numbers 16:06:39 what calculus is made of 16:06:49 fax, why is it called finite analysis if it works on R, (an uncountably infinite set).. 16:07:06 no 16:07:07 unless the name "real analysis" is misleading 16:07:25 fax, err, finite calculus 16:07:32 but same question still stands 16:07:38 (with the typo corrected) 16:07:56 AnMaster, I explained what real analysis is 16:08:11 fax, yes, and then why is it called finite calculus? 16:08:12 that was not a description of finite calculus 16:08:19 I am not sure real analysis IS the limit of the finite calculus 16:08:25 -!- ais523 has quit (Read error: Connection reset by peer). 16:08:25 it sounded like it was more? 16:08:45 perhaps I misinterpreted what you meant originally 16:08:52 lament said that real analysis is the limit of finite calculus 16:09:01 I said, I am not sure that is so 16:09:12 fax, limit as in "we can't do anything more advanced using this thing"? 16:09:14 -!- ais523 has joined. 16:09:21 no 16:09:27 fax, ah, as in lim? 16:09:30 yes 16:09:57 ah now I see what you thought I meant 16:09:59 fax, then that whole statement sounds somewhat strange to me. 16:10:16 (but then, I'm no expert on such things) 16:10:20 fax, right 16:10:51 have you studied real analysis? 16:13:16 -!- lereah_ has quit (Quit: Leaving). 16:14:18 AnMaster 16:16:13 -!- coppro has quit (Quit: I am leaving. You are about to explode.). 16:17:28 fax, not that I know 16:18:45 AnMaster, it's just exploring the convergence/divergence of sequences of real numbers, then series (running totals of sequences), then lim & integrability - the big theorem from it is l'hopital 16:22:59 -!- nooga has quit (Ping timeout: 265 seconds). 16:24:02 -!- FireFly has joined. 16:24:46 but there are some striking similarities between the finite calculus and 'normal' calculus 16:26:59 -!- oerjan has joined. 16:30:16 -!- FireFly has quit (Ping timeout: 268 seconds). 16:31:10 -!- BeholdMyGlory has joined. 16:32:19 fax: they both have a lot to do with linear algebra. both derivations are linear operators on a vector space of functions 16:35:25 oerjan how did you know we were talking about this!!!!! 16:35:35 by the power of logs 16:35:45 oerjan, did you take the log of both sides? 16:35:59 well yeah, it was rather short 16:38:09 both sides? 16:38:33 fax: see what you have done? 16:39:45 I didnt' know you knew about finite calculus!!!! 16:39:51 I wish I had concrete maths 16:41:12 fax, wouldn't those be rather heavy and hard to handle? 16:41:24 plus would take a lot of time to dry I guess 16:41:48 i keep on thinking that #esoteric looks very much like #erotic 16:42:35 cheater, Freud perhaps? 16:42:44 definitely 16:42:48 and this brings us to OMG PONIES! 16:42:52 pooooooooonieeeeeeeeees 16:42:58 is there an esolang for PONIES? 16:43:04 cheater, wait, are you ehird? 16:43:09 no 16:43:16 cheater: it's that gay sex thing 16:43:17 then wth 16:43:17 why would i be ehird? 16:43:32 cheater, because of what you just said 16:43:42 what? PONIES? 16:43:45 because ehird is disappeared again 16:43:50 though usually he go for pink unicorn ponies iirc 16:43:52 ehird is not me 16:44:03 cheater: well that's what you _say_ 16:44:07 -!- FireFly has joined. 16:44:21 i'm not sure if i should be insulted or aroused 16:44:27 maybe both 16:44:32 I think the latter is completely wrong 16:44:42 but so enjoyable 16:44:48 wrong channel 16:45:14 -!- FireFly has quit (Remote host closed the connection). 16:45:14 -!- BeholdMyGlory has quit (Remote host closed the connection). 16:48:49 hey, you're the guy turning this place into #ethics 16:49:01 :p 16:56:11 -!- BeholdMyGlory has joined. 17:03:54 cheater, me? not afaik 17:04:06 ok :p 17:04:30 AnMaster doesn't care about ethics at _all_ 17:06:04 -!- tombom has joined. 17:06:46 -!- nooga has joined. 17:09:33 -!- augur has quit (Ping timeout: 240 seconds). 17:17:20 -!- kar8nga has joined. 17:19:26 -!- FireFly has joined. 17:23:05 -!- BeholdMyGlory has quit (Ping timeout: 245 seconds). 17:24:01 -!- hiato has joined. 17:25:09 -!- FireFly has quit (Ping timeout: 268 seconds). 17:25:25 -!- BeholdMyGlory has joined. 17:25:46 AnMaster: In FING, does Z pop or duplicate the source 17:25:47 -!- FireFly has joined. 17:26:59 Deewiant, um. try his test program for FING 17:27:09 cfunge passes it at least 17:27:15 I don't remember the details 17:27:15 Meh 17:27:30 Deewiant, and atm I'm sadly very preocupied 17:27:35 (modulo spellin) 17:27:42 spelling* 17:29:31 ^source 17:29:31 http://git.zem.fi/fungot/blob/HEAD:/fungot.b98 17:31:16 Deewiant, you could also look at efunge or cfunge source, both supports FING 17:31:37 Deewiant, still, use RCS's own test suite, there was some surprising semantics iirc 17:31:39 forgot what it was 17:34:54 Woo, Norwegian. 17:35:15 I'm reading the article about flax. With the help of Wikipedia, I've mostly translated the first two sentences. 17:35:34 Somewhat literal translation: 17:36:43 "Dyrka lin (Linum usitatissimum) or also simply called 'lin' is a species in the genus lin (Linum). Lin is an ettårig plant as it's been grown by humans in more than 10,000 years." 17:37:38 som = which, not as 17:37:41 "Lin" is "flax", of course, but I don't know what "ettårig" is all about. 17:37:52 one year life 17:38:15 Ah, "which" makes more sense. 17:38:19 oh, "annual" in English (as opposed to "perennial") 17:38:27 yes 17:38:51 hm? 17:39:00 and that instance of "i" is better translated as "for" than "in" 17:39:17 Indeed. 17:39:30 What's the "dyrka" all about? 17:39:55 cultivated 17:40:09 * uorygl nods. 17:40:46 It would be neat if you called domestic cats "dyrka katt". 17:41:13 nah 17:41:19 applies only to plants 17:41:22 in English, a "cultivated cat" would be one with good manners 17:41:37 "tam" is the word for animals 17:42:01 http://no.wikipedia.org/wiki/Katt 17:42:16 tamkatt and huskatt (house cat) 17:42:17 I think I'd rather read about tamkatten than lin. 17:42:58 pus is like "kitty", really, don't know why they list all the variants with that 17:43:20 -!- augur has joined. 17:43:23 Cognate to "pussy", I imagine. 17:43:31 yeah 17:43:34 pussy kitty 17:43:45 hiaugur 17:43:59 So in Norwegian, you have not only pussy-cats but catty-pusses? 17:44:06 although the _other_ meaning of pussy is translated as "mus" (cognate to "mouse") 17:44:39 `translate Tamkatten har også i noen grad gått under det vitenskapelige navnet F. s. domesticus. 17:44:51 Tamkatten has also to some extent been under the scientific name of F. s. domesticus. 17:45:42 heh that's pretty good 17:46:19 except you'd want a "known" after been, i think 17:46:52 tam is of course cognate to tame 17:46:59 What's "noen grad gått", word for word? 17:47:04 Ooh, fancy. 17:47:10 some degree gone 17:47:38 "Grad" is probably cognate to "grade". 17:47:47 probably 17:49:31 -!- kar8nga has quit (Read error: Connection reset by peer). 17:49:57 -!- zzo38 has joined. 17:50:10 I think a good feature for a web-browser, I will add is "redial URL" command. 17:50:15 Sometimes when you enter a URL or follow a hyperlink it will redirect. Using reload just reloads the current URL. 17:50:21 ais523: norwegian "kultivert" means with good manners too 17:50:23 So, the idea is that using redial it will reload the original URL instead of necessariily the current one. 17:50:45 hmm, yes 17:50:54 how often do redirects change, anyway? 17:51:12 perhaps it should work Wikipedia-style where redirects show the original URL not the new one 17:51:49 actually "kultivert" seems to be usable for plants too 17:52:33 It doesn't matter how often redirects change. (Sometimes they are random redirects, such as the "Random page" on Mediawiki) 17:53:43 Once I think how to implement, I will do so. C-R is already used for "rewind" so I can put C-E for "redial", maybe?? 17:53:50 `translate Den er et lite rovpattedyr i kattefamilien, og regnes i dag som en variant av afrikansk villkatt (F. s. lybica). 17:53:52 It is a small rovpattedyr in the cat family, and is today considered a variant of the African wild cat (F. s. lybica). 17:53:58 -!- Asztal has joined. 17:54:14 It would be neat if you called domestic cats "dyrka katt". <-- that sounds like Egytians to me 17:54:38 uorygl: rovpattedyr = carnivore (mammal) 17:55:01 You mean a carnivoran? 17:55:18 uorygl: i don't know that distinction 17:55:33 Carnivorans are a clade of mammals including cats, dogs, and bears. 17:55:41 rovdyr alone means the same, except maybe not just mammals 17:55:53 Carnivores are anything that eats meat. 17:56:10 http://no.wikipedia.org/wiki/Rovpattedyr 17:56:15 Good idea. 17:56:39 actually that article includes both with and without -patte- 17:56:41 Yeah, it's the carnivorans. 17:56:41 oerjan, what does dyrka mean in Norwegian? 17:56:49 AnMaster: cultivated, i said 17:57:00 isn't it dyrkad in swedish? 17:57:05 Is "regnes i dag" literally "considered in today" or "considered in day"? 17:57:05 oerjan, in Swedish it means a) worship or b) lockpicking 17:57:19 thus the comment about egyptians 17:57:29 AnMaster: in norwegian (a) dyrke (b) dirke 17:57:30 AnMaster: what a strange pair of words to have as homographs 17:57:57 AnMaster: norw. dyrka is a past participle not an infinitive (except in some forms of nynorsk) 17:58:07 ais523, well I think the latter is somewhat "not slang, but not really formal either" 17:58:17 how similar are nynorsk and bokmal, by the way? 17:58:23 mutually intelligble? 17:58:53 ais523: you can write them quite similarly, although there is also an option for using very strange word choices not usually in the other 17:59:01 ais523, also dyrka as worship sounds somewhat like it wouldn't have been used about Christan worship in past time. Perhaps it has a slight negative quality embedded 17:59:03 Like skillingsbolle. 17:59:05 not really sure 17:59:08 and some grammar endings are different 17:59:10 oerjan: ah, pretty much like English and Scottish? 17:59:35 Like skillingsbolle. <-- is that bokmåö or nynorsk? 17:59:35 ais523: perhaps, i'm not that familiar with scottish 17:59:41 I was sort of under the impression that Nynorsk and Bokmal were simply different writing systems. 17:59:44 AnMaster: both i think 17:59:49 ais523, btw bokmal sounds hilarious in Swedish 17:59:51 it's like English, except that some of the words are different 17:59:54 it means "book moth" 18:00:05 I think I missed an accent 18:00:14 Bokmål 18:00:14 I think Wikipedia calls them "skillingsbolle" in Bokmal and "kanelbolle" in Nynorsk. 18:00:22 ais523, not accent... å is _not_ a with an accent 18:00:25 uorygl: "regnes i dag" = "is today considered" 18:00:27 it is a separate letter in the alphabet 18:00:30 well, OK 18:00:37 the accent is still how you /type/ it, though 18:00:37 oerjan: which word is which? 18:00:40 AnMaster: Diacritics are commonly called accents 18:00:47 ais523, no it isn't for me. There is a key for it 18:00:50 just like ä and a are different letters in German 18:01:02 AnMaster: in Hungarian, ly is a different letter from l (and not two letters) 18:01:04 Deewiant, I would say it isn't Diacritics either. Just like the dot over i isn't 18:01:07 likewise, ll is a letter of its own in Welsh 18:01:17 which you really have to hear pronounced to know what it sounds like 18:01:17 ais523, see! 18:01:27 but you still /type/ it as two ls 18:01:27 Is ll still considered a separate letter in Spanish? 18:01:32 ais523, in Swedish ä is different from a too 18:01:38 same goes for o vs. ö 18:01:49 AnMaster: I would say it is, since it's still got the basic glyph "a" underneath 18:01:56 so if you wrote Landudno rather than Llandudno, you could truthfully say you missed an l (although I'm not sure I've spelt the rest of the word correctly) 18:02:05 Deewiant, well, then i is also an IPA symbol with a dot over it! 18:02:07 or something 18:02:18 AnMaster: book moth would be bokmøll in norw. 18:02:21 which is absurd 18:02:25 oerjan, right 18:02:30 AnMaster: No, because they're different alphabets. 18:02:45 AnMaster: Swedish and company use both glyphs, a and å. 18:02:48 Deewiant, and? what about v and w? 18:02:56 AnMaster: v isn't a diacritic. 18:02:56 the latter is vv basically 18:02:58 uorygl: i don't think "skillingsbolle" vs. "kanelbolle" is really a bokmål/nynorsk distinction 18:03:00 because it *looks* like it 18:03:10 so it must be that vvay 18:03:11 According to Unicode, all IPA glyphs are lowercase Latin letters. 18:03:13 clearly 18:04:05 Deewiant, but the same argument should apply even to non-diacritics 18:04:11 Really? OK 18:04:11 where one letter looks like another extended 18:04:21 uorygl: i dag = today, regnes = is considered 18:04:23 Deewiant, like L is l_ 18:04:46 oerjan, the latter looks for a typo of "rains" to me 18:04:47 AnMaster: Why should it? I'm talking about diacritics. 18:04:54 Deewiant, well, why should it *not* 18:05:23 AnMaster: regne means both to rain and to calculate/consider in norwegian 18:06:10 AnMaster: My point was that the ° on the å can/should be considered a diacritic in Swedish and therefore can be called an accent. I'm not even sure what you're trying to argue at the moment. 18:06:25 I sense a pun. 18:06:34 uorygl: -s is a passive present ending, used in fairly formal writing 18:06:37 "Hey cloud, what are you doing?" "I'm considering." 18:06:56 uorygl: Vi må regne med regn. 18:07:16 Deewiant, hm? it isn't considered that way though 18:07:28 `translate Vi må regne med regn. 18:07:31 We must expect rain. 18:07:33 regne med = expect 18:07:47 What's med? 18:07:48 oh 18:07:50 with 18:07:51 räkna in Swedish 18:08:00 uorygl, also the thing under sleds 18:08:04 that touches the slow 18:08:05 uorygl: norwegian like english is cursed with phrasal verbs :D 18:08:06 err 18:08:07 snow 18:08:19 they are also called "med" (medar in plural) 18:08:33 AnMaster: meie in norwegian 18:08:36 mhm 18:08:52 oerjan, no reason to keep it at a single language is there? 18:09:26 Deewiant, anyway, my point was that replacing ö with o, å with a or ä with a is *incorrect* 18:09:35 Yes, that is true. 18:09:37 So how would you say "I'm considering" or "I'm raining", if those are the same thing? 18:09:41 and can quite often yield a different and valid word 18:09:46 sometimes to hilarious effects 18:10:01 Well, that can happen regardless of diacritic-ness. 18:10:04 But yes. 18:10:07 AnMaster: i'm just providing comparisons 18:10:14 Give examples of how they can yield different word 18:10:21 `translate Tengo 17 años. 18:10:24 I have 17 years. 18:10:26 `translate Tengo 17 anos. 18:10:26 Deewiant, ais523 see: http://en.wikipedia.org/wiki/%C3%85#Transcription 18:10:34 Tengo 17 anos. 18:10:35 why? 18:10:42 `translatefromto es en Tengo 17 anos. 18:10:51 Tengo 17 anos. 18:10:52 ais523, because å -> a is incorrect. Wrong way to transcribe it 18:10:53 uorygl: actually "I'm considering" alone does not use regne 18:10:54 AnMaster: I know all this, I'm just arguing what the term 'diacritic' means :-P 18:11:09 * uorygl growls at HackEgo. 18:11:11 it needs to be "consider as" -> "regne som" 18:11:18 AnMaster: according to that article, it often is transcribed as "a" 18:11:20 ais523, you should use å -> aa, ä -> ae, ö -> oe I think. 18:11:25 ais523, incorrect though 18:11:27 oerjan: how about "I'm calculating"? 18:11:40 uorygl: jeg regner, yes 18:11:48 uorygl, "jag beräknar" 18:11:57 because "räknar" is more like "counting" 18:11:58 AnMaster: ä/ö -> ae/oe aren't valid for Finnish, not sure about Swedish. (They are valid for German, however.) 18:12:05 or perhaps just basic +-*/ 18:12:14 AnMaster: beregne is only transitive in norwegian 18:12:20 while calculating and "beräknar" sounds more like the stuff oerjan does 18:12:27 for Swedish that is 18:12:43 How do you transcribe Finnish, anyway? 18:12:50 Deewiant, not completely valid for Swedish I think 18:12:51 You don't. :-P 18:13:11 conclusion: just don't drop the dots and rings 18:13:20 uorygl, why would you need to 18:13:23 I can't type the ring on this keyboard, or at least don't know how 18:13:25 Sometimes you have to 18:13:26 although umlauts are fine 18:13:30 Because you don't have access to a Finnish keyboard, perhaps. 18:13:34 Deewiant, it is just the same alphabet as Swedish isn't it? 18:13:49 -!- ais523 has quit (Remote host closed the connection). 18:13:53 uorygl, Well, Swedish and Finnish share keyboard layout 18:14:12 AnMaster: Almost: W isn't officially part of the alphabet 18:14:23 Deewiant, it wasn't in Swedish until very recently either 18:14:23 uorygl: "I'm considering" alone would be more likely "Jeg vurderer" 18:14:43 if you're considering doing something 18:14:43 Deewiant, which means in a lot of dictionaries w still sorts under v 18:14:51 (for imported words and such) 18:15:02 or just "Jeg tenker" (cognate to think) 18:15:04 oerjan, sounds like "I wonder"? 18:15:12 the former that is 18:15:21 AnMaster: no, that would be "Jeg undrer" 18:15:29 huh 18:15:48 or "undres" 18:15:52 uorygl: Wikipedia suggests that for Finnish, äö are just replaced by ao 18:15:59 oerjan, then I have no clue what vurderer would be in Swedish 18:16:13 `translatefromto no sv vurdere 18:16:18 bedöma 18:16:43 bedømme is also norwegian 18:17:07 oh 18:17:11 I think Finnish looks and sounds really neat. It's too bad it's completely unrelated to English. 18:17:30 uorygl, it sounds like a tongue twister all the time to me 18:17:36 and looks like it too 18:17:37 Too bad? :-P 18:18:02 AnMaster: except i don't think you can bedømme for an action you consider doing, only for judging something, which also can use vurdere 18:18:23 It means I can't learn it just by reading and using HackEgo. 18:19:20 oh btw, in hand writing you often use ~ above the ä or ö in Swedish. that is, fast handwriting 18:19:30 sometimes just a - if not writing neatly 18:19:36 ¯ 18:19:47 Deewiant, it would look really strange outside handwriting 18:19:56 what do you call the handwriting where letters join together 18:20:02 as opposed stand free of each other 18:20:03 Not "really" IMO but a bit, yes. 18:20:06 Cursive, here. 18:20:06 AnMaster: Cursive 18:20:08 it is the former only this applies to 18:20:15 Joined-up, elsewhere. 18:20:28 skrivstil in Swedish 18:20:37 kursiv is used for italic fonts 18:20:40 ok if there were any questions i missed above you'll have to repeat them :D 18:20:48 So, I barely know any non-Indo-European natural languages at all. 18:21:02 I know how to say a couple of language in themselves. 18:21:03 uorygl: don't we all 18:21:12 I can count to three on Finnish, and I know the Finnish word for Finland 18:21:13 Suomi, shqip, nihongo... 18:21:20 Shqip? 18:21:24 Albanian. 18:21:28 oh and for Helsingfors 18:21:32 I know an Albanian guy. 18:21:40 uorygl: shqip is actually indo-european 18:21:47 Deewiant, what do you call Åbo btw? 18:21:55 oerjan: wow, it is. 18:22:00 do you use a different name for it? 18:22:01 AnMaster: Turku 18:22:02 So what's "skrivstil" literally? 18:22:11 It looks like "scribestyle" or "writestyle". 18:22:12 "writing style" :-P 18:22:18 uorygl, what Deewiant said 18:22:31 which really doesn't make a lot of sense when you think about the name 18:22:53 Yeah. 18:23:07 but there are plenty of things in English that makes no sense too 18:23:12 uorygl: i recall that albanian and greek are closest relatives (a language clade? :D) 18:23:21 Albanian and Greek are related? Huh. 18:23:33 oh wait 18:23:47 oerjan, "clade"? 18:23:49 i'm confusing it with armenian, which is _also_ indoeuropean 18:23:54 I can't find it in a dictionary 18:23:55 AnMaster: evolutionary term 18:24:03 oerjan, meaning? 18:24:21 AnMaster: the set of all descendants of a common ancestor 18:24:22 A clade is a group of all the species descended from a certain common ancestor. 18:24:34 Darn, I lose. 18:24:43 ah 18:25:23 AnMaster: i learned it only from wikipedia, there seems to be an ongoing biological movement to replace the old class/order style classification with a cladistic classification 18:25:42 So, I'm reading the Wikipedia article about kissa. I see that there are lots of long words. 18:25:43 mhm 18:25:50 It sort of looks smeared. 18:25:58 What's "long" in your opinion ;-) 18:26:00 uorygl, kissa? As in sv:kissa? 18:26:08 AnMaster: fi:kissa, en:cat. 18:26:08 No, fi:kissa. 18:26:12 why are you reading an article about urination?! 18:26:14 :P 18:26:20 i.e. reptiles are not a clade, so some don't want to use that as a classification term (it includes all descendants of a certain ancestor which are _not_ mammals or birds) 18:26:20 For science! 18:26:24 "Oh, so that's what I was reading!" 18:26:24 (which is what sv:kissa means) 18:26:37 uorygl, well if it was fi:kissa I don't really know 18:26:38 `translate Kissoja on kesytetty ehkä jo heti maatalouteen siirtymisen jälkeen. 18:26:41 Deewiant, ah like "kisse"? 18:26:42 Cats have been domesticated perhaps as early as immediately after the transition to agriculture. 18:26:46 which is like "pussy cat" 18:26:46 s/i.e./e.g./ 18:26:59 Yeah, Finnish and Swedish are not exactly similar, are they. 18:27:07 AnMaster: Well, there's probably some related etymology, but no, sv:katt. 18:27:28 uorygl, apart from perhaps some words from our shared history, then no 18:27:44 after all, Finland was a part of Sweden long ago 18:27:45 As far as I know, they have no shared history whatsoever. 18:27:55 uorygl, see what I just said 18:28:27 I guess some loanwords could have gotten swapped there. 18:28:29 uorygl: Finland was under Swedish rule for some 700 years :-P 18:28:47 The same way English has lots of Romance words even though it's a Germanic language, I guess. 18:28:57 Deewiant, still, why didn't we manage to get you to switch to an easier to pronounce language ;P) 18:29:01 s/)// 18:29:06 Because we're dense like that 18:29:11 So, in that sentence about cats, I have no idea how to match the Finnish to the English. 18:29:13 heh 18:29:14 Apart from the first word. 18:29:22 English is such a ripoff-language :-P 18:29:24 uorygl, what was the first word? 18:29:31 My guess: "kissa" 18:29:54 The first word was "kissoja". 18:29:59 Darn 18:30:03 uorygl, you have lots of Scandinavian words imported. Like window, from old Scandinavian vindöga (wind eye) 18:30:09 Oh, right, that one above 18:30:25 "Kissoja on kesytetty ehkä jo heti maatalouteen siirtymisen jälkeen." 18:30:29 uorygl, we replaced it with "fönster" later, which is a word imported from German 18:30:30 uorygl: on kesytetty <-> have been domesticated 18:30:35 uorygl: ehkä <-> perhaps 18:30:52 uorygl: jo <-> as early as 18:30:58 uorygl: heti <-> immediately 18:31:02 Deewiant, "jo <-> as early as"? 18:31:10 uorygl: maatalouteen <-> agriculture 18:31:11 that sounds like a strange thing to have a two letter word for 18:31:13 very strange 18:31:15 uorygl: maatalouteen <-> to agriculture 18:31:19 (My bad) 18:31:29 uorygl: siirtymisen <-> the transition 18:31:33 uorygl: jälkeen <-> after 18:31:46 AnMaster: norwegian still uses "vindu" 18:31:51 oerjan, okay 18:32:08 AnMaster: Well, jo <-> already 18:32:08 oerjan, why does this make me thing of darth and droids btw? 18:32:10 .... 18:32:15 think* 18:32:22 AnMaster: mace windu of course 18:32:24 Deewiant, hm 18:32:25 It's just a not-that-literal translation. 18:32:28 oerjan, oh duh 18:35:11 uorygl: http://en.wikipedia.org/wiki/Graeco-Armenian although it's a disputed hypothesis 18:36:52 Baah, REXP is just a binding to POSIX regexen 18:36:58 Mehhhhh 18:37:01 Deewiant, yes? didn't you know? 18:37:15 Maybe I did, in which case I forgot 18:37:16 Deewiant, what did you think it was? 18:37:19 Deewiant, bindings to PCRE? 18:37:29 Something more generic 18:37:35 I.e. not bindings 18:37:50 Deewiant, that is a bit hard, since you would need to implement that dialect then basically 18:37:57 Not really hard 18:38:13 Deewiant, anyway, posix regex is available from libc aren't they? 18:38:16 Pick a sufficiently common-denominator dialect and you can implement it with basically any library + a single preprocessing pass 18:38:25 AnMaster: Only on POSIX, unsurprisingly enough. 18:38:34 Deewiant, well I can't say I care about other ones 18:38:43 I know /you/ don't. 18:38:48 I do, though. 18:38:58 Deewiant, there are probably free standing implementations of it 18:39:01 Hence "baah", "mehhhhh", etc. 18:39:15 Deewiant, after all, there is a glibc one, a solaris one and so on 18:39:20 Yeah, gnuwin32 appears to have it 18:39:25 What I don't like about REXP is that you can only have one (global) regex compiled. 18:39:28 Deewiant, cygwin probably does as well 18:39:38 Cygwin is a POSIX environment 18:39:41 fizzie, or per thread, that is disputed 18:39:43 I'm using a single "ignore" regex in fungot (instead of an ignore list) because of that. 18:39:43 fizzie: it's a bit complicated, i learned something from " mathematics made difficult"? afaik no scheme module/ package system stuff, although that's not such a problem) 18:39:58 fizzie, why a regex at all ;P 18:39:59 fizzie: Just write the regex into Funge-Space. 18:40:09 Deewiant, you need to recompile it then 18:40:09 And then compile/execute each one individually. 18:40:14 Yes, you do. 18:40:38 btw 18:40:42 if I do a PCRE fingerprint 18:40:48 Deewiant: Yes, but that's ugly. Not that I didn't consider it. 18:40:51 I will make it possible to do this 18:41:09 probably by requiring that it can serialise to a single funge space cell 18:41:11 fizzie: Seems very Fungy to me :-P 18:41:18 Deewiant: As a consequence of the current implementation, the bot can't say what the current ignore regex is, because I don't store it anywhere. :p 18:41:23 in a way where not freeing them doesn't cause any memory leakage 18:41:28 as in, you just drop the handle 18:41:32 they should act like being GCed 18:41:43 which means you need a bignum funge basically 18:41:48 fizzie: Yes, that seems like a bit of a limitation too :-P 18:41:50 and serialises it to that 18:42:25 Bah, the gnuwin32 one is a dynamic library. 18:42:34 I have somewhere a compiler (in Java, I think) from a regex dialect into Brainfuck; i.e. it creates the brainfuck code that takes input and then prints out "acc" or "rej" depending on whether it matches the regex. 18:43:33 Deewiant, why is that an issue? 18:43:35 It was a rather regular sort of regex, though; I don't think it had much more specials than the * and |. 18:43:40 Deewiant, also you could extract the code 18:43:42 and build it 18:43:51 -!- BeholdMyGlory has quit (Ping timeout: 252 seconds). 18:44:00 Deewiant, or perhaps just make that fingerprint available on POSIX platforms 18:44:04 AnMaster: It'd make CCBI depend on something else. 18:44:06 -!- FireFly has quit (Ping timeout: 268 seconds). 18:44:23 Deewiant, so extract the code and place it in a subdir of the source code 18:44:23 Yes, I can try to build it myself but one never knows how well that'll succeed. :-P 18:44:29 then build and link it statically 18:44:32 AnMaster: glibc? Hell no 18:44:39 what? 18:44:41 Requires so much autoconf and other magic to even get started 18:44:49 Deewiant, no, I didn't say glibc 18:44:52 I wouldn't wish that on my worst enemy :-P 18:45:04 Deewiant, I suggested that you might only make it available if the libc supports it 18:45:09 that is an alternative 18:45:18 Deewiant, or you could implement POSIX regexps 18:45:18 Yes, I know, that's the easiest alternative. 18:45:19 or 18:45:27 perhaps, not implement the fingerprint at all 18:45:36 Nah, I wanna be fungot-compatible. 18:45:37 Deewiant: i'm writing a function to dream about it. 18:45:45 fungot: Don't be snarky. 18:45:45 Deewiant: this setence no verb. sorry. :) i don't know one 18:45:52 haha 18:46:37 Deewiant, it is unlikely to be run on ccbi I think. Since fizzie said he selected cfunge mainly because he could run longer ^bf and ^ul programs on it. 18:46:40 due to it being faster 18:46:50 of course, if he completes jitfunge 18:46:53 that is what he will use 18:47:01 * AnMaster looks at fizzie 18:47:13 What he runs it on is his concern, not mine. 18:47:44 Deewiant, heh 18:47:47 Poor bot, doesn't know any verbs. 18:48:11 Does anybody here have a Windows system immediately available? The .exe at http://people.delphiforums.com/gjc/hs_regex.html isn't behaving. 18:48:17 fizzie, wrong. It lied. "know" is a verb isn't it? And so is "don't" 18:48:18 well 18:48:24 don't is "do" + "not" 18:48:29 the former being a verb 18:48:46 Deewiant, delphi? 18:48:47 wonderful 18:48:55 Deewiant: I should, however, distribute some sort of "fungot-compliant software" stickers for all Funge-98 interps that can run it. 18:48:55 fizzie: i move first 18:49:02 chess? 18:49:04 fizzie: Indeed! 18:49:10 AnMaster: Looks like C. 18:49:41 Deewiant, well, freebsd libc should provide a very nice posix regex implementation 18:49:43 but 18:49:46 that page is old 18:49:48 1997 18:49:52 Like they have those Windows-compatible hardware logo things. Though then I'd need a test framework for fungot. (Which might not be a bad idea anyway.) 18:49:53 fizzie: huh, what about the home fnord for the kerry campaign? :) 18:49:56 It's still POSIX regex 18:49:56 you should extract a newer one from freebsd sources 18:50:00 (Away a while.) 18:50:08 REXP doesn't specify version requirements, as can be expected :-P 18:50:13 Deewiant, freebsd sources tend to be easy to extract and use elsewhere in my experience 18:50:35 Deewiant, so it should be a few minutes of work to take it from the source tree on your local freebsd machine 18:50:35 Yes, that's probably what I'll try first. 18:50:53 perhaps one or two helper functions 18:52:15 i said which what? 18:52:21 fizzie: You can even pop me one physically and I can take a screenshot of a computer running CCBI with the sticker in the middle of the screen, or something 18:53:14 Deewiant, in the middle of the screen? ouch 19:01:41 AnMaster: I don't have to /nail/ it to the screen 19:04:28 AnMaster: Anyway, the short speed mention reminded me: any ideas for funge benchmarks? 19:13:34 Someone said "never trust a computer that you can not throw out of a window" but in my opinion the better advice should be "never trust a computer that you can not thoroughly disassemble" 19:16:03 -!- impomatic has joined. 19:16:07 zzo38, good luck disassembling a microprocessor 19:16:08 Hi :-) 19:17:04 Yes, it would certainly be difficult to disassemble a microprocessor 19:18:42 Try this game http://zzo38computer.cjb.net/GAMES/100level.zip see if you can figure it out. (Just run the EXE; do not look at the source-codes unless the EXE won't run or something else...) 19:19:08 It deliberately has a lack of good instructions 19:19:25 * Sgeo wonders how much he should be trusting zzo38 19:19:27 Because it is meant you just have to try things to see what works 19:19:41 Run the program in a virtual machine if you don't trust the program 19:20:07 (It is a DOS program) 19:21:52 I just want to see how many people can possibly figure it out, and even if you can figure it out, you still have to win, of course 19:22:02 * pikhq cannot run DOS programs 19:23:58 Maybe you can recompile it using FreeBASIC, or something like that. Or, just put FreeDOS on a virtual machine, or run it in the DOSBOX emulator, and so on 19:24:09 Ok, Pidgin has screwed me over one too many times at this point 19:24:24 Sgeo: And what kind of screw did it screw you over? 19:24:27 What happened to the program? 19:24:41 zzo38: Use a real language. 19:24:54 Tried to bring a window to the front, and it wouldn't come up. But that's relatively minor, it's just the last straw 19:25:17 pidgin-facebook glitches, sometimes I can't edit my status 19:25:27 I wrote it in QBASIC but FreeBASIC should be able to compile it too 19:25:46 I used it simply because I sometimes do that when writing games on DOS 19:26:01 * pikhq shoves a C compiler down zzo38's throat 19:26:02 (I didn't use this computer to write it, I used a different computer) 19:26:13 On this computer I do have a C compiler, I use MinGW. 19:26:27 Your DOS machine should have one, too. DJGPP. 19:27:56 Perhaps it should, but I didn't use that. Maybe later I might re-write it (or a similar game) in C, and it might be on Linux console mode and Windows console mode 19:28:31 * pikhq removes zzo38's knowledge of BASIC 19:28:48 That other computer is actually Windows 98 and it isn't in this house, it is elsewhere, when I am there sometimes I do that on there. I have no internet connection there either, so I had to use a floppy disk 19:29:29 That other computer doesn't actually belong to me anyways it belongs to the school but they let me borrow it, probably permanently because they probably never want it back 19:35:05 -!- zzo38 has quit (Remote host closed the connection). 20:16:23 There is one thing I dislike about Conkeror: C-x C-c does something. 20:16:30 I hate typo'ing that. 20:23:05 which reminds me of the main thing i dislike about simon tatham's puzzle collection 20:23:27 Oh? 20:23:30 pressing q quits the fucking program, immediately! 20:23:36 Urgh. 20:24:20 it's apparently designed to be easily hideable in office environments :D but i have no use for that D: 20:26:26 There is one thing I dislike about Conkeror: C-x C-c does something. <-- does it quit? 20:26:48 Yes. 20:27:10 well, that is expected isn't it? 20:27:23 what would you prefer instead? 20:27:33 -!- Libster has joined. 20:27:36 Something harder to accidentally type. 20:27:41 -!- Libster has left (?). 20:27:52 Note that Emacs-style bindings stick a lot of stuff off of C-x ... 20:30:36 -!- Oranjer has joined. 20:30:47 I just had a friend complain about C-w closing tabs in Firefox; she was trying to do a copy-paste job on a wiki page in Firefox, and all those Emacs reflexes made her do C-w often. 20:31:50 is "C-" an accepted notation for ? 20:32:31 It's the Emacs way to say it. 20:33:04 As is M-x for meta-x, and... is it C-M-x or M-C-x, actually? 20:33:22 C-M-x is the general notation. 20:33:40 'P-x for 'pata-x? 20:34:24 -!- coppro has joined. 20:35:09 s-x (yes, lowercase) and H-x for super and hyper, it seems, though I guess there are no (or not many anyway) standard bindings for those. 20:57:41 -!- Phantom_Hoover has joined. 20:58:06 the Invisible Sucker 20:58:35 What? 20:58:52 your nickname 20:59:10 Indeed. 21:00:55 Are the forums ever even used? 21:01:00 I thought it dealt with the former head of the FBI 21:01:13 was his name hoover? beats me 21:01:17 Phantom_Hoover: there is a post the occasional month or so 21:01:27 Oranjer: hm that rings a bell 21:01:34 `google hoover 21:01:37 Hoover's proprietary company profiles and industry information. \ [15]Log In - [16]Companies A-Z - [17]Companies - [18]Industries 21:01:45 Oranjer: It's named after the vacuum cleaner. 21:01:50 oh okay 21:01:59 `google j edgar hoover 21:02:00 John Edgar Hoover (January 1, 1895 May 2, 1972) was the first Director of the Federal Bureau of Investigation (FBI) of the United States. ... \ [13]Early life and education - [14]FBI career - [15]Legacy - [16]Personal life 21:02:08 hakcety hack 21:02:14 `help 21:02:15 Runs arbitrary code in GNU/Linux. Type "`", or "`run " for full shell commands. "`fetch " downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert " can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/ 21:02:18 `google hoover vacuum 21:02:20 Vacuum cleaners from Hoover featuring the best new and reconditioned models, including powerful upright vacuums, easy to use canister style vacuums, ... \ www.hoover.com/ - [15]Cached - [16]Similar 21:02:52 1ls 21:02:55 `ls 21:02:57 bin \ cube2.base64 \ cube2.jpg \ hack_gregor \ hello.txt \ help.txt \ huh \ netcat-0.7.1 \ netcat-0.7.1.tar.gz \ paste \ poetry.txt \ quotes \ share \ test.sh \ tmpdir.5645 \ wunderbar_emporium \ wunderbar_emporium-3.tgz \ wunderbar_emporium-3.tgz.1 21:03:11 night 21:03:15 we're building a 8088 based computer on a prototype board, with vintage printer and 300baud modem 21:03:36 would you like to call our modem and trigger the led-blinking program? :D 21:03:59 watchen das blinkenlights 21:04:03 `google Hoover FBI 21:04:06 Jump to [13]FBI career: Hoover was noted as sometimes being capricious in his leadership; he frequently fired FBI agents, singling out those whom he ... \ [14]Early life and education - [15]FBI career - [16]Legacy - [17]Personal life 21:04:22 Oranjer: see above 21:04:29 oh, hahaha 21:04:55 oerjan: say this in language that sounds better 21:04:59 ;] 21:05:06 nooga: say what? 21:05:14 22:03 < oerjan> watchen das blinkenlights 21:06:37 nooga: http://en.wikipedia.org/wiki/Blinkenlights 21:06:37 brb 21:07:02 ahh lool 21:08:51 lmao 21:08:53 lmao 21:09:02 how come that i didnt know that 21:10:00 http://www.catb.org/~esr/jargon/html/graphics/gefingerpoken.jpg 21:10:14 lofl 21:13:13 * oerjan hadn't seen that one before 21:13:39 i think this is the original 21:14:18 brb 21:15:13 Cray CX1 has this funny-looking "modernized blinkenlights" mini-screen on the chassis: http://download.intel.com/pressroom/kits/xeon/5500series/images/Cray_CX1.jpg 21:16:05 (And it's almost affordable by a regular person, unlike current Real Computers.) 21:17:03 It reminds me of the Monoliths... 21:17:29 Blocky things always look more imposing, though... 21:18:29 That thing is pretty small; it's their "desktop supercomputer". 21:18:41 What the hell are the big ones like? 21:18:52 Here's one in a room: http://leahshanker.files.wordpress.com/2009/02/cray.jpg 21:18:59 BtW, did that esoteric operating system ever get off the ground? 21:19:53 Finland's possibly biggest Real Computer, CSC's louhi (Cray XT4/XT5) looks like this: http://www.aamulehti.fi/teema/tiede/5322047-big.jpg 21:20:04 -!- nooga has quit (Read error: Operation timed out). 21:20:14 They look like reasonably silly refridgerators. 21:20:32 s/d// 21:20:59 I seem to remember that Cray does custom colours for all their Real Computer installations; most of the other ones looked a lot fancier. 21:21:10 (Of course they might've selected only the best-looking ones for the slideset.) 21:21:35 But, I mean, compare louhi with something like http://blogs.knoxnews.com/munger/jaguartests.jpg 21:22:09 Or http://media.knoxnews.com/media/img/photos/2009/01/23/012409kraken1_t607.jpg 21:22:11 I vaguely remember some form of supercomputer at the University of Edinburgh. 21:22:13 Even the names are more impressive. 21:22:33 Can anyone suggest where I can get a decent feed of programming related links, apart from Digg, Reddit, Delicious and DZone? 21:22:36 Though the Kraken's tentacles have some anime schoolgirl molestation connotations nowadays. 21:22:42 Eew. 21:23:12 impomatic: Hacker News? 21:23:15 impomatic: esoteric, or normal? 21:23:39 Either 21:24:09 (Though the new faculty cluster we have is called Triton, which is a passable name. And I guess Louhi's not so bad if you know your Kalevala.) 21:25:14 Edinburgh supercomputers: http://www.hector.ac.uk/about-us/gallery/images/cabinet1.jpg 21:25:22 They look like all the others. 21:25:28 But with a less cool name. 21:26:17 "Hector". 21:27:26 Does anybody know if the esoteric OS got anywhere? 21:28:48 I don't 21:28:56 -!- hiato has quit (Quit: underflow). 21:29:03 There seem to have been four attempts. 21:29:12 Based on the forum. 21:29:39 The latest one actually looks achievable. 21:30:39 molestation is my favourite station. 21:30:52 An appropriate answer, I think. 21:30:56 Also, people use the forum? 21:31:01 Yes. 21:31:07 No. 21:31:22 I think that's why all the attempts petered out. 21:31:26 No-one noticed. 21:31:38 ?!? 21:31:51 What, people use the forum? 21:32:00 Apparently, some software ended up relying on uninitialized variables being filled with garbage 21:32:29 Sgeo: i can see that working in CoreWars 21:32:54 OS X apparently initializes such variables to 0, which caused problems 21:33:12 What are you talking about? 21:33:13 -!- tombom_ has joined. 21:33:36 http://forums.activeworlds.com/showpost.php?p=123792&postcount=10 21:34:57 Weird. 21:35:13 -!- tombom has quit (Ping timeout: 260 seconds). 21:38:17 i wonder how that works 21:38:27 do you rely on garbage being uniformly distributed or something? 21:38:49 Well, if you just rely on something being, say, true by default, then any value other than 0 will work. 21:42:48 If you pass the -nostdlib option to gcc can you use syscalls normally inside the program? 21:42:58 like fork(); 21:43:20 No, fork() is not actually a system call, but rather a function that performs the system call. 21:43:27 Aah. 21:43:35 However, you could write said function yourself. 21:43:46 Yeah, that's what I was doing. 21:43:48 Just need a small bit of inline assembly and a willingness to say "screw portability". 21:44:37 Well, you could always write the assembly in a separate file and use preprocessor directives to make it a little more portable. 21:44:57 Which is exactly what *libc does :P 21:45:05 Yes. 21:45:54 My OS midterm (this class is so boring and tedious it hurts) there was a question putting forth that it is possible for all syscalls to be handled by a single function, but no system in reality does this, and asking why. 21:46:26 My answer was that nearly every system in reality does this, to simplify the interface to the kernel, and that the syscalls as visible to the user are just wrappers which raise a software interrupt, ultimately calling the same interrupt function. 21:46:49 I don't really get interrupts... 21:47:03 -!- adam_d has joined. 21:47:08 Then re-enable them. 21:47:14 *ba-dum ching* 21:47:24 Ah, that was humourous. 21:47:56 -!- sebbu2 has joined. 21:48:08 On x86-64, I doubt you even need that bit of inline assembly; there's a syscall invocation code you could possibly simply call in the VDSO "virtual-library" thing provided by the kernel. 21:48:27 You'll still need to screw the portability, of course. 21:48:47 fizzie: I'm pretty sure that that's done by deep linker magic. 21:48:49 -!- sebbu has quit (Ping timeout: 264 seconds). 21:48:50 -!- sebbu2 has changed nick to sebbu. 21:49:17 fizzie: That's provided on every platform I know of, in particular x86. 21:49:20 (On Linux, of course) 21:49:44 Also, yeah, that virtual library is not provided by the kernel, it's provided by the dynamic linker. 21:51:31 No, it's *provided* by the kernel but *loaded* by the dynamic linker. 21:52:12 In any case you can make use of it without linking against libc. 21:52:15 And the address is in the ELF auxilliary vector, passed as the 4th argument to main. 21:52:28 AAARGH! 21:52:35 So complicated! 21:52:45 pikhq: That doesn't answer many questions, main() is called by _start, not the kernel ... 21:53:21 Mind you, it could just be that it's sitting on the top of the stack when _start is called, that would be the logical place for it. 21:53:23 Gregor: And doesn't _start just pass arguments through to main after initialising things? 21:53:48 pikhq: Not really, no. _start doesn't get an argc, so it has to make it, and envp isn't a pointer, it's just the environment dumped directly into the stack. 21:53:58 Ah. 21:54:04 For that matter, argv isn't a pointer, it's just the args dumped directly into the stack :P 21:54:14 * pikhq reads up further 21:54:55 Yuh, the ELF loader dumps auxv on the stack. 21:55:51 If it's too complicated, you don't have to use it; if you instead want the simple way of having that bit of inline assembly. I've done both int 80h on x86-32 and the "syscall" instruction on x86-64 manually here and there. Just stick things into proper registers, that's about it. 21:56:54 pikhq: http://pastebin.ca/1836084 :) 21:57:11 Before segfaulting, that code is quite amusing :P 21:57:25 Gregor: Heheheh. 21:59:13 Mmkay, from the looks of things the auxv is after the end of envp. 21:59:37 So, look for the NULL at the end of envp and you have auxv. 21:59:47 Yup 21:59:57 main() is for pussies. 22:00:03 Heheheh. 22:02:31 Yes, and think of the efficiency! If you just start at _start, your code runs a lot earlier! 22:02:55 And if you make everything static functions, you can optimise THE WHOLE PROGRAM! 22:03:03 static inline 22:03:07 Just inline everything into _start 22:03:16 And if you RET at the beginning, you've got an O(1) approximation to everything. 22:03:22 Gregor: The "inline" keyword doesn't actually cause any inlining. 22:03:30 pikhq: It's a suggestion though :P 22:03:39 You're at least politely requesting that the compiler please inline. 22:03:39 It just tells the compiler to ignore a redundant definition. 22:03:50 Except for GNU inline. Which does odder things. 22:04:34 (called "GNU inline" because of GCC's behavior of inline before it was an actual keyword. Can now be enabled with __attribute__((gnuinline))) 22:05:00 inline_dammit 22:05:28 also GCC's "extern inline" 22:05:33 GCC does have that __attribute__ ((always_inline)) you can try to use, though I wouldn't trust it any further than I could throw it. 22:06:00 -!- augur has quit (Ping timeout: 245 seconds). 22:07:02 -!- tombom__ has joined. 22:07:48 -!- tombom__ has quit (Client Quit). 22:08:08 fizzie: It works well because it errors if it fails 22:08:58 -!- tombom_ has quit (Ping timeout: 248 seconds). 22:09:14 fizzie: It's not necessarily a good *idea*, but it definitely *works*. 22:16:43 -!- adam_d_ has joined. 22:19:12 -!- adam_d has quit (Ping timeout: 265 seconds). 22:19:49 -!- cpressey has joined. 22:27:49 -!- impomatic has quit (Quit: ChatZilla 0.9.86 [Firefox 3.5.8/20100202165920]). 22:28:34 gah c++ references 22:28:45 c++ kinda makes me sad for humanity 22:28:56 people use all these horrible features and *like* them 22:30:11 and what do you prefer 22:32:27 C++++ 22:32:32 Pure virtual templates ftw 22:33:22 Oranjer: not using references 22:33:41 int x = 2; foo(x); // x could be anything 22:34:04 but you just said it was 2? what? 22:34:17 it's just horrendous, it's not even the feature itself i object to but the fact that people actually use it and think it's a good idea 22:34:41 Oranjer: that's c++, foo(x) can modify the actual value of x 22:35:11 Hey, you need SOME way to overload assignment 22:35:16 you could do this in C with foo(&) which is 10000 times better 22:35:23 foo(&x) i mean 22:35:40 Using a pointer allows null, which may not be desirable 22:35:54 but then if I have to pass a pointer by reference I will need to take a pointer to a pointer and AHHH I'M CONFUSED 22:36:03 haha 22:37:11 And then there's the question of whether foo(&&x) makes sense to the compiler. 22:37:29 -!- coppro has quit (Ping timeout: 246 seconds). 22:38:39 Why do people think MW is a poor medium for discussion? 22:39:07 It works just as well as a standard forum. 22:41:02 Does it show you what part of the discussion you've read, and what's unread, in some sensible way? 22:41:21 No, but in my experience that doesn't really come up. 22:41:48 In my experience that's pretty crucial; granted, "my experience" is pretty much just Usenet, which is not quite a forum. 22:41:53 Particularly not in such a small place as the esolang wiki. 22:46:55 fizzie: it does if you use the history diff 22:47:08 ok maybe not "sensible", but it's what i do 22:47:26 I guess that would work. 22:47:36 It could be just some sort of philosophical objection about not using the right tool for the right job; though that would seem really out-of-place on the esolang wiki, too. 22:47:45 :D 22:48:48 well i nearly always use the diff on the main articles anyway, so... 22:49:54 The problem with the whole esolang community is that it's hell for the impatient. 22:51:00 well i guess this channel is our only realtime forum 22:51:13 -!- nooga has joined. 22:51:13 the others i just check now and then 22:51:14 Yes... 22:51:27 Aside from our annual conference, yes. 22:51:29 Phantom_Hoover: the whole esolang community is this channel. 22:51:33 (including the "forum", which has rss btw) 22:51:34 This channel also has some problems staying on target. 22:51:38 And the wiki. 22:51:41 (.) (.) 22:52:14 The wiki is most certainly legit. 22:52:17 Lament: And hence if the person you want to talk to isn't on the channel it's infuriating. 22:52:38 -!- augur has joined. 22:52:42 Phantom_Hoover: if i'm not on the channel i'm most likely not on the internet at all 22:57:24 oerjan: And if you're not on the internet, you're NOBODY. 22:58:04 So, I'd like to design an esolang which is basically an imperative machine except where each of the instructions is represented by an (unlabelled, undirected) graph. 22:59:03 That's a good thing to do; there's been far too few graphy things so far. 22:59:03 This would necessitate using graph isomorphism to recognize instructions and execute programs, and since it's not known if GI runs in polynomial time, programs in this language have an ... interesting lower bound. 22:59:44 cpressey: have you looked at eodermdrome? 22:59:52 s/GI runs/GI is solvable/ 22:59:55 oerjan: briefly 23:00:40 I thought it was doing something different with graphs 23:01:16 hm yeah the instructions are subgraph substitutions 23:01:36 it does have that subgraph isomorphism problem though 23:01:42 Bye. 23:01:45 -!- Phantom_Hoover has quit (Quit: ChatZilla 0.9.86 [Firefox 3.5.8/20100214235838]). 23:02:27 (which is even NP-complete, except eodermdrome also has that 26-vertex subgraph limit) 23:03:34 cpressey: if you don't _want_ your language to be that hard to run, you could probably select instruction graphs that were somewhat easier to recognize 23:03:35 Knowing that it is NP-complete makes it somewhat less interesting... the interesting thing about GI is that not much is known about where it stands w.r.t P and NP 23:03:58 yeah 23:11:31 -!- ttm has quit (Quit: Seeeeeya). 23:15:54 NP-complete does not mean hopeless in all cases: In this case, if subgraphs to recognize are fixed, it seems there is polynomial algo... 23:17:11 -!- dbc has joined. 23:17:19 Another thing I was trying to come up with (only tangentially related) is a purely functional, yet concise, notation for constructing (again, unlabelled) graphs. What I've got so far is only so-so. 23:17:39 Ilari: yes 23:22:02 I'm reviewing my game with coppro 23:22:20 An observer mentioned that he could have captured my queen if he saw a certain move, but he didn't 23:23:52 -!- fax has quit (Quit: Lost terminal). 23:28:37 -!- augur has quit (Ping timeout: 260 seconds). 23:51:57 So, a program running as root can escape from plash, right? 23:54:04 plash doesn't run programs as root, but if a program got root within plash, it could escape, although it'd be pretty tricky. 23:57:30 plash? 2010-03-13: 00:00:17 plash is better than you. 00:00:24 Or something :P 00:03:24 Yay, just got HOL Light installed (under cygwin...) and proved something with it 00:04:03 Someone should make Plash for Windows 00:09:37 Sgeo: No. 00:13:16 -!- adam_d_ has quit (Ping timeout: 265 seconds). 00:24:03 -!- augur has joined. 00:25:21 -!- cpressey has left (?). 00:30:21 -!- MigoMipo has joined. 00:35:57 -!- FireFly has joined. 00:36:16 -!- FireFly has quit (Read error: Connection reset by peer). 00:37:00 -!- FireFly has joined. 00:37:38 -!- FireFly has quit (Write error: Broken pipe). 00:40:29 -!- oerjan has quit (Quit: Good night). 00:57:40 wow 01:04:25 wiw 01:04:40 waw 01:09:41 wuw 01:10:08 wyw 01:11:30 wew 01:11:46 wfw 01:11:48 c-c-c- 01:11:57 COMBO BREAKER? 01:12:10 HAI GAIS 01:12:15 You could have continued using another semivowel, you know. 01:12:18 Like "yay". 01:12:33 waw, wew, wiw, wow, wuw, wyw, yay, yey, yiy, yoy, yuy, yyy... 01:12:52 After that, proceed to the stuff that's almost a vowel. rar, rer, rir, ror, rur, ryr. 01:13:07 Then other stuff that's almost a vowel: lal, lel, lil, lol, lul, lyl. 01:13:22 And then some nasals: nan, nen, nin, non, nun, nyn, mam, mem, mim, mom, mum, mym. 01:33:30 erm 01:34:03 mer 01:34:04 rem 01:34:28 Wow. http://to./ 01:34:35 It's a URL shortener. 01:37:12 how is this even possible 01:37:25 to is a TLD 01:37:32 For some country 01:37:41 Some country clever enough to make the greatest URL shortener ever. 01:37:57 Also, http://to/bleh works the same if your OS doesn't suck. 01:38:23 but why the dot at the end 01:39:18 I've recently been reminded that that's always been the correct canonicalization, since the beginning of DNS (this is why BIND wants your hostnames to end in a .), not having a . is just a convenience. 01:42:16 why i cannot visit pl. or com. then? 01:43:28 com. does work, although it forwards to www.com. 01:43:36 pl. also works 01:43:58 Oh, sorry, my confusion, lemme restate: 01:44:05 bah 01:44:11 i see it does noe 01:44:14 com and pl don't have A addresses, they have no host. www.com. does work, as does www.pl. 01:44:44 com. doesn't work for the same reason that com doesn't work, because the gigantulous company that controls the com TLD doesn't have any address there. 01:44:48 Same with pl 01:47:10 wonder who controls it 02:04:57 -!- MigoMipo has quit (Quit: Page closed). 02:07:32 In zone files, domain names ending in . are absolute and domain names not ending in . are relative. 02:08:25 So if your domain name is foo.com., adding an A record for blah.foo.com. will make http://blah.foo.com/ go somewhere, and adding an A record for blah.foo.com will make http://blah.foo.com.foo.com/ go somewhere. 02:09:22 -!- Asztal has quit (Ping timeout: 276 seconds). 02:14:17 -!- nooga_ has joined. 02:17:36 -!- nooga has quit (Ping timeout: 252 seconds). 02:55:47 -!- FireFly has joined. 02:56:11 -!- FireFly has quit (Read error: Connection reset by peer). 02:56:47 -!- FireFly has joined. 03:15:36 -!- FireFly has quit (Read error: Connection reset by peer). 03:16:29 -!- FireFly has joined. 03:17:00 -!- FireFly has quit (Read error: Connection reset by peer). 03:17:37 -!- FireFly has joined. 03:18:11 -!- FireFly has quit (Read error: Connection reset by peer). 03:21:14 -!- kwertii has joined. 03:30:39 -!- werdan7 has quit (Ping timeout: 615 seconds). 03:39:01 -!- werdan7 has joined. 03:52:30 burp 03:53:08 uorygl: i see 03:53:22 code red! quarantine broken! 03:54:20 wha.... 03:54:22 * uorygl dons a gas mask. 03:54:23 oh 03:54:29 * uorygl wraps nooga_ in plastic. 03:54:45 mmffgffgf 03:54:54 * uorygl pokes breathing holes in the plastic. 03:55:01 hhhhhhh 03:55:07 * uorygl pokes speaking holes in the plastic. 03:55:17 hm 03:55:29 * uorygl pokes speaking articulately holes in the plastic. 03:55:32 that would actually make the plactic wrap pointles 03:55:38 Indeed. 03:55:45 * uorygl wraps the holes in plastic. 03:55:46 There! 03:56:09 mmfgm. 03:56:36 Hey, now. The holes still exist, so you can still breathe and speak and speak articulately through them. 03:56:54 But they're also wrapped in plastic so no contaminants can get out. 03:56:56 Genius, eh? 04:03:54 heh 04:04:18 wait a second 04:06:16 isn't france in the same time zone with warsaw? 04:06:22 i mean paris 04:06:55 night coding huh? 04:08:49 -!- jcp has joined. 04:33:17 -!- augur has quit (Ping timeout: 265 seconds). 04:33:43 * pikhq notes that alise hasn't been around for a few days 04:46:28 -!- Libster has joined. 04:46:30 -!- Libster has left (?). 05:17:48 -!- augur has joined. 05:25:37 -!- nooga_ has quit (Quit: Lost terminal). 05:32:25 -!- Oranjer has left (?). 05:35:59 -!- FireFly has joined. 05:36:20 -!- FireFly has quit (Read error: Connection reset by peer). 05:51:29 -!- coppro has joined. 05:59:25 -!- coppro has quit (Remote host closed the connection). 06:01:48 -!- coppro has joined. 06:12:26 -!- adu has joined. 06:29:02 -!- MigoMipo has joined. 07:42:58 -!- adu has quit (Quit: adu). 07:46:10 -!- adu has joined. 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:01:34 -!- kwertii has quit (Quit: bye). 08:18:03 -!- cheater2 has quit (Ping timeout: 240 seconds). 08:22:00 -!- cheater2 has joined. 08:36:18 -!- BeholdMyGlory has joined. 08:40:07 -!- adu has quit (Quit: adu). 09:32:42 -!- BeholdMyGlory has quit (Remote host closed the connection). 09:57:11 -!- jcp has quit (Quit: I will do anything (almost) for a new router.). 10:21:13 -!- oerjan has joined. 11:12:42 -!- fax has joined. 11:15:06 -!- kar8nga has joined. 11:24:53 -!- sebbu has quit (Ping timeout: 256 seconds). 11:36:17 -!- sebbu has joined. 11:37:52 -!- fax has quit (Quit: Lost terminal). 11:43:32 -!- tombom has joined. 12:06:20 -!- oerjan has quit (Quit: leaving). 12:36:16 -!- cheater has quit (Read error: Operation timed out). 12:36:40 -!- cheater has joined. 12:40:58 -!- adam_d has joined. 12:54:01 -!- fax has joined. 13:00:54 -!- adam_d has quit (Ping timeout: 258 seconds). 13:28:48 -!- lifthrasiir has quit (Ping timeout: 276 seconds). 13:42:42 -!- MigoMipo has quit (Quit: Page closed). 13:43:04 -!- BeholdMyGlory has joined. 13:49:26 -!- lifthrasiir has joined. 13:51:51 -!- Phantom_Hoover has joined. 13:52:26 If I have a raw Qemu disc image, how do I format an ext3 filesystem on it? 13:55:14 -!- lifthrasiir has quit (Quit: leaving). 13:55:27 Well? 13:55:33 -!- lifthrasiir has joined. 14:01:53 ill 14:03:52 -!- BeholdMyGlory has quit (Remote host closed the connection). 14:06:22 ?? 14:10:10 -!- cheater2 has quit (Ping timeout: 245 seconds). 14:11:24 -!- cheater2 has joined. 14:30:45 -!- Phantom_Hoover has quit (Ping timeout: 256 seconds). 14:31:49 -!- kar8nga has quit (Remote host closed the connection). 14:39:00 Just mkfs.ext3 on it. 14:39:51 It might need the -F flag if it refuses to operate on a normal file, though I seem to recall it asking about it instead. 14:39:59 (Yes, I noticed he is gone already.) 14:50:00 What's the environment variable restriction in cfunge's sandbox mode useful for? 14:50:40 alise and/or ehird, when either of you show up: the intelligence squared debate on the catholic church as a force for good was simply amazing 14:59:37 ?? 15:04:07 theres this thing called Intelligence Squared 15:04:25 they held a debate last year on whether or not the catholic hcurch was a force for good in the world 15:04:44 and they subsequently had a vote of the people who were present for the debate 15:05:02 pre-debate, the numbers were like 1000 no, 700 yes, 300 dont know 15:05:06 after it was like 1750 no, 200 yes, 50 dont know 15:08:45 -!- alise has joined. 15:09:12 #alise, please. I do not want this to be logged. 15:10:29 augur 15:10:31 daahafh 15:16:28 -!- alise_ has joined. 15:20:50 -!- alise has quit (Ping timeout: 252 seconds). 15:26:20 -!- alise_ has quit (Ping timeout: 252 seconds). 15:26:53 -!- alise has joined. 15:26:56 06:21:54 I wonder how small one can make a decent forth compiler in C 15:26:58 http://www.ioccc.org/1992/buzzard.2.design 15:27:57 Compiler 15:28:59 -!- alise_ has joined. 15:31:28 -!- alise has quit (Ping timeout: 252 seconds). 15:32:18 o.o; 15:38:04 -!- alise_ has quit (Ping timeout: 252 seconds). 15:40:25 -!- alise has joined. 15:44:55 -!- jcp has joined. 15:49:04 -!- alise has quit (Ping timeout: 252 seconds). 15:55:30 -!- alise has joined. 15:56:10 * alise writes a program to generate true constructivist statements. 15:56:10 Endlessly 15:56:13 *Endlessly. 15:56:29 ?? 15:56:37 Why not? 15:56:52 It's just a case of having a bunch of axioms and then substituting things for the variables in them. Endlessly. 16:03:22 -!- alise has quit (Ping timeout: 252 seconds). 16:04:57 -!- fungot has quit (Ping timeout: 260 seconds). 16:05:54 -!- alise has joined. 16:14:33 -!- alise_ has joined. 16:14:44 -!- alise has quit (Ping timeout: 252 seconds). 16:15:05 fax: plz relink 16:15:05 in msg 16:15:26 hi 16:16:55 Please? 16:17:13 no 16:17:25 Por mi? 16:17:52 fax: Why not? 16:17:59 because nothing was said 16:18:15 -_-' 16:18:16 There was -- in #alise2. 16:18:22 At the beginning. 16:18:30 (In /msg only, please. I do not want it leaking) 16:19:07 -!- fungot has joined. 16:19:14 15:31 -!- alise [~95fee059@gateway/web/freenode/x-uykmcysttrftzukr] has quit [Ping timeout: 252 seconds] 16:19:18 15:31 < alise_> test 16:19:20 15:31 < fax> test 16:19:21 FFS. 16:19:24 I mean what I told you at the start. 16:19:25 -!- Phantom_Hoover has joined. 16:19:30 Hello? 16:19:31 In */msg only. Please.* 16:19:33 you want me to show you what you told me? 16:19:50 hi 16:20:08 fax: Yes. In /msg, in a private pastie. Please? 16:20:21 why 16:20:39 So I can show it to someone else... 16:20:41 Because this client doesn't log... 16:21:12 *... 16:21:53 -!- zzo38 has joined. 16:22:20 I thought about Conway's Life cellular automaton but I have idea for a variant, called KnightLife 16:22:23 Phantom_Hoover: In case your question is still relevant, just /sbin/mkfs.ext3 on it; at least my copy will ask about being sure to operate on non-block-device, but will do it after confirmation. 16:22:55 -!- sebbu has quit (Read error: Connection reset by peer). 16:23:10 -!- sebbu has joined. 16:23:42 Fizzie: thanks. 16:24:13 all (0 -> all (0 -> 1)); all all all ((0 -> (1 -> 2)) -> ((0 -> 1) -> (0 -> 2))); all all ((~0 -> ~1) -> (1 -> 0)) 16:24:57 Turns out I am a bit too lazy even to implement modus ponens. :) 16:27:42 -!- ais523 has joined. 16:30:43 -!- alise has joined. 16:33:48 -!- alise_ has quit (Ping timeout: 252 seconds). 16:34:09 ffff I hate trivial programming bookkeeping 16:34:24 I hate how I don't make much sense 16:34:31 even when I try really hard to 16:35:10 like consider 16:35:13 subst :: [(Integer,Statement)] -> Statement -> Statement 16:35:14 hi alise 16:35:18 I do bookkeeping in the first argument but you also specify what to subst in there 16:35:28 so when I come across a universal quantification 16:35:54 -!- alise_ has joined. 16:35:57 -!- Asztal has joined. 16:36:02 FUCK 16:36:04 THIS 16:36:06 FUCKING 16:36:07 CONNECTION 16:36:09 until it's fixed i'm not talking 16:36:12 zzo38: so, what does KnightLife do? 16:37:42 It wouldn't be Life with knightships added, would it? 16:38:00 That would be cute. 16:38:16 sdgjdfigjfdsoigx 16:38:21 rpghghrounprghounyphrguorpgh 16:38:31 phonographphonographphonograph 16:39:45 safkaspofksad 16:39:45 asfd 16:39:45 asl 16:39:45 das 16:39:45 dasd 16:39:47 a\sdl 16:39:49 a 16:39:50 f 16:39:50 sfdskf 16:39:50 [sdf 16:40:02 -!- alise has quit (Ping timeout: 252 seconds). 16:41:48 uorygl: I thought it is obvious, isn't it? If not, I will explain 16:42:38 Obvious from the name? 16:42:53 all (42 -> all (42 -> 1)) SAME FUCKING PROBLEM >_< 16:42:55 I hate coding 16:42:56 hmm interesting 16:43:04 Maybe it's a little bit obvious, but it's not very obvious. 16:43:10 alise: I hate programming too! 16:43:14 theres a subset of non-CF languages that have linear parse time 16:43:14 Yes, a little bit. 16:43:16 hm hm! 16:43:34 and their conveniently representable in compact regex-like notation! 16:43:35 Basically the 8 surrounding cells are the knight's move cells instead of the king's move cells 16:43:36 hm hm! 16:43:38 faxoh but I love programming 16:43:38 proper programming 16:43:44 not this fuking bookkeeping shit 16:43:45 with five bbillion variables 16:43:49 also fuck you chrome 16:43:53 show me the input field 16:43:56 Now it's obvious, isn't it? 16:44:10 * augur bookkeeps alise_'s variables 16:44:12 ;o ;o ;o 16:44:28 WOOT 16:44:33 -!- Phantom_Hoover has quit (Ping timeout: 265 seconds). 16:44:59 Yep, now it's obvious. 16:45:18 -!- Phantom_Hoover has joined. 16:45:26 Same number of neighbors, but connected differently. Hmm. 16:46:24 asdfghj 16:47:01 pafdounafpoonufadpoundfapounadpfuondfpa 16:47:08 seriously what is it with shitty languages that can't match patterns and keep vaariables easily 16:47:23 i should be able to like.. modulo out that stuff to a separate block and write the rest uberpurely 16:47:26 "Pattern matching is hard!" 16:47:40 pikhq: not that kind of pattern matching 16:47:50 the kind of pattern matching that involves a recursive function to determine the OK-ness of a pattern 16:48:00 and then dispatching on the structure you infer in it 16:48:37 http://pastie.org/868022.txt?key=mqvjqn84rgv75aalq9arq 16:48:42 This function is 99% fucking fluff. 16:49:03 Now write modus ponens :: Statement -> Statement -> (Maybe) Statement. :-) 16:50:10 test 16:50:22 test 16:50:38 What is fax? 16:51:10 人間。 16:51:10 You cannot ask... what is fax. 16:51:11 It is not a question. 16:51:13 Instead, you mist ask.. 16:51:20 Why did I typo "mist" for "must"? 16:51:48 Then you will be enlightened. 16:51:48 Who is fax? 16:51:57 alise_: so what is this language, and why must you use it? 16:52:18 BUT WHO IS PHAX?! 16:52:46 uorygl: This is ... Haskell ... 16:52:58 fax is the bastard child of Miss Piggy and Kermit the Frog. 16:53:07 THIS 16:53:10 IS 16:53:12 HASKELL!!!!!!!!! 16:53:13 ファクス君が此処に居る人です。 16:53:28 saoidjdoifjsdojdsf 16:53:32 I'm I'm understanding you correctly, I'm slightly surprised that you're calling Haskell a shitty language that can't match patterns and keep variables easily. 16:53:34 THIS - IS - AN OUTDATED - MEEEEEEEEME 16:53:34 * fax bastard 16:53:35 I wish someone actually took u my challenge to write modusponens :P 16:53:36 (fax is a person who is hear) 16:53:36 s/I'm/If/ 16:53:39 *up 16:53:46 stop speaking japanese. 16:53:48 Gregor: :) 16:53:49 s/hear/here/ 16:53:51 uorygl: because I don't mean the trivial sense that haskell does 16:53:55 I mean generalised book keeping 16:53:59 http://pastie.org/868022.txt?key=mqvjqn84rgv75aalq9arq 16:54:04 2/3 parameters are bookkeeping 16:54:06 augur: 日本語を勉強する始めて。 16:54:12 the majoritry of the code. book keeping 16:54:14 (start studying Japanese) 16:54:19 if you try and code modus ponens inferrence using that, 16:54:25 you get EVEN MORE book keeping! yay 16:55:58 I think I'm turning Portuguese I think I'm turning Portuguese I really think so 16:56:45 So just what is subst supposed to do? 16:57:05 Substitute. 16:57:30 If the language excelled at eliminating pointless crap like that it'd be obvious from the definition. 16:57:35 Substitute what for what into what? 16:57:51 Substitute for a given De Bruijn index into a logical statement. 16:57:55 programming languages don't exist 16:58:06 THERE IS ONLY ZUUL 16:58:12 fax has spoken. 16:58:45 *XUL 16:58:52 *XML 16:58:55 (The XUL namespace file is one called there.is.only.xul; it says that. :)) 17:00:22 Okay, I think I see what this is all about. 17:00:22 -!- zzo38 has quit (Remote host closed the connection). 17:03:08 -!- alise_ has quit (Ping timeout: 252 seconds). 17:03:21 -!- alise has joined. 17:03:42 * alise installs xchat to avoid the shitty webchat client 17:05:05 uorygl: If you do decide to be my slave, the expectation of mp is that `mp (Var n :-> q) p'` produces q with p substituted for Var n (note that if you hit an All, all existing variables are shifted one place, and 0 becomes the newly-quantified variable); `mp (Not p :-> q) (Not p')` does the same but with the obvious, and `mp ((p :-> r) :-> q) (p' :-> r')` check that p/p' and r/r' match and then does the same as the others. 17:05:20 Actually, I'm just saying that so it's clearer what I have to do. 17:09:04 ss 17:09:41 alise shut up 17:09:48 have you read I am not a number, I am a free variable 17:10:04 -!- alise_ has joined. 17:11:04 I know how De Bruijn indexes work, fax. 17:11:10 I chose a bit of a shitty representation though. 17:11:15 I know how your mom works 17:11:17 "fax" 17:11:22 what 17:11:23 Who is fax 17:11:33 I did not mean that. 17:11:41 What do you mean, "'fax' what"? 17:11:48 alise shut up have you read it?? 17:12:02 How can I do both simultaneously? 17:12:08 JUST!!!! DO!!!!! 17:12:34 Can someone with more kernel knowledge than me tell me if this is feasible: http://esoteric.voxelperfect.net/forum/kareha.pl/1266506523/1 17:13:30 -!- indu has joined. 17:13:50 -!- indu has left (?). 17:14:41 -!- alise__ has joined. 17:14:52 -!- alise__ has quit (Client Quit). 17:15:36 -!- alise has quit (Ping timeout: 252 seconds). 17:16:04 -!- MarcoAchur1 has joined. 17:16:24 This is a gun: =>. And this is 5 episodes of Endless Eight. 17:17:36 -!- alise_ has quit (Ping timeout: 276 seconds). 17:20:42 -!- alise has joined. 17:21:21 -!- Phantom_Hoover has quit (Remote host closed the connection). 17:21:25 mIRC users: how the fuck do you set the default font for all subdinwws? 17:21:31 *subwindows 17:21:58 got it 17:22:54 Why the fuck would you use mIRC? 17:22:58 Sorry for the language 17:23:23 a lot of idiots hate mIRC for seemingly no reason other than idiots use it. On Windows I have been unable to find a better client (because all others suck). 17:24:44 -!- Phantom_Hoover has joined. 17:25:09 -!- alise_ has joined. 17:25:22 ...and then it inexplicably crashed 17:25:29 alise, Silverex? 17:25:39 No, mIRC. Or maybe I quit it... 17:25:43 Windows is confusing. 17:26:23 -!- alise_ has quit (Client Quit). 17:26:27 I meant, what's wrong with Silverex? 17:26:30 -!- alise has quit. 17:26:57 -!- alise has joined. 17:27:07 -!- alise_ has joined. 17:27:14 Figured out why. 17:27:22 It was minimising to tray; bad idea w/ Win7. Didn't actually crash. 17:27:26 -!- alise has quit (Client Quit). 17:27:31 -!- alise_ has changed nick to alise. 17:27:41 So now my only question is how to make subwindows maximised by default. 17:28:22 -!- alise has quit (Client Quit). 17:28:52 -!- alise has joined. 17:29:35 Ftop. 17:30:49 Hopefully a permanent client should make my IRC more reliable. 17:30:57 Is there anything better than Pidgin yet for Windows IMing? 17:31:05 -!- MarcoAchur1 has left (?). 17:31:36 nekwhat's the apb 17:33:10 ? 17:33:12 Are you drunk? 17:36:43 -!- adam_d has joined. 17:37:20 I recently tried switching to Digsby 17:37:28 oerjan said something about superstrict languages where (\x. f x) evaluates f. 17:37:32 That's interesting. 17:37:35 -!- Phantom_Hoover has quit (Read error: Connection reset by peer). 17:37:47 Yet to form a solid opinion on whether it's better. So far, still hoping that its Facebook Chat support is better than Pidgins 17:37:57 Digsby is spyware, iirc. 17:38:01 Or at least obnoxiously social. 17:38:23 Which one? I mind the former, the latter can be disabled as far as I've seen 17:38:47 I don't know. 17:39:12 Hmm... (\f. (\x. f (x x)) (\x. f (x x)) would evaluate (x x). 17:39:19 So even the lambda-expression of Y would diverge. 17:39:26 Is it TC, I wonder? 17:39:33 (\x. x x) is OK 17:40:08 -!- BeholdMyGlory has joined. 17:45:41 Yay, I implemented it and Y does indeed diverge. 17:48:37 heh 17:48:46 using divergence to check if your code works 17:49:07 Quite. 17:51:04 alise, hm.. which language? 17:51:17 lambda calculus? 17:57:13 Yes. 17:57:17 Superstrict lambda calculus. 17:57:30 Where, in (\x.E), you evaluate E as far as you can without relying on x's value. 17:57:40 So (\x. f x) evaluates f before it's even applied. 17:58:55 *Main> eval (App succL zeroL) 17:58:56 \a. \b. (a ((*** Exception: Prelude.(!!): index too large 17:59:00 Dammit. 17:59:02 The verifier should have caught that... 17:59:14 alise: That's pretty damned crazy right there. 17:59:56 Ugh, I have some sort of horrible bug. 18:00:02 (You could argue the entire thing is a horrible bug.) 18:01:46 At some point I used Xircon for Windows-irc, but the development of that died at 1.0b4, I think. It had a TCL scripting engine, that was at least nicer than mirc-scripting. But that was years ago; not sure what people use nowadays. 18:04:10 I have no idea why this isn't working XD 18:04:27 * alise tries booleans instead as a test 18:06:44 I have serious variable issues. 18:09:19 ah... 18:09:26 Lam ((Var 1 :$ Lam (Lam (Var 1))) :$ Var 1) 18:09:30 I'm not demoting my variables sufficiently 18:14:10 alise shut up!!!!!!!! 18:14:45 read the (first few pages of the) paper 18:15:09 -!- alise has quit (Ping timeout: 252 seconds). 18:15:21 -!- alise_ has joined. 18:16:23 * pikhq ported the "official" Lazy K interpreter to use Boehm GC... 18:16:38 Quite an accomplishment. 18:16:50 The reference counting scheme it used leaked memory. 18:16:55 So I fixed it. 18:17:08 I've also made the thing compile on modern C++ compilers. :P 18:17:20 It used reference counting? 18:17:22 Lollercopters 18:17:24 Yes. 18:17:37 It leaked a metric fuckton of memory. And the author had no idea why. 18:17:43 WHat's wrong with reference counting? 18:17:56 Sgeo: Leaks memory with cyclic datastructures. 18:18:02 So... the issue is that when I apply a lambda, and it results in a lambda, I need to decrement the Vars in it. 18:18:08 Ah 18:18:12 Bleh. 18:18:17 Not interesting enough. 18:18:25 Also, is somewhat overhead-heavy if done naively. 18:18:50 okay im here 18:19:55 It would be interesting to have a language where all expressions result in infinite structures. 18:20:04 Then reference counting would be /useless/ :) 18:20:42 Most of the work in making the interpreter GC'd was removing the reference counting and the inefficient pool allocator. 18:21:08 Adding the GC-ness was... "class Expr : public gc {" 18:23:53 `calc 1 metric fuckton in US fucktons 18:24:02 `calc 1000000000000000000000000000000000000000000000000 18:24:05 twitterbits.com/wp-content/plugins/as-pdf/generate.php?post=11 - [21]Similar 18:24:06 yodellingllama.com/?p=1183 - [16]Cached - [17]Similar 18:25:41 pikhq: Y'know, I'm starting to think that metric fucktons aren't even a real unit! 18:27:36 Hahah. 18:28:28 http://sprunge.us/OLIF It's a Lazy K interpreter that doesn't leak memory! 18:28:51 Is it a bird? Is it a plain? No... 18:28:55 (This is Jeopardy, right?) 18:29:02 *plane >_< 18:30:29 (note: still more complicated than it should be. C++: because iostreams suck so much we write our own stream class for everything) 18:31:25 -!- BeholdMyGlory has quit (Ping timeout: 260 seconds). 18:34:18 * alise_ wonders whether he's invented the Church, Mogensen-Scott or an entire, unnamed other encoding. 18:34:26 (The latter is unlikely.) 18:35:31 Mogensen-Scott is best 18:35:35 -!- Phantom_Hoover has joined. 18:36:04 How do you encode Nil | Cons ? List in Mogensen-Scott? I have: 18:36:08 Nil = \f g x. f x 18:36:08 Cons = \head tail f g x. tail f g (g head x) 18:36:10 Z | S Nat: 18:36:10 Z = \f g x. f x 18:36:10 S = \nat f g x. nat f g (g x) 18:36:11 A ? | B ?: 18:36:12 A = \val f g x. f val x 18:36:12 B = \val f g x. g val x 18:36:29 Are there any people acquainted with the Linux kernel here? 18:36:30 and finally, A | B: 18:36:30 A = \f g x. f x 18:36:30 B = \f g x. g x 18:36:57 So for a given constructor C, you take n functions where there are n constructors, and each function is of the type (... -> x) for the same x for all of them and ... being the arguments to the constructor. 18:37:12 If there is no recursion in the type, then you simply call the appropriate function. 18:37:13 alise weird 18:37:32 Otherwise, you invoke your substructure with the same functions, but with the value being substituted for what you'd normally do without the recursion. 18:37:56 I may have the function types wrong; forgot about the \x. bit. 18:37:56 fax: I think it's the most natural encoding. 18:38:00 Case analysis is built-in as the distinct functions. 18:38:11 Decomposition of the value also is built-in to each function's argument. 18:38:22 And it transforms type recursion into value recursion. 18:38:43 So the relevant function gets the /already decomposed, according to your will/ substructure as its argument. 18:39:21 fax: and you know what? 18:39:24 Prelude> :t cons (1::Integer) (cons 2 nil) 18:39:24 cons (1::Integer) (cons 2 nil) 18:39:24 :: (t21 -> t2) -> (Integer -> t21 -> t21) -> t21 -> t2 18:39:28 It encodes types as their fold. 18:39:31 I think their left fold. 18:39:36 Maybe right-fold would be more elegant. 18:40:28 So succ would be \nat f g x. g (nat f g x) 18:40:43 cons would be \hd tl f g x. g head (tail f g x) 18:40:48 fax: is that morgonson? 18:41:10 -!- sebbu2 has joined. 18:41:10 no 18:41:18 What is morgonson then? 18:42:15 -!- sebbu has quit (Ping timeout: 245 seconds). 18:42:15 -!- sebbu2 has changed nick to sebbu. 18:45:44 * alise_ tries to transform a tree into it 18:46:43 Leaf = \val f g x. f val x 18:46:44 Branch = \left right f g x. left f g (g (right f g x) x) 18:46:44 or 18:46:44 Branch = \left right f g x. g (left f g x) (right f g x) 18:46:44 I think 18:46:55 I think the latter is better. 18:47:00 alise did you see my post that uses lambda calculus 18:47:10 No; link. 18:47:24 on the blog 18:47:46 * alise_ attempts to google to find it again 18:49:12 hmm 18:49:33 church numerals are like this but with f=id 18:49:35 which is equivalent 18:49:50 and church numerals are A/B without the extra x (equivalent under n) 18:50:18 actually 18:50:22 false = \g x. x 18:50:26 true = \g x. g x 18:50:30 so false = \a b. b 18:50:33 true = \a. a 18:50:36 lol 18:50:55 wait i can't have f = id 18:50:57 A = \val f g x. f val x 18:50:57 B = \val f g x. g val x 18:51:46 Prelude> :t branch 18:51:47 branch 18:51:47 :: (t -> (t2 -> t3 -> t4) -> t1 -> t2) 18:51:47 -> (t -> (t2 -> t3 -> t4) -> t1 -> t3) 18:51:47 -> t 18:51:47 -> (t2 -> t3 -> t4) 18:51:47 -> t1 18:51:47 -> t4 18:51:48 obviously 18:56:45 hmm it should be f x val 18:56:49 not f val x 18:57:46 Cons = \head tail f g x. g (tail f g x) head 18:57:50 Er, no, that's not really right. 19:01:40 fax: I thought of a really nice property of musing Mu for recursive datatypes. 19:02:14 musings on Mu -- sounds like a blog post 19:03:49 -!- olsner_ has joined. 19:04:12 fax: hehe 19:04:59 fax: I often have the issue that I have two types, e.g. expression and pattern, where pattern is like expression but with one extra constructor like Free String 19:05:02 so I have to do 19:05:04 data Core = ... 19:05:12 (oh and expression has some extra thing too) 19:05:16 data Expr = Core Core | ... 19:05:20 data Pat = Core Core | ... 19:05:21 except 19:05:24 what if Core is recursive? 19:05:32 data Core self = ... 19:05:42 data Expr = Core (Core Expr) | ... 19:05:47 data Pat = Core (Core Pat) | ... 19:05:49 but 19:05:51 if Core was defined with mu 19:05:56 then it'd be Mu F 19:06:02 so we'd just do F (Mu Expr) instead! 19:06:23 so Mu actually lets you easily express recursion-substitution of data types 19:08:44 I think we need some way to extract the F from a Mu F 19:09:16 wait, that's easy 19:09:18 extract (Mu F) = F 19:09:22 well 19:09:26 that requires pattern matching on Mu :P 19:09:39 Are you just talking to yourself? 19:10:06 He's talking to whoever is listening. 19:10:14 Well, fax would ideally respond. 19:10:29 What is it you're talking about? 19:10:33 I missed the start. 19:11:36 Using Mu-recursive types to encode recursion-substitution of data types. 19:12:17 -!- augur has quit (Ping timeout: 246 seconds). 19:13:31 heh () becomes id in my encoding 19:14:10 How does that work? 19:14:57 http://pastie.org/868169.txt?key=mmgxkfgi4bnnt1ix3u3jqg 19:15:25 Haskell? 19:15:37 -!- kar8nga has joined. 19:15:38 Well, for the data types (with ? for polymorphism) 19:15:45 The expressions, lambda-calculus 19:15:52 The format is data Foo = ..., in my representation is ... 19:16:33 So a constructor C for a type T with N constructors, C takes N functions of the arity of the corresponding constructor, plus one (of the same type for every function, but polymorphic), and returning something of the same type for every function (but polymorphic). 19:16:48 -!- Asztal has quit (Ping timeout: 265 seconds). 19:16:57 Oh, and a value of the type of the first argument of each function. 19:17:05 If the data type is not recursive, then the corresponding function is simply called with the value given, plus the constituents of the constructor. 19:17:06 *quails* 19:17:20 If it is recursive the value given is substituted for the value of calling the substructure with the same functions, and the value. 19:17:30 (This is repeated for each recursive element, as different arguments to the function.) 19:17:38 Thus: 19:17:40 Leaf = \val f g x. f val x 19:17:41 Branch = \left right f g x. g (left f g x) (right f g x) 19:17:55 I was away having dinner 19:18:23 fax: That is NOT ALLOWED. 19:18:28 ;( 19:18:32 I didn't know 19:18:44 Real Programmers eat the dust in the air. 19:18:46 -!- oerjan has joined. 19:18:55 fax: well READ WHAT I SAID :| 19:18:58 hi oerjan! 19:19:00 -!- MizardX- has joined. 19:19:03 -!- MizardX- has quit (Remote host closed the connection). 19:19:05 hi fax 19:19:09 alise encoding data into lambda calculus is boring though 19:19:12 also alise_ 19:19:21 -!- MizardX- has joined. 19:19:23 -!- MizardX- has quit (Changing host). 19:19:23 -!- MizardX- has joined. 19:19:34 hey 19:19:43 so where does calulus happen? 19:19:53 real numbers, finite numbers, data 19:19:55 what else ? 19:20:10 Calculus :: * -> BranchOfMathematics 19:20:18 fax: What is there that is not data? 19:20:18 um 19:20:20 Wait, there's and implementation of real numbers on the lambda calculus now? 19:20:23 Function calculus perhaps? 19:20:24 I don't mean lambda calculus 19:20:28 s/and/an/ 19:20:34 I mean like "derivatives" and "integrals" 19:20:38 Phantom_Hoover: The computable reals are expressible in just about any language. 19:20:45 on data I mean specifiically: d for data 19:20:46 Well-typed at compile time in dependent languages. 19:20:54 please just understand what I mean :| 19:21:11 f : PosRational -> Rational is a computable real number iff for all positive rationals e1, e2, abs (f e1 - f e2) < e1 + e2 19:21:30 yeah, for computable reals you don't even need recursion 19:21:33 hm 19:21:36 "recursion" 19:21:44 +general 19:22:10 yeah if you can do rationals and semi-recursive functions 19:22:12 then you can do computable reals 19:22:13 -!- MizardX has quit (Ping timeout: 276 seconds). 19:22:20 -!- MizardX- has changed nick to MizardX. 19:22:24 you could even model them in brainfuck if you came up with a function representation 19:22:36 I should implement some reals, but I'd need quotient field..... 19:22:44 and I have implemented it but not proved it a field yet 19:23:21 *<= 19:23:23 not < 19:23:24 I always make that mistake 19:23:53 alise ill tell you the defintion from my bok 19:25:40 bok 19:26:19 alise, 19:26:36 really what you need is a cauchy sequence that's all :P 19:27:23 Serious analysis begins with the real numbers. A /real number/ is a sequence (x_n)_(n>=1) of rational numbers that is /regular/, in the sense that forall m >= 1, forall n >= 1, |x_m - x_n| <= m^-1 + n^-1 19:28:15 The standard equality on the class R of real numbers is defined so that (x_n) =_R (y_n) if and only if forall n >= 1, |x_n - y_n| <= 2n^-1 19:28:17 yeah but if you have an infinite sequence... well that's a function 19:28:33 and it's nicer to use if you have the indices be Q+s 19:28:46 This relation is clearly reflexive and transitive; its transitivity is a consequence of 6.1 19:28:50 also equality on the computable reals doesn't always terminate if they're nonequal which sucks 19:28:55 imo, using === is better 19:29:03 then you just have to prove they're equal or not :)))) 19:29:17 yeah equality is not decidible on R, that's a classical statement 19:29:30 that =_R I gave above is a proposition 19:29:48 yeah 19:29:52 ah 19:30:01 alise want to show you something really cool I saw today 19:30:04 i know it's well known 19:30:07 but it does so suck 19:30:15 what sucks?? 19:30:27 alise_: um if they're nonequal obviously it terminates, it's the equal case that is problematic 19:30:27 alise, read this http://coq.inria.fr/stdlib/Coq.Reals.Rlogic.html 19:30:28 a NINJA??? 19:30:40 o_o lol 19:33:43 oerjan: er right 19:34:08 09:39:12 Hmm... (\f. (\x. f (x x)) (\x. f (x x)) would evaluate (x x). 19:34:08 09:39:19 So even the lambda-expression of Y would diverge. 19:34:23 "transClause :: ..." ;; Mr, now Mrs Clause 19:34:25 well but that expression is unusable in a (just) strict language anyway 19:35:14 Theorem not_not_archimedean : 19:35:19 forall r : R, ~ (forall n : nat, (INR n <= r)%R). 19:35:19 Not not not not not. 19:35:24 oerjan: of course 19:35:29 having lambda-expressions diverge is hilarious 19:38:10 10:17:56 Sgeo: Leaks memory with cyclic datastructures. 19:38:27 i don't think lazy-K has cyclic datastructures, but i haven't investigated it 19:38:35 alise did you read it??? 19:39:00 because it doesn't have Y as a primitive 19:39:12 fax: yrd 19:39:17 ?? 19:39:17 *yes 19:39:25 now what 'sucks'? 19:39:57 although on the other hand _that_ might perhaps cause memory leaks with recursion that an efficient Y wouldn't give 19:40:22 fax: non-propositional equality on reals 19:40:24 ffs 19:40:40 the consequence of decidible equality 19:41:00 think about classical logic as contained inside constructive.. 19:41:05 or perhaps that just causes a lot of duplicate evaluation. 19:41:38 fax: what are you trying to say 19:41:59 * oerjan is assuming lazy-K isn't so cleverly implemented as to detect essential uses of Y 19:42:06 im just talking :| 19:43:47 fax: :-) okay 19:44:03 you think im stupid!! 19:44:05 ill show you 19:44:09 fax: also i'm beginning to think pattern matching in function heads is overrated in dependent langs... 19:44:17 oh?? 19:44:45 I don't think you're stupid ffs :) 19:44:46 and 19:44:47 bI don't think a denpendent language needs to support pattern matching 19:44:56 I mean as a syntactic thing 19:44:58 but it should be able to add pattern matching 19:45:05 because often pattern matching has drastic effects on the structure of the other arguments 19:45:16 so a possibly-nested case expression makes this much clearer 19:45:29 and often the analysis is more complex than just does-this-constructor-match 19:45:31 well you can try programming with nested cases in Coq 19:45:36 and function-head matching doesn't really aid that 19:45:55 at one point I just gave up an implemented (an ad-hoc bug* ridden version of) dependent pattern matching 19:46:17 (* not actually able to produce wrong results.. but sometimes might not produce any result) 19:47:15 well i mean i like dependent pattern matching 19:47:26 but I'm specifically criticising 19:47:29 f (X ...) = ... 19:47:31 f (Y ...) = ... 19:47:50 yeah but you know case 19:47:53 you can't just write 19:48:08 f x = case x of X ... -> ... ; Y ... -> ... 19:48:11 if it's dependent 19:48:17 you have to say something about the types 19:48:17 hmm. 19:48:22 I don't see why 19:48:26 hmm 19:48:37 well.................... you do in Coq, is this a fundamental thing though? 19:48:47 what do you mean say something about the types btw? 19:48:50 ISTR augustss writing about it being essential 19:48:53 well I blogged about it 19:49:33 Phantom_Hoover: that Talk: Befunge message you responded to is spam (try googling it) 19:49:40 -!- Phantom_Hoover has quit (Ping timeout: 265 seconds). 19:49:45 sheesh 19:49:51 he just does that on purpose 19:49:56 -!- augur has joined. 19:50:34 fax: um that Ping timeout thing isn't is server generated? 19:50:49 he pulls the plug out 265 seconds before someone talks to him 19:53:14 I should have a specialisation of id called ff 19:53:14 so I can have 19:53:22 tt : ? 19:53:22 ff : ? 19:53:26 hope that sent right 19:53:30 ¬??? 19:53:35 oh 19:53:38 top/bot 19:53:39 that ? must have been a 'T' 19:53:39 from tt/ff 19:53:44 yeah 19:53:48 TT : ~T 19:53:49 erm 19:53:51 oops 19:53:51 :D 19:53:54 tt : T 19:53:56 ff : ~_|_ 19:53:56 looks like Omegamega 19:54:02 hm indeed user quit messages are prefaced with Quit: 19:54:32 (the format changed when they switched ircd) 19:54:48 toProp : (b : Bool) -> Sigma (P : Prop) (cond [b => P, not b => ~P]) 19:54:49 toProp b := 19:55:00 cond [b => T sigma tt, not b => _|_ sigma ff] 19:55:22 wondering if i should use case analysis instead of cond 19:55:46 yeah it looks nicer 19:55:59 I should have ?: with a nicer name :) 19:56:41 -!- Phantom_Hoover has joined. 19:56:59 Phantom_Hoover: that Talk: Befunge message you responded to is spam (try googling it) 19:57:36 Phantom_Hoover: ^ 19:59:06 Oh. 19:59:14 Very weird spam. 19:59:46 Phantom_Hoover: i don't know why they're doing it, but it's fairly common. look out for messages that have no hint the poster knows what the wiki is about. 19:59:50 after a while you get a sense as to what's spam and what isn't 20:00:03 oerjan: does the page need deleting? or is there legit content on it too? 20:00:19 ais523: i already removed that section, there are lots of legit ones 20:00:28 ok 20:01:12 i have an excellent spam 'n phish o mometer 20:01:13 spam and fish 20:01:15 I should probably start selling fungot licenses to spammers; it's more entertaining than the usual gibberish I see in my inbox. (Though they might not be going for the entertainment value there.) 20:01:15 :) 20:01:15 fizzie: i was born in a barn?". i assume you'll mostly just want " how did you get my privmsgs? 20:01:31 Born in a Barn. fungot. The autobiography. 20:01:32 alise_: distributive property for example i wrote program as an ast? i believe the right way 20:01:49 Phantom_Hoover: they have started trying to formulate messages that look like they _could_ be legit, but google shows when they're spammed all over the place 20:02:32 s/place/web/ 20:03:51 ehird 20:03:55 alise 20:04:04 oerjan: that spam is mostly pointless anyway, if they aren't spamming URLs or anything like that 20:04:53 fax: I have a feeling I need a real system... 20:04:56 I keep using "refl" to substitute for any a === :-) 20:05:00 *a === b 20:05:08 ais523: yeah i don't understand why they're doing it either. maybe to test our spam response intelligence? 20:05:14 alise I don't understand 20:05:30 you cant use refl unless a and b are convertible 20:05:35 fax: don't understand what, my refl thing? 20:05:37 -!- Phantom_Hoover has quit (Ping timeout: 265 seconds). 20:05:39 oerjan: I heard an explanation that sounds plausible: the bots are trying to spam their URLs in an URL field, and although MediaWiki doesn't have one the bots don't know that 20:05:42 well exactly 20:05:49 however, in that case I don't see how they'd be getting past the CAPTCHA 20:05:49 ais523: ah 20:05:52 toProp b === T sigma tt? well obviously, it's true! 20:06:05 that's extentional equality!!!!! 20:06:10 spambots generally need some knowledge of how an individual CAPTCHA works before breaking it 20:06:15 Proof: refl! 20:06:27 hrfm 20:06:35 ais523: does our wiki have a special captcha? 20:06:50 no, it's MediaWiki's default captcha 20:06:59 and a very easily broken one, at that 20:07:01 i don't recall seeing it 20:07:05 fax: so? :P 20:07:11 oh, wait 20:07:19 btw how is apartness defined? 20:07:22 ais523: which means the spammers probably know all about it since a long time ago 20:07:33 the CAPTCHA rules are that they come up on attempts to register accounts, and edits by anons that add URLs 20:07:39 I thought of having as an argument to the constructor a proposition for which P x but not P y 20:07:40 thinking about it: this spam isn't actually adding URLs 20:07:45 so it doesn't need to go past the CAPTCHA at all 20:08:06 ais523: heh. also this last spam showed some indication they knew it was a _wiki_, even if not what the wiki was about 20:08:18 (it talked about creating articles) 20:09:35 -!- mano0o0 has joined. 20:09:36 or maybe that's common terminology for other things than wikis too 20:09:49 the spam just came up on my feed of all edits to Esolang 20:09:52 nothing gets past the admins! 20:09:58 just, sometimes other people get there first 20:10:11 and that particular comment would make sense on a blog, too 20:10:15 although it would mean something else 20:10:22 ais523: oh? what then? 20:10:37 an article would have to posted by a blog owner wouldn't it 20:10:43 *to be 20:10:55 oerjan: it means, can someone find me more articles on this subject? 20:11:36 hm not quite, but i see it could be... 20:11:37 alise, I will show you apartness 20:11:47 alise I should just write this whole chapter into Coq :P 20:11:53 it sounds like one blogger asking another how they find ideas 20:12:00 yep 20:13:31 x # y if x > y or y > x 20:13:48 fax: just look at this pile of shit: http://pastie.org/868241.txt?key=unp3wmm109dzwe6ssnkw 20:13:54 properties: x = y /\ x # y -> 0 = 1 20:13:58 I just cheated through the whole fucking proof by sprinkling refl everywhere! :-P 20:14:03 i wonder if the wiki enabled captchas after i joined (2006) 20:14:05 fax: so apartness is only defined if you have an ordering? 20:14:08 I had 20:14:12 x = y /\ y # z -> x # z (??? weird one) 20:14:17 x # y -> y # z 20:14:19 x # y -> y # x *** 20:14:26 x # y -> x # z \/ z # y 20:15:14 data Apart : {A:Set} -> (x:A) -> (y:A) -> Prop where lfer : {P : A->Prop} -> ((P x /\ ~P y) \/ (P y /\ ~P x)) -> Apart x y 20:15:39 oerjan: it's relatively recent, I had a discussion with Graue about it 20:16:03 alise what's teh point in making that data? 20:16:07 -!- olsner_ has quit (Quit: olsner_). 20:16:08 why not just do it as a function definition 20:16:19 oh wait I completely neglected my obligation in toBool to supply P | ~P 20:16:19 that's why the proof was so easy... 20:18:40 what data 20:18:44 and because 20:18:46 20:14 < alise_> data Apart : {A:Set} -> (x:A) -> (y:A) -> Prop where lfer : {P : A->Prop} -> ((P x /\ ~P y) \/ (P y /\ ~P x)) -> Apart x y 20:18:48 toProp : (b : Bool) ? S (P : Prop) (cond b ? P; else ? P) 20:18:49 oh you mean apart 20:18:56 because === is defined as data sooo 20:19:03 my um / 20:19:03 ? 20:19:10 what's the name of like .. a strategyr 20:19:12 well here's a definition 20:19:14 ais523: rings a bell 20:19:17 except that it's ad-hoc guidlines 20:19:31 rule of thumb 20:19:49 fax: heuristic? 20:19:54 yes! 20:20:13 my hooristikc is to define the fewest data possible, but the strongest ones 20:20:14 apart : {A:Set} -> A -> A -> Prop 20:20:21 like if two data are similar, you can probably abstract it out 20:20:33 apart x y = exists {P : A->Prop}. (P x /\ ~P y) \/ (P y /\ ~P x) 20:20:33 or something 20:20:36 the real reason to define a data type is because you want the strength of its induction principle 20:20:44 at least that's my (current) view/understanding 20:21:04 fax: it looks really weird whenever anyone uses the word "data" correctly 20:21:05 well done 20:21:19 http://pastie.org/868253.txt?key=nb3ny4djjrabif9xilvalq honestly toBool.toProp===id should just be "obvious" 20:21:29 toBool.toProp===id b := obvious 20:22:20 obvious : {P : Prop} -> cond isObvious P -> P; else -> T 20:22:43 tautology "P" -> P ? 20:23:26 ? 20:23:31 is " quoting? 20:23:55 so tautology : (q : Quoted Prop) -> unquote q? 20:24:35 fax: so what's the type containing Prop and Set in your opinion? Set_1? 20:27:15 s : {A : Set1} ? {B : Set1} ? {P : A ? B} ? (x:A) ? P x ? S (x:A). P x 20:27:15 scary type. 20:27:20 whoa there mirc 20:27:22 what are you doing 20:27:43 s : {A : Set1} ? {B : Set1} ? {P : A ? B} ? (x:A) ? P x ? S (x:A). P x 20:27:43 hmm 20:28:04 -!- werdan7 has quit (Ping timeout: 619 seconds). 20:28:52 well 20:29:22 _sigma_ : {A : Set_1} -> {B : Set_1} -> {P : A -> B} -> (x:A) -> P x -> Sigma (x:A). P x 20:29:22 anyway 20:30:10 alise in Coq it's Type (Type[1]) 20:30:17 but I don't really have an opinion on this :P 20:30:29 so Set : Type, Prop : Type? 20:30:55 fax: I kinda hate having separate Sets and Props 20:31:00 because you lose so much isomorphism and neatness 20:31:24 umf 20:31:28 I don't knnow what yu mean 20:31:39 please, please, PLEASE, when saying you don't know what i mean QUOTE the bit 20:31:41 otherwise I can't answer 20:31:45 20:30 < alise_> because you lose so much isomorphism and neatness 20:31:59 for instance 20:32:12 A \/ B = Either A B 20:32:16 A /\ B = A * B 20:32:29 P \/ ~P then just inspecting left/right to find out which it is 20:32:43 forall <-> function 20:32:50 exists <-> dependent tuple 20:32:54 and so on, so forth 20:35:13 what 20:35:28 wait 20:35:37 -!- Phantom_Hoover has joined. 20:35:52 proofs are different than types 20:35:59 the reason is proof irrelevance 20:36:04 i know! 20:36:15 so why would you want to get rid of proofs?? 20:36:17 but if you ignore proof irrelevance like agda, everything is so much prettier and curry-howardish :( 20:36:27 * fax doesn't find it prettier 20:36:36 hm 20:36:48 agda has combined proof/set... and suffers for it, but the isomorphisms are just so appealing 20:36:48 20:31 for instance 20:36:48 20:31 A \/ B = Either A B 20:36:48 20:31 A /\ B = A * B 20:36:48 20:32 P \/ ~P then just inspecting left/right to find out which it is 20:36:49 20:32 forall <-> function 20:36:49 20:32 exists <-> dependent tuple 20:36:50 20:32 and so on, so forth 20:36:54 maybe if we used quotients!!!! 20:37:01 to make a 'proof' set 20:37:13 well it's not prettier per se 20:37:14 I suppose that's what epigram does 20:37:16 but the isomorphisms are elegant 20:37:18 -!- werdan7 has joined. 20:37:22 if you don't value isomorphisms - 20:37:23 what isomorphisms? 20:37:27 then why do we persue curry howard? 20:37:27 are you talking about curry-howard 20:37:29 for FUCK's sake 20:37:30 20:31 for instance 20:37:30 20:31 A \/ B = Either A B 20:37:30 20:31 A /\ B = A * B 20:37:30 20:32 P \/ ~P then just inspecting left/right to find out which it is 20:37:30 20:32 forall <-> function 20:37:30 20:32 exists <-> dependent tuple 20:37:31 20:32 and so on, so forth 20:37:42 THOSE isomorphisms 20:37:44 stop pasting that, I can't see what you are saying inbetween all this pastes 20:38:04 maybe the idea is to read the paste 20:38:04 instead of asking for its contents 20:39:53 those are (among the) appealing isomorphism s 20:39:55 *isomorphisms 20:40:22 I don't get it 20:41:23 what part do you not get 20:41:59 data _/\_ : (A:*) -> (B:*) -> * where both : A -> B -> A /\ B 20:42:03 look similar to the definition of a tuple to you? 20:42:12 :S 20:42:38 What, it doesn't? 20:42:43 curry-howard is that typed lambda calculus corresponds to natural deduction ? 20:42:57 What I was /trying/ to do is use *analogy*. 20:43:17 Curry-Howard: Types in the lambda calculus correspond to statements in intuitionistic logic. W 20:43:24 Curry-Howard: Types in the lambda calculus correspond to statements in intuitionistic logic. We love this, and pursue it: it's why we make dependent languages. 20:43:33 is that a quote? 20:43:34 So if you do not appreciate the isomorphisms I listed, why then Curry-Howard? 20:43:38 No. 20:43:47 okay let me get this straight 20:44:02 no 20:44:04 no I don't get it 20:44:24 What part? 20:44:25 can't you use v and ^ instead? :p 20:44:31 I'm asking #haskell 20:44:34 comex: Yeah, it's not like v is like a variable name. 20:44:42 fax: ugh, you make no sense at all 20:44:55 *is a variable name 20:45:11 this is my question: 20:45:12 what does 'Curry–Howard correspondence' have to do with dependent types? 20:45:27 Ugh! That is IRRELEVANT to my point. 20:45:34 Dependent languages make /good proof systems/. 20:45:35 wow 20:45:40 why is it irrelevant 20:45:52 Because/ of Curry-Howard. 20:45:54 *Because 20:45:55 *BECAUSE 20:46:37 So we, in making our languages, support the isomorphism; recognise it as good. If you do not recognise isomorphisms as a reason for the unification of two general concepts, as in the examples I showed, why then do you recognise Curry-Howard as a good thing? 20:47:23 I'm not sure what Curry-Howard is exactly 20:47:53 it seems kinda vauge, like a principle more than a formal statement 20:48:06 Duh. 20:48:07 Of course it is. 20:48:32 you needn't be so caustic 20:48:39 Sgeo: http://lifehacker.com/5336382/digsby-joins-the-dark-side-uses-your-pc-to-make-money, http://www.downloadsquad.com/2008/11/24/new-digsby-installer-loaded-with-bloat-and-adverts/, http://www.downloadsquad.com/2009/08/14/digsby-responds-to-claims-of-shady-money-making-tactics/ 20:50:05 Survived the first two points raised by LH 20:50:22 So? 20:50:25 Do you want to support such a company? 20:52:10 Hm. What alternatives are there, then? 20:52:24 Pidgin's been sucking for me for some reason, Digsby's company is shady 20:52:25 Uh, Pidgin? 20:52:29 It sucks but what can you do. 20:52:39 Miranda IM is popular with the anal-retentive tweakers. 20:52:50 A few hours and it's exactly as good as Pidgin but with more alpha-translucency. 20:53:12 :/ 20:53:12 * Sgeo doesn't like tweaking stuff 20:53:16 Huh; Russ Cox wrote Code Search. 20:53:20 alise just give up on me after bitching 20:53:35 fax: I just didn't notice what you said 20:53:40 There are other people than you and they talk... 20:53:51 I give up on people after I see a conversation going in circles, only. 20:55:42 brb 20:55:47 people shouldn't repeat themselves if they don't like going in cirlecs.. 20:55:59 Can Miranda IM be made to support Facebook Chat? 20:56:14 Apparently yes 20:56:52 I remember using Miranda IM once when I couldn't get Pidgin working, and I remember HATING it 20:56:55 -!- Phantom_Hoover has quit (Quit: ChatZilla 0.9.86 [Firefox 3.5.8/20100214235838]). 20:57:11 -!- Phantom_Hoover has joined. 20:57:42 Bloody QEMU... 20:57:58 * fax weeps 20:58:04 Why? 20:59:38 *bangs head against keyboard* 20:59:42 What's wrong with Qemu? 21:00:36 I'm trying to run a Linux kernel with -hda as a virtual disc, but it won't mount for some reason. 21:02:18 If I run "qemu -m 32 -hda ./vm.img -kernel ~/.../bzImage -append "root=/dev/hda"" the console prints some stuff about not being able to mount 21:02:19 . 21:02:43 Is hda a virtual disk or a filesystem? That is, is it partitioned? 21:03:01 You mean vm.img? 21:03:07 Yeah 21:03:18 It's a raw image with an ext3 filesystem on it. 21:03:31 Well, yuh, that should work, assuming the kernel has IDE support. 21:04:14 It doesn't work with the kernel in /boot either, so I assume the fault isn't with the kernel. 21:04:46 huh what happened... 21:04:59 By mistake I left clicked a tab with ctrl held down in firefox 21:05:08 it changed the tab title to begin with "(*)" 21:05:16 repeating the click removes it 21:05:19 fully reproducible 21:05:36 but it seems to have no effect in behaviour 21:05:52 anyone know if it is supposed to just do that, or do something else as well? 21:06:14 I mean, if it is just to mark a tab, or it changes something wrt. how the tab behaves 21:07:15 it could be from tab mix plus I suppose 21:08:34 -!- Phantom_Hoover has quit (Quit: ChatZilla 0.9.86 [Firefox 3.5.8/20100214235838]). 21:12:37 alise? 21:17:29 hm it does indeed seem to be related to tab mix plus 21:18:14 -!- Phantom_Hoover has joined. 21:19:10 Should ChanServ really be giving me a dead link? 21:19:58 yes. 21:20:09 But it's dead! 21:24:56 It's bleeding demised! It's passed on! It's no more! It has ceased to be! It's expired and gone to meet its maker! 21:27:06 It's just resting. 21:27:19 back 21:27:25 alise_: not you 21:27:28 Oh, you were right. 21:27:42 we backed up the frappr, so bah 21:28:10 Where is this backup? 21:28:25 on our hard drives 21:28:32 AnMaster has it, so do I on my other machine 21:29:23 Oh, does anyone now the reason for my Qemu problems? 21:29:31 Apparently Digsby stopped bundling spyware, so I'll try it. 21:29:38 Phantom_Hoover: #qemu? 21:29:51 alise alise alise alise 21:30:22 alise_: Tried that. It doesn't let me say anything. 21:31:34 Identify your nickname. 21:31:37 fax: What? 21:31:41 ...How? 21:31:48 nickserv 21:31:58 ...How? 21:32:09 Just Fucking Google It 21:32:15 ;( 21:32:26 ghost sucker: /msg nickserv help 21:32:33 don't google anything 21:32:38 google is for idiots and queers 21:33:23 real defensed proposition you got there 21:33:27 you included all that evidence and reasoning 21:34:44 * oerjan uses a screwdriver to fix alise_'s joke detector 21:35:28 alise 21:35:32 I have to tell you this 21:35:38 Coq is a proof assistant based on dependent type theory developed at 21:35:38 INRIA [CDT08]. By default, it uses constructive logic via the Curry-Howard 21:35:38 isomorphism. This isomorphism associates propositions with types and proofs of 21:35:41 propositions with programs of the associated type. This makes Coq a functional 21:35:45 programming language as well as a deduction system. The identification of a pro- 21:35:48 gramming language with a deduction system allows Coq to reason about programs 21:35:51 and allows Coq to use computation to prove theorems. 21:35:59 oerjan: well fax legit hates wikipedia, so... 21:38:11 alise_: so what you are saying is that fax incorporates poe's law all by himself? 21:39:50 :) 21:40:05 Oerjan: There seems to be some vandalism on the wiki. 21:40:24 to the esomobile! 21:40:46 alise -- are you really pissed off at me 21:41:04 No. 21:41:15 If I was, I would be FUCKING SHOUTING YOU RETARD <-- like that. 21:41:28 * oerjan uses the screwdriver to fix fax's joke detector as well. 21:41:28 "Allow Digsby to use idle CPU time for grid computing." Uh, no? 21:41:29 okay 21:41:47 oerjan ? 21:42:10 Manage all your IM, email and social 21:42:10 network accounts with one login 21:42:13 fax: assuming you are referring to the Lazy Evaluation article? 21:42:17 Suspicious. Do I have to give them my password? 21:42:20 that's clearly a joke 21:42:24 lazy evaluation?? no 21:42:35 wait waht 21:42:51 Me? 21:42:52 * oerjan beats himself for confusing fax and Phantom_Hoover ===\__/ 21:42:59 OH! 21:43:02 Why do I need a Digsby account? 21:43:03 We wanted to make it easier to use Digsby at multiple locations. Your Digsby account is used to synchronize preferences such as what skin to use and whether to show popups or not. When you sit down at another computer and log in to Digsby, the experience is completely seamless. 21:43:03 *OW! 21:43:06 So: They store my password. 21:43:16 reversibly 21:43:23 Obviously. 21:43:24 fax: mind you your joke detector probably needs adjustment too 21:43:36 :/ 21:43:42 I TAKE OFFENSE TO THIS 21:43:46 *Phantom_Hoover: assuming you are referring to the Lazy Evaluation article? 21:44:05 Sgeo: Digsby used to bundle adware, now by default (1) uses a browser plugin to get cashbacks when you shop online (installer setting) (2) uses your idle CPU for grid computing (3) changes your homepage to a Digsby-branded Google Search. It also stores your IM passwords. 21:44:09 Sgeo: I think I have said enough. 21:44:26 * alise_ gives his info anyway because dammit pidgin is /really/ badf 21:44:26 *bad 21:44:35 Yes. 21:45:02 alise_: maybe you could write your own? 21:45:13 hmm, even telnet is usable for IRC, but only if you don't do anything else 21:45:15 o_o 21:45:22 ais523: Write Windows software? Are you kidding? 21:45:37 alise_: I'd suggest not actually using the Windows API, that would be ridiculous 21:45:37 */me uses the screwdriver to fix Phantom_Hoover's joke detector as well. 21:45:48 but can't you write portable software, and then run it on Windows? 21:46:00 * fax wanted to talk about dependent types/constructive math with ehird but seems not to be happening 21:46:18 Yes, but I'd rather just get an internet connection that doesn't suck and use it to install Ubuntu. 21:46:19 Or buy a Mac. 21:46:57 fax: you can!! 21:47:01 I love talking about those things 21:47:14 Ooh, Digsby lets you sort contact by total size of logs. 21:47:16 That's interesting. 21:49:36 does anyone hear know what the common "now you have two problems" quip against regex means? 21:50:21 what it means?? 21:50:30 it means that writing regex is a bitch 21:50:35 and doesn't make things easier 21:50:53 ais523 is so eso-adjusted that he thinks regexes are easy :D 21:51:12 ais523: because regexps are brittle and often have scary performance 21:51:14 regex makes things easier if it's appropriate for the problem 21:51:22 ais523: The original quote is about sed, not regex. 21:51:26 It's a quip, it doesn't have to be actually true. 21:51:26 just, don't use it to parse XML or stupid things like that 21:51:36 alise_: recognised; Deewiant: ah, interesting 21:52:02 The UNIX-HATERS Handbook mentions it. 21:52:11 <3 unix haters handbook! 21:52:52 is there a windows-haters handbook? 21:53:26 Not to my knowledge. 21:53:33 also, http://esolangs.org/wiki/Lazy_evaluation, now that's /clever/ vandalism 21:53:45 much better than the typical "recursion" joke 21:54:01 Yes. 21:54:06 I'd leave that there 21:54:11 I'm planning to 21:54:15 Since there wasn't any content to start with 21:55:00 also fun: Google have made a mostly PCRE-compatible regular expression engine 21:55:48 expanding the acronym makes your head spin 21:56:05 lol 21:56:27 Firefox can't find the server at www.esolangs.org. :/ 21:56:31 Yes, it's the typical "fast but can't do everything" implementation using a Thompson NFA 21:56:39 ais523: ... why? 21:56:48 http://esoteric.voxelperfect.net/wiki/Lazy_evaluation 21:56:48 Gregor: better worst-case performance 21:57:08 so they can let people write arbitrary regexen and evaluate them without worrying about someone sending them an algorithmic complexity bomb 21:57:10 Except that worst-case performance of PCRE is almost a non-issue, the worst case never comes up ... 21:57:14 Ahhh 21:57:17 Arbitrary regex 21:57:18 Most properly-maintained things use the slow algos 21:57:23 User-created malicious regex. 21:57:24 Gotcha. 21:59:01 yes 21:59:05 Russ Cox wrote it 21:59:10 Only now do I get the lazy evaluation page. 21:59:11 the same author of the famous article about it 21:59:19 (and the author of Google Code Search which uses it) 22:02:41 Russ Cox??? 22:05:46 yes 22:06:05 alise_ 22:06:06 PM me 22:07:33 fax: can't you PM alise? 22:07:40 no 22:07:45 she doesn't want to talk to me 22:08:15 there is something wrong with this reasoning... 22:08:19 Mayhaps that's because you mistook him for a woman :P 22:08:36 hey, I've been careful for ages to avoid pronouns for alise, it's more fun that way 22:08:51 well, third-person pronouns at least 22:08:54 Gregor: Actually, she is the correct pronoun. 22:08:59 imagine if "I" and "you" were gendered! 22:09:03 It in fact matches reality more than he. 22:09:06 Most people mistake me for a girl. 22:09:28 ounapfhounfakp 22:09:35 Hotels: "Miss (mother's surname because I'm never asked for mine)". Taxis: "[Blah blah destination] ladies?" 22:09:49 People, to my mother: "Blah blah blah your daughter" 22:09:52 So on, so forth. 22:09:58 fax: I'll talk if you say something to me. 22:09:58 Weird. 22:10:02 :( 22:10:39 -!- kar8nga has quit (Remote host closed the connection). 22:10:49 Phantom_Hoover: Long hair + ULTRA-SOFT PERSONALITY YO 22:11:00 + young so no GRATUITOUS BODILY HAIR AND ADAM'S APPLE = Female! 22:11:08 wait until you hit puberty :( 22:11:42 Hey, I have. It's just taking its sweet, sweet time :P 22:12:28 -!- Phantom_Hoover has quit (Quit: ChatZilla 0.9.86 [Firefox 3.5.8/20100214235838]). 22:16:38 -!- mano0o0 has left (?). 22:16:46 ;( 22:17:01 alise_: Your girliness was pretty conclusively proven by that one video, you know. 22:17:26 video ? 22:17:47 fax: I showed my female genitals! (not really) 22:17:51 gross 22:19:31 :| 22:20:27 |: 22:20:37 I wish someone would talk to me about deptypes 22:20:57 alise_: did you see my talk about Confloddle in the log? 22:21:36 deptypes are so depressing. it's in the name, really. 22:21:46 * Sgeo didn't see ais523's talk 22:21:49 -_-- 22:21:59 Sgeo: it's a new esolang I'm thinking about 22:22:09 tarpit, as usual; I like tarpits that work differently from other tarpits 22:22:16 fax: So SAY SOMETHING! 22:22:19 tits 22:22:47 the only data type is the list (also function literals, but functions can't be manipulated in any way, just run, and there are no closures) 22:22:55 fax: Okay, how about this: Make a paraconsistent deptyped language. 22:23:05 and there are only two operators/commands, cons and foldl 22:23:11 I don't know what paraconsistent it but it sounds stupid 22:23:21 cunning tarpal syndrome 22:23:23 I'd explain but I've forgotten how to spell a word 22:23:25 And google isn't loading 22:23:26 sec 22:23:40 That is, p and ~p are allowed to coexist (dialetheia). You could do this by weakening _|_ -> forall a, a. 22:23:45 I think this leads to a TC lang with 5 characters re<>: without cheating (the same way that BF is 8 ,.<>+-[] without cheating, although of course BF can be cut down) 22:24:32 ais523: Nested folding on infinite lists seems trivially TC to me. 22:24:37 ais523: idea -- eliminate > 22:24:40 < lasts til end of program? 22:24:46 no, <> delimit a function 22:24:52 No <> is foldr 22:24:57 <> is foldl 22:25:00 er right 22:25:02 and what's inside them is the function you fold on 22:25:04 With infinite lists maybe this is acceptable, just having < last until EOF 22:25:09 Try it. 22:25:12 also, there's only one infinite list 22:25:30 necessary because you can't return an infinite list in finite time 22:25:49 < until EOF isn't obviously sub-TC, though 22:26:23 fax: http://en.wikipedia.org/wiki/Paraconsistent_logic 22:26:23 go for it 22:26:31 ais523: Exactly. 22:26:38 Wait, how do you combine r and e? 22:26:44 oh, is re cons r e? 22:26:52 no, it's reverse-polish 22:26:55 re is a syntax error 22:26:59 re: is cons r e 22:27:09 oh, I didn't see : 22:27:35 and is foldl `cons` [] 22:27:37 in other words, list reverse 22:27:41 e yep 22:27:48 yep again 22:27:51 "so you can get the first element of a list with " 22:28:08 Can this be written without >? 22:28:14 not obviously 22:28:17 Perhaps by accumulating something into the result then folding on that. 22:28:58 fax: So you want me to talk, then you dismiss and ignore me? 22:29:03 hi 22:29:06 I think you have to grab the results of a calculation at the start of the next iteration of the main loop 22:29:10 I didn't want to interrupt ais 22:29:19 we can interleave :) 22:29:22 or use /msg 22:29:24 fax: this is IRC, if you can't have two conversations at the same time you aren't concentrating enough 22:29:34 ais523: ooh, nice 22:29:39 but it has to be part of the main fold 22:29:45 yes 22:29:57 if we're having trouble just expressing first element of a list, this is either sub-tc or brilliantly TC 22:30:02 and you have Confloddle's general issue with initialising 22:30:23 the real problem here, is that insisting on using < but not > means that you can't get the return value from <> immediately 22:30:30 you only get it in r on the next iteration of the loop 22:30:39 -!- Phantom_Hoover has joined. 22:30:47 fax: http://en.wikipedia.org/wiki/Paraconsistent_logic#Relation_to_other_logics dual-intuitionistic logic may be a good place to steal things from 22:30:52 but it has to be a proper language not just a logic 22:30:56 okay 22:31:04 ais523: so basically we need 22:31:20 if we're done then hmm, for sake of argument, say we have a unary operator o that outputs a list to stdout, so we have something concrete to aim for, and likewise a nullary i that grabs a list from input 22:31:37 can we input a list and output its first element? 22:31:49 -!- Phantom_Hoover has quit (Client Quit). 22:32:35 hmm, I can't think of an obvious way, but that doesn't mean there isn't one 22:32:47 i what does this produce? 22:33:10 what list to we operate on by default again? 22:33:17 {{},{},{},...? 22:33:18 an infinite list of null lists 22:33:20 yep 22:33:33 so e in the main loop is useless as it's always null 22:33:40 I was thinking about maybe using it for input, but am not sure 22:33:44 input-only would be... weird 22:34:08 (leaving the main-loop r as a null list would be an obvious way to end a program, btw, because it provably goes into an infinite loop if you do that) 22:34:41 so i replaces the main list with the input? 22:34:46 I think that's wrong, it should cons it on 22:34:49 so {thelist,{},{},{},... 22:34:58 that way we could use the following lists as storage, somehow 22:35:01 by folding into them 22:35:25 r is the only storage you get in the main iteration, but it's enough 22:35:27 you can cons onto it 22:35:33 the general rule is that r is storage, e is input 22:35:41 for the inside <>, so why not for the main loop too? 22:35:58 ? 22:35:58 so what does Xr: do 22:36:10 just that 22:36:10 what list does it result in, using X as a var 22:36:29 [X | r] (prolog syntax) 22:36:41 what is r 22:36:50 r is the result of the last iteration of the current <> 22:36:53 ffff 22:36:55 just this program 22:36:56 on its own 22:36:56 Xr: 22:37:01 what result does it yield? 22:37:25 well, the main loop doesn't leave a result at all, but the value of r on each iteration goes [X] [X X] [X X X] and so on 22:37:51 so if you can imagine you're using Proud or some other uncomputable lang to implement this, the return value is an infinite list of Xs 22:37:56 but in a TC system, you never get that far 22:38:41 oh, you could 22:38:46 consider haskell 22:38:49 well, you could optimise that case 22:38:51 fix (1:) = [1,1,1,1,1,1,... 22:39:01 hmm, ooh, lazy evaluation? 22:39:02 ais523: ok, so r is {}? 22:39:09 at the start 22:39:12 r is initially a null list, yes 22:39:14 for any <> 22:39:17 so the whole program is a fold, right 22:39:18 so 22:39:19 er: 22:39:25 what result does that yield 22:39:29 e and r are both {} 22:39:31 so it should be {{}} 22:39:37 so you should get {{{}}, {{}}, ... 22:39:38 right/ 22:39:38 no, the entire program's implicitly in a <> 22:39:41 *right? 22:39:47 oh, good point 22:39:49 so you get... 22:39:54 outside <> e and r have no meaning, but you can't be outside a <> 22:39:55 { {{}, {}, {}, {}, ...} } 22:39:56 I think 22:40:03 no, because the return value is the final value of r 22:40:20 there isn't a "final" one, but if there was, it would be [ [] [] [] [] [] ... ] 22:42:12 so erm 22:42:15 so er: is nop 22:42:24 ais523: but do you see, that the main foldl, 22:42:29 means that you can do 22:42:30 x and get a nested fold? 22:42:36 it's > 22:42:38 yes, I see that 22:42:44 I bet we can use the main fold as storage for inner ones 22:42:48 hmm... cons ought to be prefix 22:42:48 in fact, that's obviously the only way to do practical non-> programs 22:42:51 and so do I 22:42:52 so we can do :xy<... 22:42:56 erm 22:42:57 :x<... 22:43:03 I agree that prefix is much better than postfix in non-> programs 22:43:10 postfix would be better for non-< programs 22:43:16 also, just make it foldr and I think you can do laziness trivially 22:43:20 and hey, a small syntax change doesn't matter if you're trying to tarpit something more 22:43:28 also, foldr is really laziness-hostile 22:43:34 because it starts with the last element of a list 22:43:40 and to determine that, you have to force it 22:44:09 -!- augur has quit (Ping timeout: 265 seconds). 22:44:10 OTOH, foldl doesn't work too well either, because you have to force it to determine the final value of r 22:45:31 fax: http://projecteuclid.org/DPubS/Repository/1.0/Disseminate?view=body&id=pdfview_1&handle=euclid.ndjfl/1039886520 22:45:39 ais523: that is not what foldr is... 22:45:58 oh, I see 22:46:05 foldr f x [e1,e2,e3,...] = f e1 (f e2 (f e3 x)) 22:46:09 it works on infinite lists 22:46:13 unlike foldl 22:46:17 a lazy foldr, to determine the final r, you determine the final e and the penultimate r 22:46:22 and the second can be left lazy 22:46:26 consider foldr (:) [] [1..] 22:46:31 -> (:) 1 ((:) 1 ... 22:46:36 -> [1,1,1,...] 22:46:39 yep, I get it now 22:46:58 is cons and foldr TC, though? 22:47:02 -!- Phantom_Hoover has joined. 22:47:14 how do you, say, get the last element of a list? or the second? 22:47:19 getting the second seems easier 22:47:48 -!- Phantom_Hoover has left (?). 22:47:49 Prelude> take 10 $ foldr (\n xs -> n : map succ xs) [] [1..] 22:47:50 [1,3,5,7,9,11,13,15,17,19] 22:47:57 ais523: btw foldr = foldl, they're implementable in terms of each other (lazily) 22:48:05 also, last element of a list with foldr... 22:48:15 not purely each other, surely, you need to mess with at least some other primitives? 22:48:22 and if there's something confloddle is short of, it's primitives 22:48:41 first is 22:48:44 ais523: nope 22:48:45 well 22:48:47 with cons and stuff 22:48:49 anyway 22:48:51 first elem is 22:48:56 the "stuff" is the problem 22:49:01 first is , anyway, with foldr 22:49:05 hmm... let's make it >e< 22:49:06 foldr' (\x _ -> x) [1,2,3] 22:49:10 *foldr1 22:49:12 different notation so it's clear that we're doing something different 22:49:13 (not that that exists, but) 22:49:17 wait yes it does 22:49:23 although it's a -> a -> a ofc 22:49:26 which is upsettingly restricting 22:49:38 but that doesn't concern you since yours is dynamically typed 22:49:38 foldr1 does exist in Haskell 22:49:39 but 22:49:46 don't you want an initial value? 22:49:56 confloddle's is (foldl []) though 22:50:02 last element is 22:50:05 foldr1 (\x y -> y) 22:50:11 (isn't that easy?) 22:50:19 alise_, did I mention that I'm considering making a Scheme? 22:50:20 that's cheating 22:50:24 no it is not 22:50:25 foldr1 special-cases the last eleemnt 22:50:30 ???? 22:50:35 oh you are right 22:51:19 btw reverse is 22:51:24 foldr (\x y -> y ++ [x]) 22:51:38 you can do head on that 22:51:53 sp 22:51:53 so 22:52:07 foldr [] (\x _ -> x) . foldr [] (\x y -> y ++ [x]) 22:52:26 that fails to type but whatever :) 22:52:30 the [] should be after 22:52:57 Prelude> (foldr (\x _ -> x) [] . foldr (\x y -> y ++ [x]) []) [[1,2],[3,4]] 22:52:57 [3,4] 22:53:28 I agree with that definition, but ++ looks hard to do in a foldr-version of confloddle (conflodder?) 23:05:10 I did ++ 23:05:13 folr (\xs ys -> foldr (:) ys xs) [] 23:05:15 *foldr 23:05:40 I don't see how that works 23:05:45 how would you write that in conflodder? assuming > exists 23:05:47 because the whole thing seems to only take one argument 23:05:56 [list1,list2] 23:06:12 i.e. list1list2[]:: 23:06:26 and it's hard to do easily, because there's no way to have a second arg to foldr of anything but [] 23:06:44 in confloddle you can get around that by putting every element into a singleton list, and messing around with cons and last 23:06:47 fax: try and make a logic-computation isomorphism for http://projecteuclid.org/DPubS/Repository/1.0/Disseminate?view=body&id=pdfview_1&handle=euclid.ndjfl/1039886520 23:06:53 so where statements in that are types; give them semantic values 23:07:03 ais523: So do that 23:08:06 as in, instead of [a b c] you have [[a] [b] [c]], then foldl x y z is the same as foldl (\r -> x (last (cons y r))) [] z 23:08:16 I think, I may have got the arguments the wrong way round 23:08:32 so do that :) 23:08:39 you have circularitiy problems trying that trick with foldr, though, as you'd have to implement last first 23:08:55 and the same trick doesn't work with first, unfortunately 23:09:11 fax: http://projecteuclid.org/DPubS/Repository/1.0/Disseminate?view=body&id=pdfview_1&handle=euclid.ndjfl/1039886520 23:09:11 erm 23:09:20 ugh 23:09:22 pdf doesn't allow copying 23:09:39 fax: basically there's a dual-intuitionistic set theory that has russell's paradox but is consistent 23:09:45 ais523: Hey, I implemented last. 23:09:55 thsat's cscrewad 23:09:58 (foldr (\x _ -> x) [] . foldr (\x y -> y ++ [x]) []) 23:10:06 fax: please learn to type :| 23:10:08 anyway do it! 23:10:10 yep, but that's implemented in terms of ++ 23:10:17 it will be fucking awesome to have computational dual-intuitionistic 23:10:23 ais523: ah :-D 23:10:25 What does it mean for something to have Russell's paradox but be consistent... 23:10:34 uorygl: it means it allows p & ~p 23:10:39 which is what paraconsistent logics do 23:10:42 Oh. 23:11:05 dual-intuitionistic logic is intuitionistic logic's goatee-sporting, paraconsistent twin 23:11:05 the major issue with foldr is finding just some way to do a foldr1 or a foldr with non-[] second arg or last or ++ or, well, anything 23:11:24 * alise_ defines fold f = foldr f [] to keep himself honest 23:11:30 I wonder if intuitionistic logic and paraconsistent logic are isomorphic somehow. 23:11:34 ais523: maybe you should have a better last thing than [] 23:11:41 uorygl: Paraconsistent logic is a class of logics. 23:11:49 I can't think of anything obvious; maybe I should go at it Wolfram-style and just generate loads of Conflodder programs to see if any do last 23:11:55 Intuitionistic logic's "opposite", dual-intuitionistic, is paraconsistent. 23:12:02 * uorygl nods. 23:13:06 So, does the Web have any proof databases that accept all and only valid proofs? 23:13:14 Using an automatic proof verifier, of course. 23:13:20 metamath 23:13:44 ais523: 23:13:45 -!- tombom has quit (Quit: Leaving). 23:13:45 Prelude> fold (\xs ys -> fold (\xs' ys' -> (xs' : ys') ++ ys) xs) [[1,2],[3,4]] 23:13:46 [1,2,3,4,3,4] 23:13:50 Can I simply submit a proof to Metamath and see it appear? 23:13:52 it's incorrect and depends on ++ but I think I'm honing in on a solution 23:13:55 I'll ask #haskell 23:13:56 uorygl: no. 23:13:59 fax wants that 23:14:30 I also want that. 23:14:43 If fax is a programmer, maybe we can collaborate on getting that. 23:15:30 fax hates programming 23:15:33 It's a project of mine though 23:15:37 Metastruct 23:16:13 It's a project of yours? Neat. 23:16:45 Yes. No work done yet, but... 23:16:48 What programming language are you using, and what proof system are you using? 23:16:52 My own, my own. 23:17:02 Same here. It's a project of mine with no work done. :P 23:17:13 #haskell seems a non-obvious place to ask for easolangs 23:17:15 Well. The proof system (dependent language) will be written in Haskell and so will be the website, but... 23:17:15 Except mine's called Kallipolis, written in Haskell, using Agda. 23:17:22 Why not write it in Agda? 23:17:34 Hmm. 23:17:41 uorygl: Agda doesn't have proof irrelevance 23:17:43 sucks to be you 23:17:50 Proof irrelevance? 23:17:51 alise_: somewhat offtopic: "I object to this attempt to initiate an Emergency. Per rule 31 of the previous ruleset, the change to the gamestate that prevents us from making arbitrary rule changes is cancelled retroactively, and we're still in the BGora Era." 23:17:57 does that even work? 23:18:12 uorygl: Google it. 23:18:32 ais523: wat. 23:18:38 hmm... idea 23:18:47 Google's not giving much useful. 23:19:59 23:18 alise_: can you write reverse with foldl, then do a left fold (which is a right fold on the original), and then reverse again if you produced a list? 23:19:59 23:18 as in can you flip the arguments to cons? 23:20:03 ais523: in confludder 23:20:18 So what's proof irrelevance? 23:20:25 alise_: that's how you do foldr in terms of foldl 23:20:29 uorygl: Didn't I tell you to google it? 23:20:32 rather than vice versa 23:20:45 alise_: yes, and I did Google it, and I came away with no impression of what it is. 23:22:07 Hmm, is it the equality of all proofs of a statement? 23:22:14 uorygl: Yes. 23:22:16 Agda doesn't even have equality testing. 23:22:19 Yes it does. 23:22:24 See the standard library. 23:22:41 Really? Huh. 23:22:50 data _===_ : {A:Set} -> (x:A) -> A -> Set where refl : x === x 23:23:04 Use Coq or something else with proof irrelevance. 23:23:13 At least until they add it. 23:24:01 Why is proof irrelevance so important? 23:24:34 because it simplifies a lot of stuff. 23:27:52 23:26 > let xs ++ ys = let f = foldl (flip (:)) in f (f [] xs) (f [] ys) in "abc " ++ "alise_" 23:27:53 23:26 "alise_ cba" 23:28:11 foldr fial 23:28:12 *fail 23:29:54 uorygl: for instance proof irrelevance makes equality nicer 23:31:47 Maybe you can write a spec for your stuff and I can write it. 23:32:03 Maybe I can do both because I hate collaborating :P 23:32:09 :P 23:33:48 someone paste me the unicode mathematical [[ ]] chars :( 23:33:53 MATHEMATICAL LEFT WHITE BRACKET or something 23:35:56 ⟦⟧ 23:36:07 took a while to find 23:36:14 thanks :P 23:36:18 and it's MATHEMATICAL LEFT WHITE SQUARE BRACKET, etc, you were almost right 23:43:03 We use G ? ?, to denote that if we reject all formulas of G, we have to reject the formula ?. 23:43:08 ufg 23:43:09 ugh 23:43:18 X -| Y 23:43:23 X 23:43:24 Y 23:43:46 fax: http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.106.2290&rep=rep1&type=pdf 23:44:01 !haskell let x ++ y = foldr (:) y x in [1,2,3] ++ [4,5,6] 23:44:15 [1,2,3,4,5,6] 23:45:09 oerjan: no 23:45:13 fold f = foldr f [] 23:45:27 grmbl 23:46:58 hm you cannot put _either_ x or y after that for any f and get x ++ y, because [] will be wrong 23:49:40 hm that [[1,2],[3,4]] thing... 23:49:53 which would be concat not ++, but... 23:50:10 oh wait 23:50:41 well i'm not sure it is possibl 23:50:43 *e 23:51:24 yeah 23:52:37 What postscript viewer should I use for Windows? 23:52:45 gsview is nice except that it sucks, horribly. 2010-03-14: 00:01:37 I guess Prop being a subset of Set is the nicest thing. 00:03:39 -!- adam_d has quit (Ping timeout: 256 seconds). 00:07:58 fax: how do you feel about duplicated names in the type and definition? 00:08:00 flippedMagma : (M : Magma) ? M.carrier ? M.carrier ? M.carrier 00:08:00 flippedMagma M a b = M.__ a b 00:08:06 those two Ms bug me, since I could say _ for the second one and it'd be bound anyway 00:11:57 fax: sheesh at least reply when you ask me to talk 00:12:50 http://pastie.org/868491.txt?key=ndyzpytcq6z99mpjfklr2w ;; two possible syntaxes for records 00:12:54 I prefer the latter 00:13:35 happy pi day! 00:16:21 bapfhj 00:16:44 gnörp schnibble 00:16:52 -!- jcp has quit (Read error: Connection reset by peer). 00:17:57 -!- jcp has joined. 00:19:28 -!- bsmntbombdood_ has joined. 00:20:35 -!- bsmntbombdood has quit (Ping timeout: 245 seconds). 00:20:49 oerjan: Happy 20100314Z. 00:21:05 Z? 00:21:33 "Zulu". Notes the time zone as being UTC. 00:22:19 wright 00:33:43 fax: http://pastie.org/868510.txt?key=agfujvebkzuoixl3ljiiw how would you write this with proof irrelevance? 00:33:48 specifically >=>< and <=>> 00:34:21 Sidenote, I guess I should have there be only one proposition x > y === y < x 00:34:43 Why is salt and vinegar such a delicious potato chip flavor? 00:34:47 alise I am so fed up I can't do anything 00:35:06 pikhq: homeopathic alchemy 00:35:30 oerjan: Hmm. Maybe. 00:35:58 ;( 00:36:07 fax: why 00:36:16 pikhq: because it tastes nothing like salt or vinegar 00:36:17 I can't handle people 00:36:30 fax: bah 00:36:33 so read the code instead :) 00:36:52 alise_: Oh, it definitely tastes *of* vinegar. Though the salt and the vinegar combine to produce a distinct, delicious flavor. 00:37:44 I hate vinegar but I like salt & vinegar crisps. 00:37:44 By the salt and vinegar combined, I am, captain planet! 00:38:13 Deliciousness. 00:38:48 Captain Planet: an allegory about the Singularity. 00:40:52 fax: will you listen to suggestions for your algebraic thing 00:41:05 hi 00:41:14 pm me but im a moody bitch 01:04:22 "The axiom that equality of real numbers in Coq is decidable is strong enough to prove the decidability of all arithmetic statements." 01:04:24 ! 01:05:28 :D 01:07:53 constructivist reals are so much better grumble. 01:16:19 http://1.2.3.11/bmi/arxiv.org/html/cs/0504039v1/c8.png i wanna get texmacs working with maxima 01:16:25 er http://arxiv.org/PS_cache/cs/html/0504/0504039v1/c8.png 01:16:31 so pretty 01:19:10 if you are on gnu/linux it's easy 01:19:33 i'm on windows unfortunately :( 01:32:13 -!- ais523 has quit (Remote host closed the connection). 01:32:59 -!- augur has joined. 01:33:31 SUP BITCHES 01:34:22 INF ANTS 01:35:07 -!- Oranjer has joined. 01:35:15 :O 01:35:22 what! 01:36:35 LIM ERICKS 01:38:20 oh 01:38:22 cool 01:38:29 are we inventing new poem forms 01:39:12 the form is a little limited 01:47:19 Ok, my computer is being a bitch. I wonder if it's Digsby's fault 01:47:51 76360k 01:48:00 What does it need all that memory for? :( 01:54:15 fax: have you noticed all CASs suck 01:54:15 -!- adu has joined. 01:54:25 -!- BeholdMyGlory has joined. 01:57:20 -!- augur has quit (Ping timeout: 240 seconds). 01:57:45 ''=~('('.'?'.'{'.('`'|'%').('['^'-').('`'|'!').('`'|',').'"'.('`'^'%').('{'^'"').('`'^'%').('{'^'[').('`'^'$').('{'^')').('`'^'/').('{'^'+').('{'^'(').'"'.'}'.')') 01:59:21 alise haen't really tried them out much 01:59:24 I assume that is true 02:05:33 -!- MizardX has quit (Ping timeout: 240 seconds). 02:10:39 fax: mostly because they're not powerful enough to do proving 02:12:42 * pikhq has spent the past hour writing. Wrist hurts. :( 02:13:15 alise: if you assume they give correct answers you can prove stuff with them :p 02:13:26 but I think there's lots of times they don't 02:14:53 Handwriting is a *painful* archaicism. 02:19:44 fax: no i mean like 02:19:47 not powerful enough to be proof systems 02:21:35 I'm not sure about that 02:23:46 there are a lot of things you can prove by directly computing them 02:24:06 "... infact, I've shown that simple programs can yeld complex results" 02:26:33 -!- coppro has quit (Quit: Reconnecting…). 02:26:51 -!- coppro has joined. 02:27:24 more on this later 02:28:30 * oerjan swats fax for quoting wolfram, especially in the context of what counts as proof -----### 02:28:49 what 02:29:07 wolfram = proof ? 02:29:09 well, that _sounded_ like a wolfram quote 02:30:42 that's silly, if you stick to symbolic stuff they will give correct answers 02:30:59 what do you mean like 02:31:10 "the result of this program" = the result of this program 02:31:27 if I have to prove that two huge polynomials are equal, I can do it with a CAS 02:31:35 ain't pretty, but it's valid 02:32:10 comex: yes, but there is no unifying reason to believe all the methods in a CAS are bug-free 02:32:19 since it has no proof system 02:32:38 oerjan: do you ever use a calculator when doing arithmetic as part of a proof? 02:33:16 by the way 02:33:29 CAS tend to assume some (very likely to be correct) conjectures 02:33:45 but you never really know if the computation you have done has made use of it... 02:34:03 like what? 02:34:29 algebraic indenpences of various trancendental expressions 02:36:12 -!- Oranjer has left (?). 02:36:38 -!- fax has quit (Quit: Lost terminal). 02:40:01 comex: well for back-of-the-envelope stuff... i've even used wolfram alpha. 02:40:20 my published papers didn't use much arithmetic to speak of, that i can recall 02:42:59 not that it's comparable to what alise_ wants anyhow... i certainly didn't enter any of it into a proof verifier. 02:46:06 -!- alise_ has quit (Ping timeout: 252 seconds). 02:48:58 -!- oerjan has quit (Quit: Good night). 02:52:33 AAAGH. TEXAS BOARD OF EDUCATION. THE STUPID. IT BURNS. 02:52:45 "The board removed the word “capitalism” from [state] standards, mandating that the term for that economic system be called “free enterprise” throughout the standards. Board members such as Terri Leo and Ken Mercer charged that “capitalism” is a negative term used by “liberal professors in academia.”" 03:01:27 pikhq: but it's the truth? 03:01:31 I read it on Conservapedia! 03:02:25 -!- Oranjer has joined. 03:22:38 -!- bsmntbombdood_ has quit (Ping timeout: 246 seconds). 03:24:06 -!- oklopol has joined. 03:27:13 -!- nooga has joined. 03:27:16 helloh 03:27:25 helloh 03:27:41 holleh 03:28:22 don't you people sleep? 03:28:58 no 03:28:59 nevar 03:29:52 well it's only 5:30 here 03:29:53 Sleep is for the weak. 03:30:03 4:30 here 03:31:12 oklopol: finland? 03:32:23 http://sibeli.us/ ! 03:32:26 Go watch Endless Eight 03:32:37 or ... africa, RPA, greece and some small countries that i don't even know their names 03:32:48 Sgeo: 見たくない。 03:33:01 * Sgeo can't read Japanese 03:33:02 nooga: Only 21:32 here. 03:33:07 finland 03:33:10 Sgeo: Don't wanna. 03:33:20 lol 03:33:46 Anyone not know what Endless Eight is? I dare you to watch 03:33:49 http://www.theonion.com/content/news/racial_slur_development_not 03:33:58 Also, you should totally learn Japanese. Cram a couple thousand kanji in a month or two. :P 03:35:16 http://www.youtube.com/watch?v=ULY8qox-_qk Worth the anguish it caused non-me fans. 03:35:31 At least to me, it's worth that 03:35:45 "Hate-filled bigots marched Monday to demand insults for people of all skin tones, regardless of race or nationality." 03:37:00 -!- bsmntbombdood_ has joined. 03:37:25 blargh 03:37:33 japanese romances 03:37:54 nooga, do you know anything about Suzumiya Haruhi(sp?) 03:39:25 Sgeo: The correct spelling is 涼宮ハルヒ 03:39:30 The concept of "Haruhi Suzumiya", if you didn't know, is that the titular character, an eccentric teenager, unknowingly has godlike powers to alter the universe according to her desires. 03:39:36 sounds awesome 03:39:44 no, really 03:39:50 It is 03:40:06 Except for 5 of 8 episodes of Endless Eight 03:40:31 And that's less for entertainment, and more to make a poiint 03:40:35 *point 03:40:49 :3 03:41:04 Sorry if that was too spoilery 03:43:00 nah 03:43:22 i'm more interested in revealing the truth about G-man from Half-Life series 03:46:28 -!- kwertii has joined. 03:53:01 "It's too bad Endless is over XD" 03:53:08 Comment on http://www.youtube.com/watch?v=pz2NtNuGKjE 03:59:45 Gregor: The correct spelling is 涼宮ハルヒの憂鬱 04:00:09 pikhq: I copied my spelling straight off Wikipedia >_< 04:00:46 Gregor: 涼宮ハルヒ is just the name of a character. :P 04:00:54 Well. And the book series. 04:20:32 -!- gm|lap has joined. 04:21:49 -!- Wareya has quit (Ping timeout: 264 seconds). 04:56:37 -!- nooga has quit (Read error: Connection reset by peer). 05:09:01 * Sgeo switches back to Pidgin 05:09:52 -!- mibygl has joined. 05:10:29 Time to redesign computing from the ground up! 05:10:45 -!- gm|lap has quit (Ping timeout: 260 seconds). 05:11:09 Maybe I should use Miranda IM 05:16:59 You know, redesigning computing from the ground up actually sounds kind of difficult. 05:17:10 * mibygl shrugs. 05:19:25 So, I imagine an object-oriented Internet. 05:19:48 There are a couple of different domains, and crossing each is going to be done differently. 05:20:13 There's the application domain, doing stuff within a single application; that's going to be very simple and have no security restrictions. 05:20:36 There's the machine domain, doing stuff on a single machine; that's going to be a bit more complex and there are going to be lots of security restrictions. 05:20:59 And there's the Internet domain, doing stuff across the Internet; that's going to be even more complex and there are going to be even more security restrictions. 05:21:59 -!- puzzlet has quit (Quit: leaving). 05:22:10 -!- adu has quit (Quit: adu). 05:35:04 mibygl: channelling Scott McNealy circa 1997? 05:35:26 Perhaps. 05:35:47 "the network *IS* the computer! and I woulda gotten away with it, too, if it wasn't for you pesky kids.." 05:36:12 Files, one of Unix's fundamental units of organization, can be greatly done away with; they can be replaced with some abstract object thingy. 05:36:23 And this abstract object thingy would essentially be a file. :P 05:38:06 It wouldn't necessarily have exactly one location in the filesystem, though; it could have multiple, or none at all. In the latter case, it would be garbage collected as soon as there were no surviving pointers to it. 05:40:04 mibygl: have you seen Eros OS? no distinction between long and short term storage 05:40:53 I have not. 05:41:02 sounds like what you're describing 05:41:09 program memory just magically persists 05:41:16 The Extremely Reliable Operating System? 05:41:38 yep, that's the one 05:42:04 ahh, looks like it forked in 2005 to Coyotos and CapROS. shows how much I've been keeping up with these things. 05:52:17 -!- coppro has quit (Remote host closed the connection). 05:53:13 -!- coppro has joined. 05:57:10 -!- Oranjer has left (?). 06:00:16 mibygl: So. Smalltalk. 06:00:28 Also, filesystem? 06:00:29 Bah. 06:00:32 Smalltalk, except it's the entire Internet! 06:00:40 So. Smalltalk. 06:00:43 Yeah, I imagine it would look a lot like Smalltalk. 06:00:56 -!- bsmntbombdood_ has changed nick to bsmntbombdood. 06:01:04 Tell me what a trans-Internet pointer looks like in Smalltalk. :P 06:01:21 Actually, if Smalltalk already supports that... 06:01:26 ...then that is fucking awesome. 06:01:46 I'm pretty sure Project Croquet stuck that into Smalltalk. 06:02:22 -!- bsmntbombdood has quit (Read error: Connection reset by peer). 06:02:46 -!- bsmntbombdood has joined. 06:04:59 The Croquet Project? 06:05:50 Erm. That. 06:09:22 The Croquet project is an outstanding display of how when you layer bad ideas on other bad ideas, nobody cares. 06:09:39 Croquet, the game, on the other hand, is awesome. 06:13:01 * pikhq sees your croquet and raises you Brokkian Ultra-Cricket 06:15:45 ... 06:16:06 ... And yes I know croquet is a real game. 06:16:10 And Ultra-Cricket is not. 06:16:24 I can't imagine that the "ultra" version of a game so complicated that the human brain is only capable of understanding either it or all other games, is a good idea. 06:17:10 Ultra-Cricket once had its rules bound into a single volume. It became a black hole. 06:17:59 Bravo, sir. 06:18:17 Not my joke. Is Douglas Adams. 06:18:26 Aha, didn't know. 06:18:27 (read Hitchhiker's Guide. It is imperative.) 06:18:39 I have, but a long long time ago, in a galaxy not to far from here. 06:18:41 This galaxy, in fact. 06:18:44 Ah. 06:19:44 *too far, of course >_> 06:35:35 What's wrong with the Croquet Project? 06:36:19 Some interesting ideas composed by people without a clue how to do a usable UI. 06:36:58 Oh, and the entire project is mostly a UI design project. 06:37:28 * Sgeo wants OpenCobalt to succeed 07:00:41 Looking at Smalltalk, I don't think I care for it. 07:01:48 Maybe tomorrow I'll come up with a language that's a cross between Smalltalk and Haskell. 07:06:06 -!- mibygl has quit (Ping timeout: 252 seconds). 07:56:15 -!- FireFly has joined. 07:56:38 -!- FireFly has quit (Read error: Connection reset by peer). 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:08:20 -!- jcp has quit (Quit: I will do anything (almost) for a new router.). 08:25:50 -!- kar8nga has joined. 08:34:11 -!- Gracenotes has joined. 08:53:03 -!- BeholdMyGlory has quit (Remote host closed the connection). 08:58:38 -!- kwertii has quit (Quit: kwertii). 09:02:03 -!- tombom has joined. 09:11:48 -!- augur has joined. 11:42:12 -!- hiato has joined. 12:09:35 -!- adam_d has joined. 12:18:07 -!- MigoMipo has joined. 12:18:21 -!- oerjan has joined. 12:21:06 -!- MizardX has joined. 12:26:10 -!- cheater2 has quit (Ping timeout: 276 seconds). 12:29:44 -!- adam_d has quit (Ping timeout: 265 seconds). 12:31:56 http://www.theonion.com/content/news/racial_slur_development_not <-- :D 12:32:07 also, http://www.theonion.com/content/news/man_on_internet_almost_falls_into 12:44:47 -!- cheater2 has joined. 13:00:03 -!- BeholdMyGlory has joined. 13:19:41 -!- FireFly has joined. 13:45:45 -!- MizardX- has joined. 13:48:33 -!- MizardX has quit (Ping timeout: 260 seconds). 13:48:43 -!- MizardX- has changed nick to MizardX. 13:56:54 -!- oerjan has quit (Quit: leaving). 13:57:31 -!- hiato has quit (Quit: underflow). 13:59:17 -!- olsner_ has joined. 14:19:32 -!- BeholdMyGlory has quit (Read error: Connection reset by peer). 14:33:24 -!- olsner_ has quit (Quit: olsner_). 14:40:53 -!- fax has joined. 14:41:59 -!- BeholdMyGlory_ has joined. 14:43:40 -!- BeholdMyGlory_ has changed nick to BeholdMyGlory. 14:55:25 -!- Asztal has joined. 15:11:42 -!- FireFly has quit (Quit: Leaving). 15:12:08 -!- FireFly has joined. 15:18:28 -!- adam_d has joined. 15:23:30 -!- FireFly has quit (Read error: Operation timed out). 15:24:28 -!- puzzlet has joined. 15:38:03 -!- alise has joined. 15:38:28 Windows 7 is actually not all that horribterrible. 15:40:39 Though I do wish that Toshiba didn't bundle it with crapware like McAfee. 15:41:44 -!- FireFly has joined. 15:42:22 fax: wolfram's idea of a proof system: http://www.wolfram.com/products/mathematica/newin6/content/EquationalTheoremProving/ 15:42:26 Note: Does not include proofs. 15:43:13 http://library.wolfram.com/infocenter/Articles/3885/ apparently someone was crazy enough to build a theorem prover on mathematics 15:43:14 *mathematica 15:43:55 hi alise!! 15:45:58 hi there 15:46:05 last day i'll be on til friday :( 15:46:11 -!- FireFly has quit (Ping timeout: 246 seconds). 15:47:57 alise: you don't know who Bruno Buchberger is?? 15:48:26 Buchbergers algorithm 15:53:49 i don't look at names :) 15:55:26 18:42:59 not that it's comparable to what alise_ wants anyhow... i certainly didn't enter any of it into a proof verifier. 15:55:26 Verifier? Why, oerjan, you /start/ with the prover, not /end/ with it! 15:55:30 Well, you end with it too. 15:55:59 fax: so I was inspired by the suckingness of all CASs to try and unify my OS and my language by adding elements of term rewriting to my language so that it can be used as part of a full-stack CAS 15:56:01 which is then the OS 15:57:08 I am also quite mad 15:59:21 21:09:01 * Sgeo switches back to Pidgin 15:59:36 I'm actually using Digsby because I don't value my IM passwords and Pidgin sucks way too badly on Windows :) 15:59:55 21:16:59 You know, redesigning computing from the ground up actually sounds kind of difficult. 15:59:55 There /is/ a reason it subsumes all my other projects... 16:00:30 21:36:12 Files, one of Unix's fundamental units of organization, can be greatly done away with; they can be replaced with some abstract object thingy. 16:00:30 Patented, dude. I patented it. 16:00:42 21:42:04 ahh, looks like it forked in 2005 to Coyotos and CapROS. shows how much I've been keeping up with these things. 16:00:42 and coyotos died 16:00:48 since the dude wen to work for microfuck 16:01:00 (Microfuck is totally the most realistic MS-mangling.) 16:01:39 22:16:24 I can't imagine that the "ultra" version of a game so complicated that the human brain is only capable of understanding either it or all other games, is a good idea. 16:01:39 <3 16:13:43 -!- nooga has joined. 16:23:20 .... 16:34:37 maxima is rubbish 16:39:52 Ugh, how do you tell LaTeX that yes, this multiple-character string /is/ a variable name? 16:40:55 -!- adam_d has quit (Ping timeout: 256 seconds). 17:00:15 -!- nooga has quit (Quit: Lost terminal). 17:08:26 -!- werdan7 has quit (Ping timeout: 615 seconds). 17:16:39 -!- werdan7 has joined. 17:20:36 OR := \p q. p (\x. p) q 17:20:54 ISFALSE := \x. OR x TRUE 17:21:03 ISTRUE := \x. x ISFALSE FALSE 17:21:10 Sometimes I forget just how pretty the lambda calculus is. 17:21:57 (Then ISBOOL := \x. OR (ISFALSE x) (ISTRUE x), of course.) 17:22:14 Isn't ISTRUE just id ... 17:22:30 Well... yes. 17:22:49 Gregor: I was trying to make "types" from scratch with just the lambda calculus. 17:22:55 Then ISBOOL would be the type ISBOOL. 17:23:00 Hey, ISFALSE/ISTRUE would also be types. 17:23:07 Gregor: but the issue is that it could be some /other/ function of two arguments. 17:23:34 ISBOOL := \x. OR (OR x TRUE) (x ISFALSE FALSE) 17:23:36 ISBOOL := \x. OR (OR x TRUE) x 17:23:39 ISBOOL := \x. OR (NOT x) x 17:23:43 Law of the excluded middle! 17:24:44 If you accept it then 17:24:49 ISBOOL := \x. TRUE 17:25:09 ISBOOL := \x f y. f y 17:25:12 ISBOOL := \x f. f 17:25:29 "Is this value a boolean?" "Identity function." 17:32:29 -!- coppro has quit (Ping timeout: 256 seconds). 17:40:21 -!- BeholdMyGlory has quit (Changing host). 17:40:21 -!- BeholdMyGlory has joined. 17:56:14 * alise writes a superstrict lambda-calculus evaluator in emacs 17:56:25 I wonder what relation this has to specialisation 17:57:16 POW 3 (given POW x y = y^x) will result in a lambda, which will be evaluated; this lambda will have all instances of x replaced with 3, resulting in applications involving 3. these will be reduced as far as possible 17:57:33 One wonders whether it's turing-complete, though, with all this strictness. 17:57:41 in emacs?? 17:58:14 -!- FireFly has joined. 17:58:45 Erm. 17:58:46 In C. 17:58:50 I did write it in Emacs, though. 17:59:30 Superstrict LC compilation would be the fastest a pure pinnacle of mathematical beauty would ever run on a machine made out of atoms, and bits. 17:59:45 * alise braces self; installs cygwin. 17:59:48 This will be painful. 18:00:01 Cygwin is /always/ painful. 18:00:06 But it beats using cmd.exe. 18:00:11 Or wait, I have powershell, which is okay. 18:00:14 Powershell + MinGW? 18:04:18 It's also related to symbolic evaluation 18:04:51 in that if it sees a variable it doesn't know it ignores it, and if you do f x where f is known but x is not it substitutes x in f 18:05:51 including for f (g x y) where f, g and y are known but x isn't; y is substituted for the appropriate place in g, resulting in an expanded g with the free variable x; and then this is substituted for the correct position in f 18:17:34 -!- augur has quit (Quit: Leaving...). 18:17:39 -!- augur has joined. 18:24:35 A random small power of two in J: */1+?24$2 18:24:45 Increase/decrease 24 to get smaller(on average)/bigger powers. 18:25:21 Read out: Multiply over 1 plus random in range 24 twos 18:25:37 Where ?n has n possibilities; i.e. ?1 is always 0, so ?2 is 0 or 1. 18:25:48 So ?2 2 is 0 0, 0 1, 1 0 or 1 1. 18:26:06 So ?2 2 is 0 0 0, 0 0 1, 0 1 0, 0 1 1, 1 0 0, 1 0 1, 1 1 0, or 1 1 1. (See a patern?) 18:26:25 So we get 24 of those, add 1 to them so we get e.g. 1 2 2 instead of 0 1 1. 18:26:31 Then we multiply them: 1*2*2 = 4. 18:28:38 pow2 := monad define 18:28:39 */1+?y$2 18:28:39 ) 18:28:54 Then (pow2 n) produces a value in the range 1 to 2^n, inclusive. 18:29:36 ??? 18:29:41 What? 18:30:09 Hmm, actually, it's in the range 1 to 2^(n-1). 18:30:12 fax: what's ??? ? 18:30:23 -!- jcp has joined. 18:31:15 -!- jcp1 has joined. 18:31:41 Haha, sweet: J's natural language facilities then mean that "pow2 (m,n)" produces n "pow2 m"s. 18:32:18 pow2 (n,i,j) produces an i x j 2d array of "pow2 n"s. 18:32:18 And so on, so forth. 18:32:41 You can write that shorter as "pow2 (n i j)" of course. Even shorter as "pow2 n i j". 18:33:01 And I didn't even write any code to do it :-) 18:33:06 fax: what confuses you? 18:33:32 yndpaf 18:33:38 -!- jcp1 has quit (Read error: Connection reset by peer). 18:33:38 my hands feel like they're goint to fall off 18:33:42 why 18:33:44 cold or hot? 18:33:50 neither 18:34:20 then what 18:34:42 -!- FireFly has quit (Remote host closed the connection). 18:34:50 haha (pow2 '') ('' is empty array) is 1 or 2 18:34:53 I love J 18:34:53 -!- jcp has quit (Read error: Connection reset by peer). 18:35:09 -!- FireFly has joined. 18:35:36 -!- jcp has joined. 18:50:00 Recursion in C: 18:50:01 LC *lcalloc(void) 18:50:02 { 18:50:02 return malloc(sizeof lcalloc()); 18:50:02 } 18:50:08 If only pikhq was here to see it. 18:53:30 Wow, Windows pops up a little "blah.exe has stopped working, trying to find a solution..." box if you dereference a null pointer 18:54:08 alise: Hmmmm, that doesn't actually recurse, does it? 18:55:01 Nope! 18:55:14 It's like the relatively common, and good practice, int *x = malloc(length * sizeof *x); 18:55:21 Well, I guess sizeof(*x) is more best-practicey. 18:55:28 It's good because it works even if you change the element type of x. 18:55:43 MY function is good simply because it's ridiculous. 18:56:05 Yeah, but it's /not/ recursion in C. It neither recurses at compile time nor runtime. 18:56:08 alise: Beautiful. 18:56:10 [Window Title] 18:56:19 superstrict.exe 18:56:19 [Main Instruction] 18:56:19 superstrict.exe has stopped working 18:56:19 [Content] 18:56:19 Windows is checking for a solution to the problem... 18:56:20 [Cancel] 18:56:20 Hey, I can Ctrl-C that fancy box. 18:56:21 Gregor: Which is why I called it "recursion in C". 18:56:31 pikhq: Wait what? You didn't tab-complete the first time I tried. 18:56:35 ... okidokie. 18:56:35 *Wait, what? 18:56:43 I woke up. 18:56:45 Gregor: It's silly. It is permissible for me to be silly. 18:56:58 pikhq: But... you didn't join. 18:57:00 IT IS NOT PERMISSIBLE 18:57:03 Unless mIRC won't tab-complete away clients... 18:57:09 alise: I've been here all this time. 18:57:29 I literally do not turn off this computer. Or the IRC client upon it. 18:58:43 Also: goddamned DST. 18:58:43 Yes, but mIRC didn't tab complete you before :P Maybe it wsa just me 19:00:20 *was 19:04:51 -!- kar8nga has quit (Remote host closed the connection). 19:09:32 fax: as soon as i figure out how to define adverbs I'll do your finite calculus in j 19:09:36 even though j has derivative already... 19:10:11 alise, that will be so cool!!! 19:10:14 make sure you show me it 19:11:27 -!- hiato has joined. 19:14:00 -!- MigoMipo has quit (Remote host closed the connection). 19:14:51 fax: well here's deriv 19:14:52 deriv =: adverb define 19:14:53 u (y+1) - u y 19:14:53 ) 19:15:03 id deriv 3 19:15:04 1 19:15:42 - deriv 0 1 2 3 4 5 19:15:42 _1 _3 _5 _7 _9 _11 19:16:01 fax: I can't do your proofs - J doesn't do that stuff 19:16:35 fax: but there's the deriv operator... 19:16:41 do finite integration now :-) 19:17:17 % deriv i. 10x 19:17:18 0 1 2r5 3r11 4r19 5r29 6r41 7r55 8r71 9r89 19:17:23 yeah it doesn't matter if you can encode proofs 19:17:24 (%x is 1/x) 19:17:28 just write correct code, that's as good 19:17:45 yeah I think that definition of deriv is the closest to flawless code you can get :P 19:18:15 fax: now write integration 19:18:28 alise, integration is quite difficult :) 19:18:33 inded it is 19:18:35 *indeed it is 19:18:37 I am not sure I am ready for that yet 19:18:46 * alise looks at your discrete definite integral - gulp 19:18:51 I need to have some theory of stirling numbers 19:18:52 higher-order functions are /not/ J's strong point 19:19:04 it has adverbs that's about it... and if you really want you can pass functions around, with difficulty 19:19:18 also it has three arguments 19:19:26 j doesn't really "do" >2 arguments, you have to use an array :) 19:19:59 (% deriv) deriv i. 7x 19:20:00 1 1 65r209 451r2011 1729r9649 4901r32621 11521r88801 19:20:02 oh the humanity! 19:21:42 fax: my derivative actually works on non-Z functions 19:21:44 though it's fucking pointless to do so... 19:21:57 why is it pointless? 19:22:05 well if you want anything like regular derivative that is 19:22:18 id deriv 19:22:19 +----------------------+ 19:22:19 id+-----------------+ 19:22:19 1:u (y+1) - u y 19:22:19 +-----------------+ 19:22:19 +----------------------+ 19:22:25 not as impressive as the output of symbolic differentiation :) 19:22:34 lol mirc converted real box drawing chars to ascii automatically 19:23:37 +/ deriv (1,2,3,4,5,6) 19:23:37 _99 19:24:27 fax: that's deriv on f : [int] -> [int] 19:24:28 well 19:24:44 more accurately [[...[int]...]] -> [[...int...]] (stripping off one level) 19:25:29 fax: if deriv wasn't an adverb I could just do deriv^:_1 19:25:33 VOILA, INTEGRATION 19:25:35 :p 19:25:59 heh 19:26:02 huh j also has limits 19:26:07 cute syntax ^:_ 19:26:08 i.e. 19:26:13 f^\infty(x) 19:29:18 fax: anyway if you have any functions that aren't too higher-order related to this i can define them 19:29:25 * alise tries plotting a derivative 19:31:50 plot sin steps 0 10 100 // just copying this for reference 19:31:53 -!- MizardX- has joined. 19:32:04 x=: steps 0 10 100 19:32:04 plot x;sin x 19:32:14 -- (9 of 23) Plot ------------------------------------------- 19:32:16 The above example could have been entered more simply as: 19:32:16 ) 19:32:16 plot (];sin) steps 0 10 100 19:32:30 * Sgeo was about to say something about there being more reals than functuibns, but that's only functions we can.. describe? write down? 19:32:52 The set of reals is smaller than the set of functions, because uncomputable reals do not exist. 19:33:00 Ah 19:33:09 If you take the meaningless view that they do "exist" - which unfortunately most mathematicians do - 19:33:15 then yes, the reals are more numerous than the computable functions. 19:33:45 But they cannot be described, they cannot be calculated; they do not have any existence more than a seemingly-meaningful but actually meaningless jumble of words that is labelled their "definition". 19:33:47 alise: http://en.wikipedia.org/wiki/Chaitin%27s_constant 19:33:52 -!- MizardX has quit (Ping timeout: 276 seconds). 19:33:56 Gregor: Does not exist. Look up "constructivism" 19:34:12 1 doesn't exist 19:34:22 -!- MizardX- has changed nick to MizardX. 19:34:44 I mean exist as in "has any meaningful properties relating to its value in an abstract universe". 19:34:45 I'd say something about constructivisim, but I think it's an argument against a strawman 19:35:14 Constructivism proved the four-colour theorem, bitch. 19:37:17 fax: lol my id deriv has values other than 1 i think 19:37:44 if you call it on a float 19:39:31 -!- kar8nga has joined. 19:40:24 fax: plot (];% deriv) steps 1 100 100 19:40:32 plots the derivative of % 19:40:34 works perfectly 19:41:11 show me :( 19:41:28 like what, a screenshot? 19:41:32 yeah 19:43:54 fax: uploading 19:44:45 fax: http://i.imgur.com/bg46u.png 19:45:06 that steps 1 100 19:45:10 *100 100 19:45:11 could just be steps 1 100 :P 19:45:17 it's steps start end lengthofresult 19:45:24 that's the derivative of a product? 19:45:44 oh no I see what it is 19:46:11 %x is 1%x 19:46:12 which is 19:46:14 1 19:46:14 - 19:46:14 x 19:47:10 fax: so % deriv x is almost but not quite %x... 19:47:12 % deriv 100 19:47:12 0.00990197 19:47:13 %100 19:47:13 0.01 19:47:15 Most things in school aren't required for a typical 9-5 job. 19:47:15 Lets cut out art, gym, health, and science. We can just teach basic arithmetic, reading, writing, with a few word processing programs, and we're good. 19:47:22 P.S. Everything seems elitist when you are a fucking moron. 19:47:27 % deriv 100x 19:47:27 100r10099 19:47:27 %100x 19:47:27 1r100 19:47:32 well using rationals /didn't/ help 19:47:39 :-D 19:47:50 -!- oerjan has joined. 19:48:21 fax: Hey, basic arithmetic is not really required. 19:48:37 07:55:26 18:42:59 not that it's comparable to what alise_ wants anyhow... i certainly didn't enter any of it into a proof verifier. 19:48:41 07:55:26 Verifier? Why, oerjan, you /start/ with the prover, not /end/ with it! 19:48:51 that would be a ridiculous way of doing _real_ mathematics 19:49:04 oerjan: you mean the discovery aspect? 19:49:08 yes 19:49:12 well yeah, the idea is 19:49:19 The only thing I could actually support cutting out from fax's list is art 19:50:09 use it to fuck about with stuff -> EUREKA -> try some cases -> write down some things -> prove them bit by bit -> repeat a few dozen times until you get something that works -> check nobody else's done it -> repeat even more -> use the literate programming system to write a paper with it -> publish in Communications of the AliseLang Theorists 19:50:15 oerjan: that good enough for you? :P 19:51:36 the problem is that the discovery aspect of mathematics happens in my _head_, long before anything is written down. 19:51:52 naturally 19:52:02 the fucking about with stuff is just aimless masturbation in hope of inspiration :P 19:54:16 basically i expect (but this is of course prejudice) that the straightjacket required to actually get _anything_ into a prover will ruin the working of intuition. 19:54:47 certainly but at some point you have something working and you need to write it down to publish 19:55:04 you're expected (at least in my fantasy utopia dreamworld) to be quite formal in your notation there 19:55:09 so why not write it into a computer instead? 19:55:34 anyway of course we haven't mitigated the straitjacket. yet 19:55:49 i suppose. i just don't consider that to be anywhere near the _start_ of things. :D 19:56:18 (see your quote above) 19:56:55 yes, well - for now the mind is the best way to think of stuff 19:57:08 but I think computers can help right at the point you decide to start testing things and mutating stuff into other stuff 19:57:27 and then after you dream up the Perfect Generalised Property - a (rather long) break back to the mind - when you start proving shit 19:58:37 admittedly i have never dreamt of, or proved, /anything/ nontrivial 19:58:54 heh 19:59:56 alise, prove that f(x,y) = (x^2+y^2+x+2xy+3y)/2 is a bijection from N^2 --> N 20:00:27 (N = {0,1,2,3,...}) 20:00:58 fax: in the grand scheme of things, that is also trivial 20:01:33 -!- wareya has joined. 20:01:50 There are no trivial mathematics, only trivial matehmaticians! 20:01:51 -!- wareya has changed nick to Wareya. 20:02:14 -!- Wareya has quit (Client Quit). 20:02:19 i expect it's the formula for an approach i've already seen, of counting minor diagonals in sequence 20:03:14 fax: prove for a,b,c in N+, n in N, n > 0, no valid choices can satisfy a^n + b^n = c^n 20:03:17 er 20:03:19 n > 2 20:03:44 :| 20:03:48 -!- wareya has joined. 20:03:56 -!- wareya has quit (Client Quit). 20:04:12 fax: that is equal to ((x+y)(x+y+1) + 2y)/2 20:04:32 or triang(x+y) + y 20:04:51 Q.E.D., practically 20:05:23 THIS IS THE PROBLEM WITH MATHEMATICS 20:05:33 "blah blah blah reduced form. Q.E.D." 20:05:46 oerjan fuck how did you possibly get that so fast 20:05:52 alise: the reduced form is "obviously" that counting minor diagonals thing 20:06:24 fax: he's a mathematician! :p 20:06:28 fax: i recognized x^2+y^2+2xy in there 20:06:36 very basic formula 20:07:03 and also i already know triang(n) = n(n+1)/2 20:07:31 -!- wareya has joined. 20:07:40 by the way it generalizes like C(a+b+c+2,3) + C(b+c+1,2) + C(c,1) I think 20:07:57 and since i already _knew_ the minor diagonal approach involves a triangle for the previous diagonals, i expected that to be there 20:07:57 http://www.ruzulu.com/find-name-origin/eliezer-yudkowsky 20:08:04 So /that's/ the origin of Yudkowsky's name. 20:08:25 hi 20:08:29 -!- wareya has changed nick to Wareya. 20:08:31 hi Wareya 20:09:00 what's up? 20:09:10 something math 20:09:13 k 20:09:23 i've not yet read the logs enough to know how this started 20:10:06 oerjan: but you started it... 20:10:08 well actually i may have started it 20:10:31 alise: i sort of thought you and fax already had a conversation about math mixed into this 20:12:42 fax: i assume that first term is counting "pyramids" 20:12:48 oerjan: just about J 20:12:50 and finite calculus 20:12:52 ok 20:13:31 so then you would want hyperpyramids next. but that is simple using finite calculus integration iirc 20:13:52 i guess that's how you found this? 20:14:59 oh my god 20:15:13 fax: hm? 20:15:19 finite calculus! 20:16:01 how are you applying integration here? 20:16:02 fax: C(x,n+1) is the integral of C(x,n) 20:16:09 oh my god!!!! 20:16:22 you mean you didn't know? :D 20:16:25 this is so awesome :D 20:16:38 oh man I have to proof this using my finite calculus library 20:19:00 hahaha 20:19:10 dammit fax you're giving actual evidence for oerjan's synchronicity 20:19:34 fax: you'll need to define integration first mwahaha 20:19:41 alise: sheesh that name origin size barfs on the first letter in my name 20:19:47 I did define integral! 20:19:54 And I even proved the Fundamental THeorem 20:20:11 although it still manages to conclude i'm almost certainly norwegian 20:20:45 it thinks i may be danish. i expect that is because it doesn't recognize my first name 20:22:18 * oerjan checks out alise's name 20:22:28 english did come up on top, barely 20:22:36 yes 20:22:47 fax: where did you define integral 20:22:57 alise: That site concludes that I am English. 20:23:04 oh you did. 20:28:40 what is oerjan's synchronicity? 20:29:26 oerjan believes in synchronicity 20:29:59 me too 20:30:00 what is it? 20:30:07 XD 20:30:21 `google synchronicity 20:30:33 fungot, synchronicity? 20:30:34 fax: maybe you shouldn't have mentioned your win by paradox in philosophy? bah, humbug :) don't have that 20:30:43 Synchronicity is the experience of two or more events that are apparently causally unrelated occurring together in a meaningful manner. ... \ [14]Description - [15]Examples - [16]Criticisms and possible ... 20:31:54 hmmmm 20:31:57 so if F is the integral of f 20:32:33 F = integral of f from 0 to n... 20:32:47 then F(x+1) > F(x) + f(y) 20:32:54 it may of course be easier to prove directly that C(x,n) is the derivative of C(x,n+1) 20:33:03 ugh I can't this right 20:33:15 the point is that we have T(x) + y 20:33:21 and T is the integral of \y.y 20:33:41 ?hm 20:35:52 F(x+1) = F(x) + f(x), isn't it? i guess there is an off-by-one choice of where you start things 20:36:42 ooh 20:36:46 that's right! 20:36:55 yes so we have to actually prove that f is positive 20:37:06 (but that's trivial) 20:37:45 um what are you trying to prove that requires positivity? 20:38:03 F is bijective 20:38:16 oh 20:38:25 um you mean injective? 20:38:51 -!- Oranjer has joined. 20:50:59 this is so nice 20:51:16 <3 finite calculus 20:51:21 -!- alise has quit. 21:07:11 -!- Oranjer has quit (Quit: Leaving.). 21:08:43 -!- hiato has quit (Quit: underflow). 21:15:33 -!- adam_d has joined. 21:21:18 -!- adam_d has quit (Ping timeout: 276 seconds). 21:29:07 !haskell take 50 . map head . foldr (scanl (+)) undefined $ 0:1:2:repeat 0 21:29:32 grmbl 21:29:52 `daskelab 21:29:53 No output. 21:30:06 !haskell main = print . take 50 . map head . foldr (scanl (+)) undefined $ 0:1:2:repeat 0 21:32:10 !haskell main = print . take 50 . map head . foldr (scanl (+)) undefined $ (0::Integer):1:2:repeat 0 21:34:01 oh 21:34:15 !haskell main = print . take 50 . foldr (scanl (+)) undefined $ 0:1:2:repeat 0 21:34:17 [0,1,4,9,16,25,36,49,64,81,100,121,144,169,196,225,256,289,324,361,400,441,484,529,576,625,676,729,784,841,900,961,1024,1089,1156,1225,1296,1369,1444,1521,1600,1681,1764,1849,1936,2025,2116,2209,2304,2401] 21:35:46 that looks square 21:35:50 it is 21:36:43 it's reconstructing x^2 from its iterated differences 21:36:53 (at 0) 21:38:40 Hmmmm 21:38:43 this is finite calculus 21:38:45 ? 21:38:55 !haskell comb m n = product [m, m-1 .. m-n+1] `div` product [1..n]; main = print . take 50 $ [comb n 1 ++ 2*comb n 2 | n <- [0..]] 21:38:58 yep 21:39:06 dammit another type error 21:39:09 oerjan are you just making this up or is it from something? 21:39:25 i'm recalling it 21:39:34 there was some playing around on #haskell 21:39:39 long ago 21:40:34 !haskell comb m n = product [m, m-1 .. m-n+1] `div` product [1..n]; main = print [comb n 1 ++ 2*comb n 2 | n <- [0..49]] 21:41:01 *facepalm* 21:41:05 !haskell comb m n = product [m, m-1 .. m-n+1] `div` product [1..n]; main = print [comb n 1 + 2*comb n 2 | n <- [0..49]] 21:41:08 [0,1,4,9,16,25,36,49,64,81,100,121,144,169,196,225,256,289,324,361,400,441,484,529,576,625,676,729,784,841,900,961,1024,1089,1156,1225,1296,1369,1444,1521,1600,1681,1764,1849,1936,2025,2116,2209,2304,2401] 21:41:32 there you go, so you can also use the combinator function for the same 21:41:52 hm 21:42:01 #haskell knows about finnite calculus??? 21:42:38 basically comb x n has all the iterated differences at 0 = 0 except then nth, which is 1 21:43:04 so given those for any other polynomial, you can just combine linearly 21:43:08 *the nth 21:43:17 fax: well some people there do... 21:43:57 except this rewriting with comb was not from there, just something i recalled from elsewhere 21:44:17 mm 21:44:25 but taking iterated differences and building them back up was done in #haskell once 21:45:05 -!- fungot has quit (Ping timeout: 260 seconds). 21:45:17 hey guys 21:47:35 !haskell comb m n = product [m, m-1 .. m-n+1] `div` product [1..n]; diff l = zipWith (-) (tail l) l; diffs = map head . takeWhile (not null) . iterate diff; main = print . take 50 . diffs $ [comb n 3 | n <- [0..]] 21:48:01 i cannot get a single one typed right on first try :( 21:48:16 !haskell comb m n = product [m, m-1 .. m-n+1] `div` product [1..n]; diff l = zipWith (-) (tail l) l; diffs = map head . takeWhile (not . null) . iterate diff; main = print . take 50 . diffs $ [comb n 3 | n <- [0..]] 21:48:18 [0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 21:48:36 why is that 1 there? 21:48:44 magic 21:48:46 fax! 21:48:49 hi augur! 21:49:00 -!- fizzie has quit (Remote host closed the connection). 21:49:06 hows it going faxies 21:49:13 im watching twin peaks 21:49:16 fax: because comb 0 3 = 0, comb 0 2 = 0, comb 0 1 = 0 but comb 0 0 = 1 21:49:26 twin peaks huh 21:49:27 isn't it comb 3 3 = 1? 21:49:30 oh 21:52:41 so fax, ive been thinking 21:52:49 !haskell comb m n = product [m, m-1 .. m-n+1] `div` product [1..n]; diff l = zipWith (-) (tail l) l; diffs = map head . takeWhile (not . null) . iterate diff; rebuild l = foldr (scanl (+)) undefined (l++repeat 0); main = print . take 50 . rebuild . diffs $ [0,1,4] 21:52:52 [0,1,4,9,16,25,36,49,64,81,100,121,144,169,196,225,256,289,324,361,400,441,484,529,576,625,676,729,784,841,900,961,1024,1089,1156,1225,1296,1369,1444,1521,1600,1681,1764,1849,1936,2025,2116,2209,2304,2401] 21:52:56 i think there's an interesting class of formal languages worth investigating 21:53:05 yes the linear time parsible ones? 21:53:14 indeed 21:53:16 but more importantly 21:53:24 fax: see you can use it to guess which polynomial you have from the first few terms 21:53:48 oerjan, wait it figures out a polynomial from a finte portion of the sequence? 21:53:52 the ones that are transparently representable in simple linear format 21:53:54 fax: yep 21:54:06 as long as you have more terms than the degree of the polynomial, it works 21:54:22 !haskell comb m n = product [m, m-1 .. m-n+1] `div` product [1..n]; diff l = zipWith (-) (tail l) l; diffs = map head . takeWhile (not . null) . iterate diff; rebuild l = foldr (scanl (+)) undefined (l++repeat 0); main = print . take 50 . rebuild . diffs $ 21:54:30 rebuild could also be written using comb, naturally 21:54:34 !haskell comb m n = product [m, m-1 .. m-n+1] `div` product [1..n]; diff l = zipWith (-) (tail l) l; diffs = map head . takeWhile (not . null) . iterate diff; rebuild l = foldr (scanl (+)) undefined (l++repeat 0); main = print . take 50 . rebuild . diffs $ [2,3,5,7,11,13,17] 21:54:37 [2,3,5,7,11,13,17,72,332,1139,3129,7361,15469,29837,53797,91850,149910,235571,358397,530235,765551,1081789,1499753,2044012,2743328,3631107,4745873,6131765,7839057,9924701,12452893,15495662,19133482,23455907,28562229,34562159,41576531,49738029,59191937,70096912,82625780,96966355,113322281,131913897,152979125,176774381,203575509,233678738,267401662,305084243] 21:54:45 heh 21:54:46 72 isn't prime :| 21:54:56 indeed 21:55:09 and it is well known that no polynomial can give only primes 21:55:26 -!- fizzie has joined. 21:55:55 oerjan, even if you count -2, -3 etc as primes -- but I don't know how to prove it 21:55:56 ok brb 21:56:15 that is presumably the sixth degree polynomial that starts with the given primes first 21:56:45 there IS a polynomial which gives the set of primes + a bunch of random negative integers 21:57:06 yeah. it is not a polynomial in one variable, though, iirc. 21:57:33 there is a proof in my book (about the not giving only primes thing) but I have been trying to figure it out myself 21:57:51 ok i'll not think about it then :) 21:58:09 you wont?? 21:58:16 -!- Oranjer has joined. 21:58:21 well not aloud anyway 21:58:28 oh feel free :) 21:58:36 I have been on it two days and not got it 21:58:39 it's actually quite trivial 21:59:18 if p(x) = a_n*x^n + a_(n-1)*x^(n-1) + ... + a_1*x + a_0 is your polynomial 22:00:00 hm wait 22:00:24 choosing x a product of a_0 isn't quite guaranteed 22:01:04 oh, except if it's _large_ enough, it has to be different from a_0 itself 22:01:25 so that shows it 22:01:41 if a_0 is 0, just choose x to be any non-prime 22:01:58 -!- augur has quit (Read error: Connection reset by peer). 22:03:27 * fax doesn't undersatnd :/ 22:03:35 as x -> infinity, so does the polynomial 22:03:35 but it's meant to be for multivariate ones too 22:03:39 oh 22:03:53 but there are infinite primes 22:04:01 well i'm not sure of that proof 22:04:38 fax: if you choose x divisible by a_0, then p(x) is divisible by a_0, so not a prime unless it is equal to a_0. if x is large enough that cannot happen. 22:04:50 when I give up on proofs they are always SO OBVIOUS it makes me annoyed 22:05:18 oerjan, oh that is clever! 22:05:33 -!- augur has joined. 22:05:41 i would guess something similar works for multivariate polynomials too, they can still have only one constant term after all 22:05:59 but I don't really understand it 22:06:19 (choose _all_ the variables divisible by the constant term) 22:06:21 because there is a (26 variable) polynomial whos positive values are all primes 22:06:44 fax: yeah but i've not proved that p(x) cannot be negative 22:07:07 only that it cannot be a positive prime 22:07:45 ;S 22:07:55 huh? 22:08:02 p(x) can be prime 22:08:14 *cannot always 22:08:42 but oerjan doesn't that contradict the 26-var polynomial? 22:09:46 the thing is you can have negative coefficents too 22:09:48 no! if you choose all variables divisible by the constant term, you probably force the polynomial to be negative 22:09:58 mm 22:10:46 -!- songhead95 has joined. 22:11:17 -!- augur has quit (Quit: Leaving...). 22:11:31 Hello, if I knew a better place to discuss this I would, but this seems like a good place. 22:11:41 I was thinking of designing an esoteric operating system. 22:11:51 Based on Super Mario Bros. 22:12:24 oh really now? 22:12:28 es 22:12:29 yes 22:12:31 * oerjan carefully scuttles away from the madman :D 22:12:31 expound please 22:12:38 you go down tubes to enter programs 22:13:24 on another part of the screen is another mario, in an array of blocks with different QWERTY keyboard keys on them, and when you hit a block, the keystroke is injected 22:13:36 the keyboard is two NES controllers 22:13:42 or something 22:14:20 oerjan, what if the constant is prime? 22:17:11 fax: that's why you need to make the other variables large enough that the polynomial cannot be that value 22:17:34 only something divisible by it 22:17:50 oh right! 22:18:15 so a physically transversable OS environment 22:18:45 i suppose if you have more than one variable you need to take care somehow that their largeness doesn't cancel out 22:19:09 hm 22:19:31 can you make a nonzero multivariate polynomial whos absolute value is always below some constant 22:19:36 nonconstant* 22:19:43 i doubt it 22:20:34 first, you only need to look at the terms of largest degree (the others will vanish in comparison in the limit) 22:20:55 but if there is more than one such term they might cancel 22:21:08 x^m y^n - x^n y^m say 22:21:11 yeah 22:22:06 actually, you can start by looking at the variable with largest term alone 22:22:20 x^n * something in the other variables 22:22:35 if that something is not 0, then you only need to blow up x 22:24:24 oh right and we can use induction to choose the other variables such that it is not zero :D 22:24:54 -!- augur has joined. 22:24:56 that something is after all a polynomial in the remaining variables, one variable less 22:25:01 O HAI 22:25:15 so by induction we can make it nonzero (in fact as large as we wish) 22:25:25 wow 22:25:59 and after we've done that the other variables are fixed, even if large, so we can blow up x even more 22:26:14 *possibly large 22:27:18 is there any sites dedicated to esoteric operating systems? 22:27:47 songhead95: afaik there is only one community for all things esoteric, and you are there 22:28:12 k kool 22:28:19 see also our wiki 22:28:23 esolangs? 22:28:26 yeah 22:28:33 seen, and contributed 22:28:43 oh right 22:29:01 have my own language :] 22:29:16 I wish I was better at this myself :D 22:29:25 there might be some other sites for specific things (lolcode?) with "mass appeal" 22:29:47 (note lolcode is considered too vanilla here, or something :) ) 22:30:34 and of course there are sites of individual esolangers. 22:31:12 so fax 22:31:16 lets try to work on this :o 22:31:29 whatcha talkin bout? 22:31:53 i don't know what augur is talking about 22:32:11 i wasnt talkting to oerjan so it doesnt matter :D 22:32:16 tho oerjan 22:32:19 what im talking about 22:32:27 augur what exactly 22:32:34 i thought fax was talking to me, so i don't understand what "this" you would be referring to 22:32:42 I was 22:32:48 is a class of formal languages that can be compactedly expressed in a regular expression like form 22:32:53 well ok then... 22:34:12 augur: and you joined after songhead95 so i was assuming you weren't referring to his project 22:34:25 :P 22:35:51 augur: oh that more than CF thing i briefly saw you mention? 22:36:17 sort of. there seems to be a class of languages which cut across various levels 22:36:32 linear time, you said 22:36:42 which can be parsed in linear time and which have the convenient property of being describably in compact, Regex-like form 22:36:43 I don't know what you are talking about augur 22:36:51 so, they are all context sensitive, since that includes everything linear _space_ 22:36:53 point free 22:36:56 ? 22:37:22 oerjan: i dont know if they're all CS 22:37:39 i dont know much about them, i dont think they're a previously investigated class 22:38:16 augur: i vaguely recall somewhere reading that there aren't any concrete examples (at least not naturally occuring) of CF languages not parsable in linear time if you can walk around in the string, or something like that 22:38:25 ok 22:38:49 augur: it's just an observation from the known fact that CS languages == languages parsable in linear space 22:39:00 and linear time is a subset of linear space 22:39:12 ok. 22:39:25 anyway 22:39:45 the language a^n b^n c^n is classically non-CF but its lineartime and obviously regexlike 22:40:10 since you could just use that like the regex. or using standardish notation, a{n}b{n}c{n} 22:40:15 and thats completely linear time 22:40:22 -!- songhead95 has left (?). 22:40:27 infact, a{n}b{n}c{n}d{n}... etc 22:40:36 yeah 22:40:43 REGEX + numbers? 22:40:44 infact, for _arbitrary different powers, in _arbitrary_ orders 22:40:50 exponentiation 22:40:57 not just exponentiation 22:41:04 linked exponentiation 22:41:24 even classically hard linguistic phenomena like cross-serial dependencies are possible 22:41:36 e.g. a^m b^n c^m d^n 22:41:37 surely you can't parse stuff like (a{n}){m} in linear time? 22:41:47 probably not. 22:41:58 (I think that is the compliment of primes?) 22:42:04 unary 22:42:12 well, (a^m)^n might be. it depends on your interpretation of that, right 22:42:34 i mean, you could interpret that the following two ways 22:42:48 fax: hm you'd have to be able to do a prime check on mn in time O(mn), that sounds doable 22:43:02 thats either a^(m*n), so just a^m 22:43:47 OR you could interpret that as a^(m_0) a^(m_1) ... a^(m_n) for different m's each time 22:43:50 oh right you need m,n>=2. but i assume that's easy to rephrase. 22:43:58 which is i suppose also just a^m 22:44:21 you need multiple symbols to get intrigue 22:44:28 (a^m b^m)^n 22:44:40 augur: make it (a^m)^n a^m a^n a 22:44:45 or that 22:44:46 -!- werdan7 has quit (Ping timeout: 619 seconds). 22:44:56 i dont know if those are linear time 22:45:16 but importantly, they're conveniently trivial to represent 22:45:24 augur: i think they are. you can store the numbers you've counted in binary, after all 22:45:39 so arithmetic is likely much _less_ than linear in the whole thing 22:45:48 actually, i think a^(m*n) a^m a^n a is probably not complicated 22:45:52 it might even be CF 22:46:13 augur: it's a^((m+1)*(n+1)) 22:46:26 lets see 22:46:38 huh 22:46:40 ok if m, n can be zero we've still got nowhere 22:46:47 we can put arbitrary polynomials like this? 22:46:52 a^(P(x,y,z,w)) 22:47:06 well but see then the question is whether or not P is valid in that, right 22:47:08 then it can be unary representation of any recursive set :P 22:47:26 because arguably, { p(w) : w in {a,b}* } 22:47:28 fax: if we can nest (a^m)^n it's just a matter of expanding the polynomial back using the distributive law 22:47:31 where p is the permute function 22:47:35 is linear time 22:47:46 the language is just the Bach/MIX language 22:48:19 but permutation seems to be a valid thing to have in such a simple notation 22:48:32 or is it? 22:48:51 i mean, this is what im not sure about. 22:49:38 even _if_ such a thing were accepted, tho, i dont think the grammar for, say, simple math expressions, would be expressable. 22:50:14 e.g. exp -> 0 | ... | 9 | (exp op exp) ; op -> + | - | * | / 22:50:30 augur: i just said that polynomials can be expanded. a^(p(...)+q(...)) = a^p(...) a^q(...) etc. 22:50:31 -!- werdan7 has joined. 22:50:54 im pretty sure that thats not possible to describe with the sort of transparent stuff we're talking about, so. 22:51:22 augur: if you have (a^m)^n, then you have all you need to expand things 22:51:32 to what now? 22:51:38 to _that_ 22:51:45 i dont follow 22:52:41 e.g. a^(m^2 + m*n + 2*n) = (a^m)^m (a^m)^n a^n a^n 22:53:00 oh, right 22:53:13 but the question was wheat power is required for the (a^m)^n part 22:54:09 augur: well i'm pretty sure (a^m)^n _alone_ can be parsed in linear time, even with m, n >= 2 restriction. whether it can be combined with other things is another matter. 22:54:22 right 22:54:44 in fact given we just mentioned that 26-variable polynomial giving the primes, we might have some trouble :D 22:55:06 otoh that has negative coefficients. those might be trouble in themselves. 22:55:33 probably. 22:56:19 im curious tho precisely what the computational class of these things are 22:56:24 because theyre not the CS languages 22:56:29 augur of what? 22:57:29 yeah we haven't got the precise definition yet 22:58:06 lets say of languages describable using just the regular processes (e.g. |, ?, +, *, concateenation, subtraction) 22:58:15 plus coindexed exponentiation, say 22:58:44 coindexed? :( 22:58:50 a^n b^n 22:58:50 is that like variables numbers only 22:58:57 mm okay 22:59:08 augur: and that is the class you've heard is linear time? 22:59:10 where you share the exponent 22:59:23 oerjan: that is the class that im interested in, which i suspect might be linear time 22:59:27 exponents can be just single variables, then? 22:59:41 because it seems to be a trivial addition to regular expressions that let them handle INCREDIBLY non-regular languages 22:59:45 augur: oh i thought this was some known class you were referring to? 22:59:51 no 22:59:57 thats why im interested in them 23:00:03 im fairly certain theyre _not_ known 23:00:11 well this language AUG is equivalent to having {n+3} type indices, because you can just expand them out 23:00:19 :p 23:00:28 theres also another class you might imagine 23:00:31 you can also multiply them, because (X{a}){b} = X{a*b} 23:00:38 regular languages + stack operations 23:00:57 ok. i am now suspecting things might get hairy (possibly nonlinear) if you allow exponents to nest 23:01:05 e.g. if you had a global stack, you can push and pop to the stack each time you read something of a certain nature 23:01:16 because of having all those polynomials 23:01:21 * fax doesn't lik stacks :( 23:01:53 e.g. lets say that {+x} means push x, and {-x} means pop x, then a{+x}*b{-x}* i think would generate a^n b^n 23:02:24 so thats basically a*b* but each time you read an a you push an x to the stack, and each time you read a b you pop an x from the stack 23:03:02 and the language is recognized if the whole string is consumed, the stack ends up empty, and at no point do you fail to be able to pop a symbol 23:03:07 if you need to pop it. 23:04:30 -!- kar8nga has quit (Remote host closed the connection). 23:05:56 oh food -> 23:05:56 i think that would generate a similar class of languages but not the _same_ class 23:06:07 like, if you had named stacks, you could do 23:06:47 a{a+x}*b{b+x}*c{a-x}*d{b-x}* 23:07:03 where a{a+x} pushes an x to the stack named a 23:07:04 etc 23:07:52 and that would generate the language a^m b^n c^m d^n but using that you couldnt get one extra exponent to m at the end 23:07:56 because the a stack would be empty 23:08:04 but if you could push to multiple stacks who knows! 23:09:03 a{a+x,b+x}*b{a-x}*c{b-x} which i think would generate a^m a^n b^n c^m 23:09:08 which is trivially CF 23:09:23 but you could use that interestingly 23:14:33 -!- tombom has quit (Quit: Leaving). 23:17:23 -!- kwertii has joined. 23:18:25 well that stack thing is at least in NP... since you can always guess 23:19:01 oh hm 23:19:19 if you have multiple stacks then you can copy them 23:19:40 {-x}{+y}{+y} 23:20:53 i have a suspicion that might give you a minsky machine - something TC, definitely not linear 23:21:21 mm i dont know 23:21:38 er 23:21:57 * {a-x}{b+x}{c+x} 23:21:59 i mean, look, ignoring the time it takes to do stack operations, which is roughly constant because you're at most pushing or popping form all stacks 23:22:10 each symbol takes constant time to recognize 23:22:22 but backtracking 23:22:28 no backtracking 23:22:46 deterministic processes 23:22:57 maybe. i dont know. :p 23:23:02 ;D 23:23:19 i mean, this is sort of where the extras fuck you up, right 23:23:20 augur: oh this minsky machine thing is not about symbols at all. you could do TC computation without reading a single symbol, once you have filled the stacks from your input 23:23:47 hm 23:23:56 ok 23:24:31 so i guess the real question is, what is an interesting subset of these languages 23:24:43 if you can only use a single global stack, is that interesting? 23:24:58 what about a global stack with only one symbol, eg its an integer register? 23:25:08 what about multiple integer registers? etc. 23:25:28 multiple integer registers no, since that's all you use for minsky machines anyway 23:25:34 right 23:26:26 my implementation for the exponent language just has integer registers which necessarily reset to their fullest just prior to transitioning to a symbol that pops from it. 23:26:36 two global stacks, um now we are dangerously close to a brainfuck tape... 23:26:55 e.g. a^n b^n c^n pushes n times, then transitions to another stack, pops n times, then resets, and transitions and pops n times again 23:27:14 but i think the crucial thing is that theres some transparency between the symbols and the string, right 23:27:40 augur: you said something about determinism, that's rather different from regexes... 23:27:53 i was maaaaybe saying you have deterministic processes 23:28:20 you can do the majority of regexes deterministically, modulo the non-regular processes 23:28:41 i dont know if you could do this deterministically. probably not. 23:29:09 because a^m a^n b^m c^n will i think be potentially problematic 23:29:21 e.g. aaabbc vs aaabcc 23:29:40 well you'll need some arithmetic at least, not just a stack machine 23:29:56 well no, you dont need arithmetic 23:30:16 i mean to parse in linear time 23:30:18 you'd just need backtracking to branch off when you change from incrementing m to incrementing n 23:30:26 so that probably isnt linear time 23:30:48 a^m a^n b^m c^n pretty obviously can be parsed in linear time 23:31:04 well, it IS just a^n a^m b^m c^n 23:31:09 so its a simple CF language 23:31:17 so i guess it is indeed linear time 23:31:24 oerjan, it CAN but actually doing it in a general way seems like a difficult problem to me 23:31:27 but getting a linear time stack machine 23:31:35 state* machine 23:31:42 oerjan, I mean you just parse a^x then b^m and then c^(x-m) 23:31:49 but figuring that out in linear time ? 23:31:52 if you don't allow nested exponents, then maybe it is possible. would require some integer linear equations i think 23:31:54 right, if you could do the arithmetic then sure. 23:32:12 also... I wonder if this way, we might introduce subtraction :)))) 23:32:17 then again, you'd build state machines for each thing, right 23:32:20 then reach full recursive sets 23:32:32 so you'd be given the expression /a{m}a{n}b{m}c{n}/ 23:33:22 and you'd just do some arithmomagic internally to turn that into /a{x}b{x-n}c{x-m}/ where the second exponents are calculated once you transition away form the last a 23:33:38 so yeah that would do it, you're right 23:33:46 yeah but remember we have multiplication and addition of constants 23:33:52 so this is getting a bit wild 23:33:56 thats ok 23:34:07 i dont think having simple math is a problem 23:34:20 i'm much more doubtful if we have multiplication 23:34:24 /a{n}b{2*n}/ should be a valid expression 23:34:28 simle math? :))) 23:34:37 augur diophantine equations are recursive 23:34:38 as should /a{m}b{n}c{m*n}/ 23:34:43 although i'm not sure even with linear stuff 23:34:44 hilberts 10th 23:35:14 perhaps! 23:35:14 but 23:35:15 fax: there is a limitation in that we have a finite string to parse 23:35:38 so we cannot get arbitrarily large numbers for parsing a given string 23:35:44 hm 23:35:54 it depends on what simplicity we allow. is there a way to get /a{x}b{some recursive equation dependent on x}/? 23:35:59 yeah you are right, that puts a strong limitation on it 23:36:55 i mean, sure, diophantine equations are recursive 23:37:03 but do we need to _solve_ them or just compute a value with one 23:37:13 *nod* 23:37:57 because if we have, say, /a{x}b{y}c{3x + 5y}/ you have, _roughly_, a diophantine equation. or at least part of one 23:37:57 in principle we could just go through all possible values of the exponents and test each combination in turn. i don't think that gives linear time though :D 23:38:03 -!- BeholdMyGlory has quit (Read error: Connection reset by peer). 23:38:04 but you're not solving for x and y, you're _given_ x and y 23:38:05 -!- FireFly has quit (Quit: Leaving). 23:38:13 so all you need to so is compute 3x + 5y 23:38:16 that proves it's subturing 23:38:49 i mean, maybe there ARE cases where we'd need to solve for it, i dont know 23:39:08 somewhere with like /...a{x}...b{y}.../ 23:39:26 where x and y are determined according to a diophantine equation 23:40:06 /a{3x + 2y}b{x}c{y}/ 23:40:14 maybe? 23:41:39 but surely not, because thats refactorable. /a{z}b{z - 2y}c{y}/ => /a{z}b{w}c{z/2 + w/2}/ 23:41:56 i dont think we'd ever have to _solve_ diphantines. 23:42:40 or whatever. i think i did that wrong. 23:42:40 hm... actually i think we must, but not necessarily hard ones 23:42:46 example? 23:43:43 a^{x+y} b^{2y+3z} c^{y+z} 23:44:27 er wait 23:44:35 * a^{x+y} b^{2y+3z} c^{x+z} 23:44:38 sheesh 23:46:08 * /a{x+y}b{2y+3z}c{x+z}/ 23:46:33 a^(x+y) b^(2y+3x) c^(x+z) = a^w b^(2w + x) c^(x+z) = a^w b^q c^(q - 2w + z) 23:47:01 = a^w b^q c^(q - 2w) c* 23:47:34 so you dont have to _solve_ a diophantine equation 23:48:03 note that you have to check that the original x,y, and z become positive integers 23:48:16 or nonnegative 23:48:29 no, you just calculate q - 2w on the fly 23:48:33 and if its negative you fail 23:48:43 actually no, you dont, right 23:48:46 my example was, however, too simple 23:49:04 because if its negative, since you have + z, q - 2w + z can be any number 23:49:23 so this is technically the language a*b*c*! 23:50:04 /a{2x+3y}b{5y+2z}c{7z+11w}/ 23:50:16 :D 23:50:18 _now_ you're bloody going to have to solve something 23:50:55 aa{x}aaa{y}bbbbb{y}bb{z}ccccccc{z}ccccccccccc{w} 23:51:14 i forgot that for awkward linear integer equations, you need more variables than equations 23:52:21 = a{w}b{w/3-2x/3}c{7z+11w} = a{w}b{q}c{7z+33q+6x}} 23:53:11 = a{w}b{q}c{33q + n} = a{w}b{q}c{n} = a*b*c* 23:53:19 -!- alise has joined. 23:53:30 augur: and are you _really_ sure all of those correspond to x,y,z,w nonnegative originally? 23:53:35 it doesnt matter 23:53:46 Remember to update the alise sighting counter over the next week... 23:53:55 Oh, wait, most of you guys don't know. Unit again... yeah. 23:53:56 augur: _false_. there is no way you can get c, say 23:53:57 bye alise ::hug:: 23:54:09 <3 23:54:26 alise: take care 23:54:33 oerjan: sure there is, because it contains a free variable (w), c{7z + 11w} is c* 23:54:37 see you 23:54:47 oerjan: I can't take care of myself, I'm dysfunctional! That's why I'm there! ;-) 23:54:55 well, not in the form you give it, but in the equivalent form it does 23:55:00 i think. 23:55:10 augur: c is not a string parsed by my original form, that's the _point_ 23:55:17 what 23:55:37 what do you mean its not a string parsed by your original form 23:55:59 c is not a member of the language /a{2x+3y}b{5y+2z}c{7z+11w}/ 23:56:17 because you damn well cannot get 1 = 7z+11w for nonnegative z,w 23:56:19 oh ok. ok then lets see 23:56:51 er 23:57:00 * oerjan cackles evilly 23:57:05 lets see 23:57:09 to get c 23:57:22 x = 0, y = 0, z = 0 23:57:27 12:30:34 fax: maybe you shouldn't have mentioned your win by paradox in philosophy? bah, humbug :) don't have that 23:57:28 hahaha 23:57:34 because a{2x + 3y} = a{0} 23:57:43 and b{5y + 2z} = 0 23:57:43 um, augur, it's _obvious_ you cannot get c 23:57:53 win by paradox /is/ pretty philosophically dodgy 23:58:11 you cannot get anything strictly between 0 and 7 23:58:11 therefore you'd have to generate c{11w} = c 23:58:21 so yes. indeed you are correct. 23:58:49 oerjan, 23:58:52 you'd get c^(11n) 23:59:02 for n in Z 23:59:29 but again, oerjan, i dont think this would be an issue 23:59:37 since it doesnt involve _solving_ a diophanting 23:59:37 12:51:16 <3 finite calculus 23:59:37 it's like arithmetic but cooler! 23:59:42 in my book is says assume P(x1,...,xm) only takes prime values, then let p = |P(1,...,1)| and consider Q(y1,...,ym)=P(py1+1,...pym+1) 23:59:46 diophanting sounds like an awesome sexual act 23:59:49 ;) 23:59:56 * augur diophants alise 2010-03-15: 00:00:49 then it says that Q(y1,...,ym) = P(1,...,1) = 0 (mod p), hence Q(y1,...,ym) = +/- p is Q is constant and so is P 00:02:51 fax: what's the abstract algorithm for finite integrals? 00:02:53 maybe I can J it up 00:03:56 alise, I don't know what you mean.. symbolic antidifferentiation? 00:05:44 -!- coppro has joined. 00:06:02 for definite integral you can just sum up the values 00:06:04 because it's finite! 00:06:38 your sigma definition in al-jabr looked all higher order 00:07:10 I should do integrals as an adverb: so I get the derivative function, and two arguments 00:07:14 but that's all 00:08:21 oerjan: its linear time tho. 00:08:28 since you again dont have to _solve the linear equation 00:08:36 i did my math wrong before 00:08:38 Fixpoint Sigma n a f := 00:08:38 match n with 00:08:38 | O => 0 00:08:38 | S n => f a + Sigma n (a + 1) f 00:08:38 end. 00:08:38 Definition Discrete_Definite_Integral a b f := 00:08:39 match b - a with 00:08:39 | Zpos p => Sigma (nat_of_P p) a f 00:08:40 | _ => 0 00:08:40 end. 00:08:43 Is this just because Coq sucks at recursion? 00:08:46 (Sorry for the flood.) 00:08:57 With J it should be a cinch, since it is awesome at arrays. 00:09:03 What's a simpler general recursive definition? 00:09:14 essentially you can refactor the expression into a{6x}b{2y}c{5x-y-z} 00:09:15 I've no idea what nat_of_P is for starters. 00:09:21 Z -> N? 00:10:09 So a (f integ) b, we do b - a, if it's negative then 0, otherwise... 00:10:14 ? Sigma n recurses indefinitely. 00:10:22 That doesn't really work. 00:10:27 and so you just recognize 6x a's and, 2y b's, and for each, determine what x and y are, and if they're not integers, fail. 00:11:06 fax: is this some magic? 00:11:14 hm? 00:11:26 Sigma is that normal big-summation thing 00:11:48 augur: if you are right, it only means i was not clever enough with my example - it should be possible to find one where the original variables are _not_ determined by the string parsed 00:11:56 oh, it decomposes n into n 00:12:00 that's confusing, call it n' or something 00:12:20 oerjan: im not sure if that even makes any sense 00:12:23 which was my point with using more variables than equations in the first place 00:12:27 so Sigma n a f = sum (map (\_ -> f a) [0..n]) 00:12:36 0 to n inclusive? Yes. 00:12:40 no wait 00:12:42 it's ... hm 00:12:50 it's just multiplication fax 00:12:56 oh wait no it's not 00:13:01 because if the variables range over Z, and exponents range over Z, then obviously we can just refactor and if at any more one of them fails to do so, we're done 00:13:06 sum (map f [1..n]) 00:13:08 right? 00:13:10 we're still not _solving_ diophantines 00:13:24 also, holy fuck i have hand sanitizier that smells EXACTLY like pot 00:13:40 maybe it's actually pot that works like hand sanitiser 00:13:45 augur: the variables range over N 00:14:04 which should be obvious, since you don't have negative length string 00:14:05 *s 00:14:08 fax: Sigma n a f = sum (map f [1..n]) right? Just getting the range right 00:14:12 well, the exponents, at least. 00:14:27 i mean, theres no harm in ranging the variables over Z, so long as the exponents are always N 00:14:45 augur: my notation is simply meant as an abbreviation for expanding the sums out 00:15:13 alise yeah 00:15:14 e.g. if you had some expression a{m}b{n}c{m-n} and you tried to recognize abb..., you would calculate that you need 2-3 = -1 c's 00:15:21 which fails immediately because its a negative exponent 00:16:20 if. (y-x) > 0 do. +/ v (x+i. (y-x)) else. 0 end. 00:16:25 augur: the thing is that with sufficiently complicated linear equations, you can get into trouble determining whether any of the several solutions is a natural number. in fact even integers might give enough trouble. 00:17:25 -!- alise_ has joined. 00:17:25 but theres no harm in letting the variables range over Z, because itll just force things to be refactored. e.g. a{m}b{n}c{m-n} is just a{m+n}b{m}c{n} 00:17:33 fax: ok right gimme an example to test integ 00:17:43 oerjan: but these arent EQUATIONS 00:17:46 thats the point, right 00:18:00 they're really just sums 00:18:14 augur: i am talking about the equations i'm trying to turn into examples that show you that you cannot get away with not solving them :D 00:18:17 i mean, if you did lets say 00:18:59 fax: plz 00:19:18 if you had something like a{x^2 + y^2}b{x}c{y} 00:19:23 no even that 00:19:44 fax: so this is my understanding of integrate 00:19:47 your def 00:20:17 oerjan: im failing to see any situation where it actually _is_ a problem 00:20:30 integ f x y | y-x > 0 = sum (map f [(y-x)..(i-1)]) 00:20:32 | otherwise = 0 00:20:33 -!- alise has quit (Ping timeout: 240 seconds). 00:20:39 where [m..n] is [m,m+1,...,n-1,n] 00:20:43 fax: isthis right? 00:20:46 *is this 00:21:17 hello 00:22:31 23:20 integ f x y | y-x > 0 = sum (map f [(y-x)..(i-1)]) 00:22:31 23:20 | otherwise = 0 00:22:31 23:20 * alise (~alise@genld-216-213.t-mobile.co.uk) Quit (Ping timeout: 240 seconds) 00:22:31 23:20 where [m..n] is [m,m+1,...,n-1,n] 00:22:31 is that your def? 00:22:37 erm 00:22:51 23:20 integ f x y | y-x > 0 = sum (map f [x..(y-x)]) 00:22:52 23:20 | otherwise = 0 00:22:52 23:20 * alise (~alise@genld-216-213.t-mobile.co.uk) Quit (Ping timeout: 240 seconds) 00:22:52 23:20 where [m..n] is [m,m+1,...,n-1,n] 00:22:53 that's not right... 00:23:22 alise use the paper instead of my code! 00:23:23 ok so we loop (y-x) times, first value to the function is x 00:23:28 it's much clearer, and all my stuff is copying it exactly 00:23:30 fax: no :) 00:23:53 so 00:23:53 i.(y-x) 00:23:53 yields a list starting at 0 of (y-x) in length 00:23:53 x + i. (y-x) 00:23:53 ok, that's right 00:23:54 so then we u on it 00:23:54 and +/ 00:23:56 if. (y-x)>0 do. +/u x+i.y-x else. 0 end. 00:24:02 this is right, so why do i get domain errors 00:24:10 -!- cheater2 has quit (Ping timeout: 264 seconds). 00:24:13 ehh just gimme a dead simple example to test :)) 00:24:50 3 (id integ) 4 00:24:50 |domain error 00:24:50 | 3 (id integ)4 00:24:52 there is no damn reason for that 00:24:53 example of waht? 00:24:57 -!- cheater3 has joined. 00:24:58 your finite integ 00:25:17 augur: what about /a{256*x}a{3*y}b{y}b{256*z}/ 00:25:18 what's going on? 00:25:31 ok seriously my definition is right 00:25:33 myabe the if is the problem 00:25:49 oejan, what about it? 00:25:49 (trying to find an example based on the brainfuck constant algorithm trickeries 00:25:50 nope 00:25:53 ) 00:26:03 augur: can you refactor that? 00:26:12 recognize some number of a's, divide by 256, if thats not an int, fail 00:26:16 oh i see 00:26:19 oh my lets see :x 00:26:41 "integ f x y | y-x > 0 = sum (map f [x..(y-x)])" <<< you go from x to y-x? so y's like 2x+offset? 00:26:49 i mean not that i have any idea what that's about 00:27:57 finite integration 00:28:01 my j definition is breaking 00:28:02 fix it :) 00:28:23 integ =: adverb define 00:28:24 if. (y-x)>0 do. +/u x+i.y-x else. 0 end. 00:28:24 ) 00:30:00 oerjan, first, w must be a multiple of 3 00:30:05 ew 00:30:08 er 00:30:15 the number of a's must be a multiple of 3 00:30:23 augur: incorrect 00:30:27 no, correct 00:30:32 no, incorrect 00:30:32 * fax downloads j 00:30:36 oerjan 00:30:48 it is correct 00:30:51 and let me prove to you why 00:30:52 256 is not divisible by 3 00:30:57 fax: good idea, watch out for the installer it fucks your home directory (ok well adds a directory or two to it) 00:31:01 that is irrelevant to the point 00:31:06 you can specify a different dir but make sure you can write in it 00:31:06 x is not used anywhere else 00:31:08 alise_: how do you apply an adverb? :P 00:31:12 be quiet, oerjan 00:31:13 and listen 00:31:38 augur: no it is not, you can add 256 a's to any solution and get a new one, which is not a multiple of 3 if the original is 00:31:44 a^(256x + 3y) b^(y + 256x) = a^w b^(w/3 - 256x - 256w) 00:31:58 * fax realizes how much I have forgotten when given a blank window 00:32:15 er, 256x/3 00:32:15 -!- MizardX has quit (Read error: Connection reset by peer). 00:32:27 - 256z 00:32:28 -!- MizardX has joined. 00:32:28 not w 00:32:29 sorry. 00:32:57 alise_: how do i apply that to a function and two data arguments? 00:33:11 a^w b^(w/3 - 256x/3 - 256z) 00:33:20 i can't just do "x function integ y" 00:33:23 oklopol: x (func integ) y 00:33:27 oh. 00:33:27 produces a domain error, helpfully 00:33:29 i can huh 00:33:33 no matter what you plug in 00:33:43 ah okay, is that the problem? 00:33:53 oklopol: lol 00:33:53 its just like x +/ y 00:33:53 *it's 00:33:53 here's its pal deriv 00:33:53 deriv =: adverb define 00:33:54 u (y+1) - u y 00:33:54 ) 00:33:55 that one actually works 00:34:07 well you might be right actually :) 00:34:18 * oerjan cackles evilly 00:34:19 oklopol: what that integ produces a domain error all the time? 00:34:28 yes. i don't think the algorithm-if-it-worked has been translated incorrectly 00:34:41 alise_: i thought there had to be special syntax for when it's letters and not operator letters, exactly because it produced a domain error 00:34:52 well, (foo deriv) x works so 00:34:55 then again why would that give me a domain error 00:34:59 well exactly 00:35:10 j comes with a debugger, I think i'll try that 00:35:24 fucking hell what's the identity 00:35:40 if i can find it lol 00:36:23 id v 3 : (,'y') 00:36:29 that is ... not helpful 00:36:43 ah what the FUCK 00:36:57 -!- cheater3 has quit (Ping timeout: 276 seconds). 00:36:57 id =: monad : 'x' -- this is wrong 00:37:01 id =: monad : 'y' -- this works 00:37:08 ? 00:37:10 yeah 00:37:11 because 00:37:14 (x u y) 00:37:15 is application 00:37:19 ??? 00:37:20 so (u y) is just a simplified form of that 00:37:22 oh 00:37:30 remember everything is infix even things that aren't :)) 00:37:41 also often this is a nicer syntax for definitions: 00:37:45 id =: monad define 00:37:45 y 00:37:45 ) 00:37:50 longer ones anyway 00:38:01 -!- cheater2 has joined. 00:38:04 specially ones with strings :) 00:38:10 oerjan, so if we accept that this might be tricky, how can we make it trivial 00:38:15 oklopol: you might be right about needing special syntax for the dyadic adverb case 00:38:18 eliminating addition would do it 00:38:34 atleast, variable addition 00:38:53 so a{2x+3} is fine, but a{2x+y} is not 00:38:54 a hint is it doesn't work no matter what the code in the body is 00:38:55 alise? +/ f a + i. b 00:38:58 this seems to work 00:39:00 Unlike verbs, adverbs and conjunctions have fixed valence: an adverb is monadic (applying to a single argument to its left), and a conjunction is dyadic. 00:39:02 the call gives a domain error 00:39:02 ahh 00:39:05 maybe i need a conjunction! 00:39:11 augur: so each character can only be used with one variable? 00:39:15 sum f mapped over the range a to b 00:39:23 yeppp i need a conjunction i think 00:40:05 3 (id integ) 4 00:40:05 |ill-formed name: ? 00:40:05 | ({."1 wdq) =:wd_val 00:40:05 wat. 00:40:07 oerjan, well, no that would be stupid 00:40:08 augur: after all you'll also have to disallow a{2x}a{y} 00:40:08 you're right 00:40:17 alise_: why conjunction? it just takes one verb 00:40:23 one function 00:40:25 ah right 00:40:28 then wtf is up :) 00:40:47 well dunno, do adverbs actually get to talk about the parameters the resulting verb is called with? 00:40:52 x and y 00:40:58 well, but oerjan, here's the good thing at least, right 00:41:01 i mean, i don't actually remember pretty much any syntax... 00:41:06 oerjan did you se the proof about primes? 00:41:09 yes they do 00:41:11 that's why deriv works :-) 00:41:15 hmm right 00:41:17 a^256x a^3y b^y b^256z is surely linear time, right 00:41:20 I just wrote the one from the book out 00:41:29 fax: the one with P(1,1,...,1) ? yes 00:41:51 okay 00:41:53 thats just (a...)^x (aaa)^y b^y (b...)^z 00:42:38 which would have minimal amounts of backtracking 00:43:45 http://www.mail-archive.com/general@jsoftware.com/msg04062.html 00:43:48 may be a monadic/dyadic issue??? 00:43:52 alise_: if it's any consolation, your deriv is wrong 00:44:00 hi oklopol 00:44:04 hi faxie 00:44:13 so if we didnt solve the simple diophantines, but instead had some amount of backtracking, it wouldnt be _too_ bad i think 00:44:16 (id integ) 4 00:44:16 |value error: x 00:44:16 | +/u x+i.y- x 00:44:20 well that's at least helpful 00:44:22 augur: mind you the diophantine equation in that particular case is not _that_ hard to solve. in fact i think several optimizing brainfuck compilers do it :D 00:44:26 oklopol, do you know about this bijection between N^2 and N! 00:44:36 (in essence) 00:44:38 well yes 00:44:44 f(x,y) = (x^2+y^2+x+2xy+3y)/2 00:44:51 oh well maybe not that one 00:44:55 it's so beautiful 00:44:56 oerjan: right, im just saying we dont have to solve them we could ust do something else 00:45:01 oerjan proved it in like 1 second 00:46:05 augur: i think if there is more than two variables for a given char, your backtracking could easily be quadratic etc. 00:46:09 *are 00:46:09 oh he did now 00:46:18 "Mathematical fields always permit further division." 00:46:22 and I didn't know that C(n,k) is the n'th k-dimensional pyramid 00:46:30 oklopol: mind you i guessed it was a basic idea i already knew about 00:46:37 oerjan: hm. ok so then we dont have linear time 00:46:45 so how do you prove it? 00:46:48 im partially ok with that, actually 00:46:52 My wit i sunmatched. 00:46:57 i mean one second sort of implies it's not some boring algebra 00:47:06 *is unmatched 00:47:19 im more interested in the class of languages that is representable in such a simple fashion 00:47:24 the parse complexity isnt a huge issue 00:47:32 fax: i didn't know that either, n'th as in of height n? 00:47:39 n'th in the sequence 00:47:54 for example nC2 = n(n-1)/2 triangular numbers 00:47:58 tho the linear time subset of those is itself interesting 00:48:06 oklopol: FIX IT :| 00:48:09 "in the sequence"? 00:48:13 alise_: fix what? 00:48:16 1,3,6,10,15,... 00:48:18 the derivative is trivial to fix 00:48:26 the deriv isn't broken. 00:48:29 oh well i see 00:48:33 oklopol, the really amazing bit is that the the FINITE INTEGRAL of nCk is nCk+1 00:49:01 (which explains why it's a bijection) 00:49:02 yeah finite integration and falling powers are pals 00:49:07 oh 00:49:29 and this generalizes too 00:49:38 so wait what do we see why f is a bijection now? 00:49:42 i don't see. 00:49:43 ` =: adverb : 'u (y+1) - u y' NB. now I just need a fancy symbol for my broken integration 00:49:44 No output. 00:49:53 oklopol, well if we are at T(3) = 6, 00:50:02 we can add 1, 2, or 3, until we hit T(4) 00:50:17 alise_: so what's ] deriv 1 00:50:27 2 - 1 = 1 00:50:30 so there is a bijection between N and (x,y) : NxN where y < x 00:51:26 oklopol: ] deriv 1 results in 1. why 00:51:28 oklopol: f(x,y) = (x+y)C2 + y iirc 00:51:39 it's exactly fax's def so... 00:52:12 aw ` isn't a valid name 00:52:38 alise_: oh sorry, ] doesn't show the problem 00:52:46 but try say +: deriv 6 00:53:02 and you can just shift it over to make the full bijection 00:53:06 skew 00:53:10 the derivative of +: is constant 2 00:53:41 oerjan: ah, okay that's cool 00:53:42 then fax's definition must suffer from the same problem 00:53:47 because his is exactly the same 00:53:51 where's fax's definition? 00:53:59 http://github.com/odge/al-jabr/blob/master/Fun/FiniteCalculus.v 00:54:01 are you sure she expressed it in j? 00:54:02 oerjan: on an unrelated note, wanna hear a cool technique for doing part-of-speech induction? :D 00:54:13 Definition DiscreteDerivative (f : Z -> Z) (x : Z) := f (x + 1) - f x. 00:54:20 okay 00:54:27 and you have f (x + 1 - f x) 00:54:30 XD 00:54:33 no i don't 00:54:40 hmm so i do 00:54:41 wow :D 00:54:45 well okay 00:54:46 pretty epic failure there 00:54:48 augur: not really, my head is on the verge of full 00:54:51 you have f ((x + 1) - f x) 00:54:53 aww 00:54:58 well empty some of it out! 00:55:00 i mean in j terms 00:55:10 anyway, im going to tell the channel anyway, oerjan 00:55:12 so dont worry :D 00:55:17 AAAAAA 00:55:19 oklopol! im going to tell this to you too 00:55:20 i mean, ok 00:55:28 8D 00:55:31 augur: go for it, not that i have any idea what's going on 00:55:31 deriv =: adverb : '(u y+1)-u y' 00:55:36 a nicer name would be... nice, though 00:55:49 +:` x etc 00:55:54 but that's not valid 00:55:54 oklopol: part of speech induction. that is, given some text in a language, discovering the parts of speech (noun, verb, etc.) 00:56:12 so the algorithm goes like this 00:56:17 http://www.jstor.org/pss/2323743 00:56:24 geometry of binomial coefficients - Stephen Wolfram 00:56:51 looking at the binary stuff :| 00:57:26 fax: yay, % deriv now produces a correct plot 00:58:01 + deriv still produces a ridiculous plot with little spikes at float errors 00:58:44 for each word, collect the "n-contexts" that it appears in, where the n-context of the word is the set of pairs of strings where each string is the n words immediately to the left/right of the word in some sentence the word appears in 00:59:03 nicee nice baby 00:59:25 e.g. if you have the sentence "the dog barked", the 1-context is (the, barked). if you have two sentenes, "the dog barked" and "the dog yelped", it has the 1-contexts {(the, barked), (the, yelped)} 00:59:54 so you just map each word to its sentential neighborhood, basically. 00:59:55 oklopol: now fix integ >_> 00:59:58 do you even know the error :P 01:00:26 then you build a graph where each node in the graph is a word, and an arc connects two words if the words share at least one context 01:01:12 that is, the graph is (V, E) where V is the words, and (w1, w2) is in E iff context(w1) intersect context(w2) is not empty 01:01:51 so that gives you a similarity graph, showing you which words show up in similar neighborhoods to which other words 01:02:16 then if you take the word-wise maximal cliques of this graph, you get the parts of speech 01:03:37 oklopol: I know the equation is correct - 01:03:41 +/] 3+i.1 01:03:41 3 01:03:47 it's just the definition is broken 01:03:56 and this algorithm works _surprisingly_ well 01:03:57 yeah but there's a domain error no matter what code you put in the if 01:04:05 augur: i'll read. 01:04:05 but its pretty slow. 01:04:17 at least with the maximal graph algos i have. 01:04:31 er, maximal clique. 01:05:13 oklopol: so it is the control structure. 01:05:45 ah 01:05:50 inside the ifneeds to be imperative things i think 01:05:52 *if needs 01:06:40 nope 01:06:45 augur: okay that does sound like an interesting idea 01:06:50 :) 01:06:58 i'll have to check the definition of maximum clique tho 01:07:04 i have a very vague idea 01:07:28 you know what a clique is right? 01:07:41 wait lol 01:07:43 The last sentence executed in a T block is tested for a non-zero value in its leading atom, determining whether the B block after the do. or the rest of the sentence is executed. An empty T block result or an omitted T block tests true. 01:07:43 or the rest of the sentence? 01:07:52 a clique is a complete subgraph 01:07:57 foo =: adverb define 01:07:57 y-x 01:07:57 ) 01:07:58 fails 01:08:06 that is, a subgraph where each vertex is connected to each other vertex 01:08:27 ywah 01:08:29 yeah 01:08:30 a maximAL (with an "al", not maximum "um") 01:08:32 ok, it's the multiple argument thing 01:08:42 but no i didn't remember that right away 01:08:53 clique is a clique that cannot be enlarged by adding any other vertex 01:09:00 foo =: adverb define 01:09:00 dyad : 'y-x' 01:09:01 ) 01:09:01 1 ] foo 2 01:09:01 1 01:09:08 so a clique not copletely contained in any other clique 01:09:39 the _node-wise_ maximal cliques of a node are the largest cliques that the node appears in 01:09:46 |value error: u 01:09:47 | +/ u x+i.y-x 01:09:47 -!- coppro has quit (Quit: I am leaving. You are about to explode.). 01:09:47 lollll 01:09:57 so the maximal cliques-that-contain-that-node 01:11:07 your maximum 01:11:18 fuck =: adverb define 01:11:19 x 01:11:20 ) 01:11:20 ] fuck 01:11:20 +-+ 01:11:20 ] 01:11:20 +-+ 01:11:33 so... we can either have one or the other but not both, cool 01:11:37 now how do you define an adverb returning dyad 01:11:42 without this hit 01:12:15 have to do a sleep 01:12:15 likewise, an adverb may refer to its left argument (using u) as well as to the arguments of the resulting verb (x and y). 01:12:16 fugfuck 01:12:17 -> 01:12:34 fughafpb 01:12:36 AHAAAA 01:12:37 i think I have it 01:12:39 AHAHAH!!!! 01:13:04 3 (] integ) 4 01:13:05 3 01:13:06 you know what the fix was 01:13:10 integ =: adverb define 01:13:10 : 01:13:10 if. (y-x)>0 do. +/u x+i.y-x else. 0 end. 01:13:10 ) 01:13:12 one single fucking colon 01:13:15 "dyadic case" separator 01:13:20 ok gimme an example 01:14:58 ah 01:15:12 i actually should've remembered that 01:15:13 -> 01:15:28 deriv =: adverb : '(u y+1)-u y' 01:15:29 integ =: adverb define 01:15:29 : 01:15:29 if. (y-x)>0 do. +/u x+i.y-x else. 0 end. 01:15:29 ) 01:15:30 finite calculus in J 01:16:39 yay 01:16:40 fax: now gimme a test case 01:16:50 alise you must know triangular numbers 01:16:53 something semicomplicated, preferably involving both deriv and integ (in whatever syntax you want) 01:17:00 integrate the identity function to get them 01:17:11 integrate it again to get 3D pyramid numbers 01:18:53 0]deriv integ"0 i.10 01:18:53 0 1 2 3 4 5 6 7 8 9 01:18:55 Sucks eggs! 01:20:48 do you actually need the x param? 01:20:57 it doesn't wokr? 01:20:59 you can do that from outside integ no? 01:21:02 fax: it does 01:21:07 what did you integrate? 01:21:13 "0 is the identity? 01:21:14 pronounce(sucks eggs) ~ pronounce(success) 01:21:21 ] is identity 01:21:23 it's (] deriv) integ 01:21:24 oh 01:21:27 "0 is just so that I can map it over i.10 01:21:30 oh!!! 01:21:35 (because it's dyadic you need to fuck about with rank) 01:21:45 (for monadic verbs it maps automatically) 01:21:55 ("0 says basically... this thing takes atoms, not lists) 01:22:53 how do I integrate id? 01:23:00 ]integ 01:23:08 it's (f adverb), always 01:23:13 x f adverb y also works 01:23:29 1 (]integ) 6 01:23:34 1 ]integ 6 even. 01:23:36 it works ! but how do I map over i.1 01:23:40 i.10 01:23:45 1 ]integ 6"0 i.10 01:24:08 1 ]integ "0 i.10 01:24:09 0 0 1 3 6 10 15 21 28 36 01:24:10 yes! 01:24:43 right 01:24:52 now try integrating 2, add constant 1, then integrate again 01:24:58 integrating... 2? 01:25:02 2 is not a function 01:25:02 constant 2 01:25:24 2: is constant 2 01:25:26 alise this is so cool 01:25:27 1: is constant 1 01:25:30 what do you mean adding constant 1, add howso 01:25:38 fax: j or finite calculus in general? :) 01:25:43 everything!! 01:25:48 j's array handling is awesome, and finite calculus is neat 01:25:52 very simple definitions 01:25:56 alise_: const n = \x -> n 01:25:59 yes 01:26:00 I need to start using J again, I've totally forgotton it 01:26:03 "add" constant 1 01:26:07 how do you "add" two functions 01:26:13 f+g = \x -> f x + g x 01:26:13 \f g x -> f x + g x? 01:26:19 yes 01:27:33 so basically 01:27:33 foo =: dyad : '(1 (2:integ) y)+1' 01:27:36 i would have thought J would have that as an easy operation 01:27:39 I have to go 01:27:40 bye 01:27:40 probably does 01:27:42 but I don't know it 01:27:45 isn't that what forks do? 01:27:52 forks are 01:28:04 x v y -> (x arg) v (y arg) 01:28:07 so I guess 01:28:08 but anyway 01:28:12 foo =: dyad : '(1 (2:integ) y)+1' 01:28:14 1 (foo integ) 1 01:28:14 0 01:28:14 1 (foo integ) 2 01:28:14 |domain error: foo 01:28:14 | +/ u x+i.y-x 01:28:15 :/ 01:28:20 yeah stuff like forks I struggled to learn 01:28:23 stoopid 01:28:27 i need monad duh 01:28:29 fax: it's easy 01:28:33 if you apply an operator to two functions 01:28:37 mind you fork is the only J think i know :D 01:28:38 then you get 01:28:43 \x. (f x) op (g x) 01:28:47 from f op g 01:29:02 alise_: mind you it's also ((1+).) in haskell 01:29:13 oerjan: ok this is just giving me constant 1 :) 01:29:35 2 (foo integ) is constant 3 01:29:54 same for all n>1 01:30:01 can't you integrate the function \x -> 2 ? 01:30:04 yes 01:30:14 1 (2:integ)"0 i.10 01:30:15 0 0 2 2 2 2 2 2 2 2 01:30:21 gives, uh, constant 2 :P 01:30:22 that's nto correct is it 01:30:24 should be 0 2 4 6 ... 01:30:25 more or less 01:30:31 more or less XD 01:30:47 fax: well if it is not then yours is wrong also 01:30:52 oh 01:30:54 i needed 2:"0 01:31:00 1 ((2:"0)integ)"0 i.10 01:31:01 0 0 2 4 6 8 10 12 14 16 01:31:18 foo =: monad : '(1 ((2:"0)integ) y)+1' 01:31:19 1 (foo integ)"0 i.10 01:31:19 0 0 1 1 1 1 1 1 1 1 01:31:21 altogether less interesting. 01:32:17 hm that's not quite right there shouldn't be two 0's first? 01:32:31 ah got it working 01:32:41 1 ((1&((2:"0)integ))"0 + 1:)"0 i.10 01:32:43 1 1 3 5 7 9 11 13 15 17 01:33:04 only 1 of the 1's should be there 01:33:16 otherwise the next step would fail, or? 01:33:17 i. 10 = 0, 1, 2, ..., 01:33:17 9 01:33:31 I like J 01:33:38 j likes you 01:34:39 -!- Asztal has quit (Ping timeout: 265 seconds). 01:35:03 It would be nice if J had the facilities to do symbolic stuff too. 01:35:05 alise_: now integrate one more time 01:35:08 Plus types; then we'd have the perfect language. 01:35:15 oerjan: as in ((f integ) integ), presumably 01:35:17 what happens if you integrate again?? 01:35:27 alise_: after adding the 1 01:35:32 1 (((1&((2:"0)integ))"0 + 1:)"0 integ)"0 i.10 01:35:33 0 0 1 4 9 16 25 36 49 64 01:35:35 the world asplodes 01:35:38 success! 01:35:39 theat's squares 01:35:40 :D 01:35:56 esolang idea: just integration and constant functions 01:37:03 :( deriv fails on an integ'd func 01:37:14 realy?? why 01:38:31 -!- fax has quit (Quit: Lost terminal). 01:38:35 (1&]integ)"0 deriv 1 01:38:35 |domain error 01:38:35 | ( u y+1)-u y 01:40:32 oerjan: what number did you say basic arithmetic fails at? 10^40? 01:44:00 possibly 01:44:10 were you serious? :) 01:44:26 hardly 01:44:43 -!- coppro has joined. 01:44:44 well it _could_ be 01:45:02 the number was of course pulled out of my ass 01:45:21 apart from being on the order of something cosmological 01:45:23 oerjan: ok do you believe there is some number n where arithmetic breaks down 01:45:34 in /theory/, not on computing machines 01:46:03 i do not positively believe there is such a number no 01:46:20 but i would not positively rule it entirely out either 01:46:53 prob=? 01:47:07 no 01:47:26 you've already got _one_ number out of my ass :D 01:47:42 i was asking for a number. 01:47:42 or is it too small to exist :) 01:47:50 and if there is one thing i _don't_ believe in, it's making up answers when you don't know things 01:48:18 ok then, prob>0.5? 01:48:31 i mean this is a question about your belief in its probability 01:48:51 i do not believe my belief is quantifiable 01:49:53 prob>0.5 is just a nerdy way of saying is it more likely than not in your opinion 01:50:04 i.e. do you err on the side of there is such a number - or not? 01:50:32 mu 01:51:18 you are one awkward bastard :) 01:51:40 it is a hypothetical possibility, for which i have absolutely no evidence one way or the other. how the heck should i assign a number to it? 01:51:57 synchronicity, a hypothetical possibility with no evidence one way or the other 01:52:39 i just _knew_ you'd say something like that 01:52:53 er... 01:52:56 i am a predictable guy. 01:53:01 but... i have a point 01:54:16 my evidence for synchronicity is immeasurably stronger than my evidence that there exists an inconsistent number. if you want to conclude from that that your asked prob<0.5 then be my guest. 01:54:37 but evidence for synchronicity isn't really, it's not actual evidence implying synchronicity 01:54:47 because your brain is designed to find causal relations 01:55:01 that doesn't mean there isn't any such thing and it's a valid belief... 01:55:07 but there is no actual quantifiable evidence for it 01:56:38 Major deadline coming up, and I think I'm going to switch to the pre-rewrite 01:56:49 Because a lot of stuff that still needs to be done in the rewrite was done here 01:57:05 Then why did you rewrite? 01:57:11 I did not. The other guy did. 01:57:16 I had no involvement. 01:57:19 also - lemme guess, there's no actual DEADLINE 01:57:26 because it's just a bunch of kids thinking they're professional 01:57:31 so they dreamt one up 01:57:40 marketing! pr! promotions! firing! Enterprise-quality code! 01:57:59 Well, AWI won't renew the guy in charge's citizenship if the deadline is not met 01:58:03 So yes, there is a deadline 01:58:14 Ooh, horrific. 02:04:58 Bye, everyone, until Friday. If anyone wants to talk to me... do it now. 02:05:11 bye 02:05:44 I have to be up in... less than six and a half hours. 02:05:56 Bye alise_. Wish your situation was resolved sooner :/ 02:06:02 Ditto. 02:06:05 Thanks. 02:06:07 Toodles! 02:06:09 -!- alise_ has quit. 02:28:49 -!- MizardX has quit (Ping timeout: 260 seconds). 02:35:16 -!- coppro has quit (Ping timeout: 240 seconds). 02:37:24 -!- coppro has joined. 02:49:03 Wowsers! 02:49:13 Apparently when I post a plea for people to munge comics on lonelydino.com , they actually do! 02:52:38 Whoa. 03:10:24 -!- Oranjer has left (?). 03:20:40 munge? 03:46:23 -!- Oranjer has joined. 04:28:42 -!- mibygl has joined. 04:28:51 So, they say that in Unix, everything is a file. 04:29:19 So, in Unix, what isn't a file? If a process doesn't have access to any files, what can it do? 04:29:38 Apart from creating files and accessing them. :P 04:30:06 mibygl: "Everything is a file" refers to the fact that all methods of communication (pipes, files, sockets, devices, etc.) are all accessed in exactly the same way 04:30:18 modern systems go even farther with /proc and /sys 04:31:45 Hmm. 04:32:26 -!- Oranjer has quit (Quit: Leaving.). 04:32:55 "Problem: I can't access any web sites because my Internet connection is down. Solution: use a USB drive to load Apache onto the affected computer and create a web site. It will then be possible to access that web site." 04:33:20 * mibygl coughs. 04:33:33 But anyway. 04:33:44 rright 04:34:56 Also, sockets are only files on fairly esoteric systems, e.g. Plan 9 and Hurd. 04:45:02 * mibygl ponders permissions. 04:46:08 They're pretty simple. Read, write, execute, setuid, setgid, sticky... is that all the permission bits? 04:47:43 -!- oerjan has quit (Quit: Good night). 04:48:57 Well, with the caveat that there are in fact three read bits, three write bits and three execute bits, yes. 04:49:16 Right. 04:57:21 I wonder how groups work. 04:59:23 Poorly. 04:59:43 Does each process have precisely one real and effective group ID? What do a user's other groups do? 05:00:17 Yes. Other groups allow the process access to files etc based on group permissions, but written files will be of the effective group. 05:00:48 -!- mibygl has quit (Quit: Page closed). 05:00:53 ... ohhhhkidokie. 05:00:58 -!- mibygl has joined. 05:01:10 Does each process have precisely one real and effective group ID? What do a user's other groups do? 05:01:10 Yes. Other groups allow the process access to files etc based on group permissions, but written files will be of the effective group. 05:01:42 So does a process have the group permissions of its own group plus all the groups its user is in? 05:01:51 Yes. 05:01:58 The assumption is that usually those overlap, but they don't have to. 05:02:13 (Also, I believe the details of that are not particularly solid, they vary from system to system) 05:02:31 ("system" meaning "operating system" in this case) 05:03:35 * mibygl nods. 05:03:44 Seems straightforward enough. 05:04:25 Then of course some unixen implement ACLs, and that system has complicated interactions with classic permissions. 05:06:30 Fun. 05:07:24 For instance, I'm fairly certain that SELinux implements ACLs (along with a trillion other things), but I have not one clue how they work.] 05:15:02 -!- myndzi\ has joined. 05:18:13 -!- myndzi has quit (Ping timeout: 264 seconds). 05:19:10 In my font, myndzi\'s i\ looks a lot like a lambda :P 05:33:59 -!- adu has joined. 05:37:53 hey myndzi\ :o 05:37:57 i havent seen you in a while 05:38:42 i'm surprised anyone remembers me, i wasn't exactly active i guess :P 05:38:45 -!- myndzi\ has changed nick to myndzi. 05:39:05 i think i didn't have the channel on autojoin or something 05:43:25 but you do now! :D 05:44:02 er.. one moment... yes, sure, yeah 05:44:03 ;) 05:44:45 good boy 05:45:53 man 05:46:16 i can do part-of-speech induction on a 5000 sentence corpus in about, oh, 3 seconds 05:47:22 that's cool 05:47:29 i always kinda wanted to learn about natural language processing 05:47:36 i dont. :P 05:47:42 its yawnfully boring 05:47:43 but everything i tried to look up on the internet was over my head 05:47:46 but whatever 05:47:51 oh! 05:47:54 want an introduction 05:47:55 ? 05:47:59 sure 05:48:26 step 1: generate a random model of the corpus 05:48:50 step 2: calculate the statistics based off of that model and compare it to the new data 05:48:55 step 3: update your model 05:49:00 step 4: goto step 2 05:49:02 ..what 05:49:03 :P 05:49:10 you think im joking 05:49:11 im not 05:49:23 no, i just don't know what statistics i'm calculating or what the model means 05:49:24 so much of NLP is basically that 05:49:26 hehe 05:49:31 any statistics you want 05:49:49 usually its just basic probabilities 05:49:51 so you're saying basically pick a random part of speech for every word, and then and correct it repeatedly? 05:50:11 so like, if some new sentence comes in, you update your predictions by just like, throwing the sentence into the model 05:50:14 its really stupid 05:50:20 that's rather disappointing actually 05:50:33 i thought that there would be a way to actually parse english grammar or something 05:50:40 when im done eating ill give you a more accurate picture 05:51:22 mmk 05:51:29 i guess that's why we have lojban eh? 05:51:30 :) 05:51:36 no. 05:54:01 sure! one of the reasons lojban was thunk up was to have a language that could be unambiguously machine-processed 05:54:07 that doesnt mean trivially learned. 05:54:15 oh, certainly not 05:54:21 i don't propose anybody learns lojban lol 05:54:44 it's an interesting idea, but i think i read somewhere that the words were basically randomly generated 05:54:50 there's no character to that 05:55:28 i wonder if there are many widely used languages that are much easier on NLP than English 05:55:35 i wouldn't be surprised at all 05:55:40 either way really, for different reasons 06:09:10 ok im done eating 06:09:20 so here is the current algo we're doing in class 06:09:58 first you assume that your input data is a probabilistic markovian process 06:10:05 this is false, but just pretend, because we're NLP people 06:10:52 mmk 06:10:56 so build a random fully-connected probabilistic finite state machine with state-wise write probabilities 06:11:10 that is, transitions are distinct from symbol writes 06:11:34 when you transition to a state, you write a symbol associated with that state 06:11:52 as opposed to writing a symbol associated with a particular transition. 06:12:14 yep, now i know *exactly* what to read about on wikipedia! :P 06:12:19 i'm sorry, i probably don't really belong here lol 06:12:25 actually i never went to college D: 06:12:26 wait, it gets BETTER 06:13:22 when a new sentences comes in 06:13:34 -!- coppro has quit (Read error: Connection reset by peer). 06:14:18 calculate the expected number of times that sentence should show up in a corpus of the size you have 06:14:36 (or when a new symbol comes in. its all the same.) 06:15:25 so the states in this case would be nouns, verbs, etc.? 06:15:32 then, using that re-normalize your probabilities, and this is your new model 06:15:41 the states would be whatever. 06:15:52 specifically for NLP 06:16:00 the number of states you need varies 06:17:05 i think i about have the gist of it, but what does this have to do with part of speech decisions? 06:17:29 oh, i guess they are learned from the arrangement of symbols in your corpus 06:17:37 and not explicitly defined 06:17:40 oh, the part of speech induction thing is a different task 06:17:53 but you could probably apply a similar thing to it 06:17:57 thats not how im approaching it, tho 06:18:00 ah 06:18:15 i was trying to read your description in the context of tagging parts of speech hehe 06:18:26 i probably used the term NLP wrong then 06:18:27 oh no, dont do that 06:18:40 what i described was sequence recognition 06:18:43 sentences, usually 06:18:50 is it a sentence or not 06:18:56 how likely is it to be produced 06:18:56 etc 06:18:57 i see 06:19:12 the POS induction im doing is not at all like that 06:19:28 POS induction is the part that sounded interesting 06:19:51 the whole induction probably is interesting 06:20:00 and thats basically what the sequence recognition thing is 06:20:05 one kind of induction problem 06:20:13 POS induction is just a special case 06:20:40 because words have a specific subset of parts of speech they can be? 06:20:40 the two become obviously related when you take it into the second dimension and start doing actual structure induction as opposed to markovian inductions 06:20:58 no just because words are a degenerate structure 06:21:35 your mom's a degenerate structure >:( 06:21:43 so basically, if you have a good algorithm for discovering that some sequences s1 = w1 w2 ... and s2 = x1 x2 ... 06:21:45 etc 06:21:49 are really the same thing 06:22:01 e.g. that "the dog" and "my cat" are basically the same kind of phrase, namely a noun phrase 06:22:11 yeah 06:22:17 then you can do that for the degenerate case where the "phrase" consists of a single symbol 06:22:27 which is just POS induction 06:22:44 im not sure if the converse is true 06:23:03 ie if you can do POS induction, then you can do structure induction 06:23:06 its probably not true. 06:23:32 well this is surely more than i knew about the subject before, but it won't sink in immediately 06:23:35 y u gotta use big words 06:23:59 dats hao i rol 06:25:02 my brother has a shirt with that phrase and a toilet paper roll 06:25:09 ..but the toilet paper is on backwards! >:( 06:25:28 lol @ wikipedia page on markov chain 06:25:29 This article may be too technical for most readers to understand. Please improve this article to make it accessible to non-experts, without removing the technical details. (July 2009) 06:25:32 amen! 06:26:12 indeed 06:36:32 -!- mibygl has quit (Ping timeout: 252 seconds). 07:01:03 OK, http://xkcd.com/714/ is pretty good :P 07:03:38 i'm not familiar with the source material 07:03:43 but presumably, it doesn't contain people fucking 07:09:02 Presumably. 07:28:52 hahaha 07:28:58 longing looks across the bridge of galactica 07:29:04 obviously her porn is guy on guy 8D 07:35:54 -!- tombom has joined. 07:36:34 what about, like, kara... 07:36:35 oh wait... 07:36:46 (also i don't remember who actually belongs on the bridge) 07:36:56 duvalla(sp?) at least, ya? 07:48:25 dualla 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 09:57:04 -!- clog has joined. 09:57:04 -!- clog has joined. 09:57:32 -!- MizardX has quit (Ping timeout: 268 seconds). 10:26:59 -!- lereah_ has joined. 10:42:00 -!- sebbu2 has joined. 10:42:33 -!- sebbu has quit (Ping timeout: 245 seconds). 10:42:33 -!- sebbu2 has changed nick to sebbu. 11:32:32 why is there no esolang for PONIES? 11:33:24 Ponies are pig disgusting 11:59:29 -!- ais523 has joined. 12:02:38 -!- kwertii has quit (Quit: bye). 12:09:29 -!- ais523 has quit. 12:09:49 -!- ais523 has joined. 13:10:01 -!- ais523 has quit (Remote host closed the connection). 13:26:22 -!- augur has quit (Ping timeout: 276 seconds). 13:27:01 -!- augur has joined. 13:35:48 NOOOOOooooooooooooooooooooo 13:50:55 -!- augur has quit (Ping timeout: 258 seconds). 13:51:28 -!- augur has joined. 14:01:58 -!- augur has quit (Ping timeout: 264 seconds). 14:02:33 -!- augur has joined. 14:06:53 -!- ais523 has joined. 14:07:34 -!- oerjan has joined. 14:09:38 -!- FireFly has joined. 15:02:04 -!- werdan7 has quit (Ping timeout: 619 seconds). 15:08:50 -!- coppro has joined. 15:10:09 -!- werdan7 has joined. 15:15:01 -!- Ilari has quit (Ping timeout: 260 seconds). 15:16:15 -!- coppro has quit (Quit: I am leaving. You are about to explode.). 15:36:49 http://www.youtube.com/watch?v=Jcn1rIliuBg 15:36:52 relevant. 15:43:09 -!- MizardX has joined. 15:51:56 -!- hiato has joined. 15:59:12 -!- oerjan has quit (Quit: Sick transit Gloria Monday). 16:24:42 -!- BeholdMyGlory has joined. 16:32:19 -!- kar8nga has joined. 16:37:20 -!- charlls has joined. 16:44:15 -!- sshc has quit (Ping timeout: 252 seconds). 17:02:44 -!- fax has joined. 17:06:04 -!- lament has quit (Ping timeout: 276 seconds). 17:08:17 -!- lament has joined. 17:26:36 -!- hiato has quit (Quit: underflow). 17:35:42 -!- MizardX- has joined. 17:35:44 -!- MizardX- has quit (Remote host closed the connection). 17:36:07 -!- MizardX- has joined. 17:38:12 -!- MizardX has quit (Ping timeout: 268 seconds). 17:38:35 -!- MizardX- has changed nick to MizardX. 17:58:20 * pikhq continues to think non-Unicode encodings should die 17:58:36 * fax thinks unicode should die 17:58:51 -!- sebbu2 has joined. 17:58:51 fax: Why? 17:59:04 if binary was good enough for Jesus Christ it's sure as hell good enough for me 17:59:08 Because you think it's simpler for there to exist several hundred character sets? 17:59:11 Hahahah. 17:59:18 seriously though unicode sucks 17:59:37 -!- sebbu has quit (Ping timeout: 264 seconds). 17:59:37 -!- sebbu2 has changed nick to sebbu. 17:59:45 The alternative is several hundred character sets. 18:00:12 I mean the idea of having lots of symbols is great, and stuff like ligatures and arabic writing is wonderful 18:00:29 but things like superscript digits and summation signs just ruin it 18:00:51 what we really need is something that does text AND something that does typesetting 18:01:14 (typesetting beyond the very basic, put each symbol after (or before if it's a RTL one) the previous) 18:01:47 Those are there because other character sets had it, and Unicode is meant to have the following property: fromUnicode . toUnicode == id 18:01:50 but what we have know is close enough to good that nobody solves the problem of typesetting (I mean look at IRC, HTML, and so on) 18:02:30 okay so I guess having actually written this out, it's not unicode I am against exactly 18:06:30 ½ 18:06:58 typesetting is crucial to proper functioning of the modern society 18:07:42 it's incredibly important to get all the ligatures and kerning correct 18:07:51 and WASH YOUR HANDS afterwards 18:07:56 :) 18:08:58 EUC-JP, ShiftJIS, and JIS in particular should die. 18:09:23 (there are four -- *FOUR* encodings in common use in Japanese. All incompatible.) 18:11:37 maybe the language itself should be abolished. 18:11:42 (EUC-JP is used because it doesn't break POSIX systems' minds, ShiftJIS is used because Windows used it, and JIS is 7-bit safe.) 18:11:51 Along with all other non-English languages. 18:12:03 Gregor: But first, let's abolish English. 18:12:43 idea suggested in another channel: use /b/ as an entropy source for /dev/random 18:12:47 good idea, or bad idea? 18:12:56 EXCELLENT idea. 18:13:03 ais523: Insufficiently random. 18:13:13 pikhq: for entropy sources, it doesn't matter 18:13:19 pure zeros does nothing, anything else makes it more random 18:13:27 Mmm. 18:13:34 Well then. Good idea. 18:14:34 I guess you could make a game that uses /b/ as input 18:14:55 kind of like tetris peices, except memes 18:16:12 -!- tombom has joined. 18:23:34 -!- lereah_ has quit (Remote host closed the connection). 18:28:46 -!- sshc has joined. 19:04:52 -!- MizardX has quit (Read error: Connection reset by peer). 19:05:55 -!- MizardX has joined. 19:10:03 -!- augur has quit (Ping timeout: 245 seconds). 19:16:36 fizzie, there? 19:19:25 Well, a bit busy. 19:19:29 But technically speaking yes. 19:19:37 fizzie, working on hugin thingy 19:19:56 sadly I have huge parallax, mobile phone camera 19:20:05 so not sure this will give anything usable 19:21:43 "Usable" is in the eye of the beholder, though. 19:25:11 fizzie, what about support beams that are off by 1/2 of their width or more? 19:27:04 It depends on what you are going to use it for. That sort of picture can still be usable if you just want to make a generic sort of "this is about what the view was like" statement. 19:27:33 fizzie, my mobile camera doesn't provide focal length or fov in the exif data btw, which makes me have to guess for something that works 19:28:27 wow at the rectilinear projection of this... 19:31:50 Mine doesn't write fov into exif either, but you can sometimes find that information elsewhere. 19:32:26 Though I guess the initial guess doesn't have to be very good if you optimizize it anyway. 19:41:30 fizzie, I need 9 non-vert/horiz lines to even get this to look like something from this world 19:54:21 -!- hiato has joined. 20:11:28 welcome back everybody 20:11:33 especially hiato i guess 20:11:50 -!- kar8nga has quit (Remote host closed the connection). 20:13:21 -!- pikhq has set topic: "Gwandocu (n): Extremely strong evidence, far beyond a reasonable doubt." | module Topic where aliseSighting :: IO Integer | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 20:15:31 good one 20:17:30 I like that topic 20:24:31 fizzie, doing a first stitch atm, if not too bad I will upload it somewhere 20:25:14 (using enblend due to being unable to get good enough fit for enfuse to be usable at all) 20:27:00 yeargh 20:29:41 well, uploading anyway 20:29:44 it might be interesting 20:30:29 fizzie, http://omploader.org/vM3VidQ 20:31:28 (I like that bench, it is always warm XD) 20:32:01 Needless to say... 20:32:08 uorygl, ? 20:32:20 AnMaster: I said "needless to say". That means I don't need to say it. 20:32:29 uorygl, don't need to say *what*? 20:32:38 It goes without saying! 20:32:53 uorygl, I have no idea idea what you are referring to :/ 20:34:46 don't say 20:35:22 hi 20:36:20 -!- kar8nga has joined. 20:38:22 -!- MizardX- has joined. 20:40:19 -!- MizardX has quit (Ping timeout: 258 seconds). 20:40:20 -!- MizardX- has changed nick to MizardX. 20:41:00 fizzie, so well, what do you think of it? 20:41:32 The window frameworksy aren't any worse than that at-the-work-place mobile-phone shots I did. Is this where? 20:42:27 -!- oerjan has joined. 20:46:15 10:12:43 idea suggested in another channel: use /b/ as an entropy source for /dev/random 20:47:22 coming next: Anonymous carefully manipulates /b/ to hack computer cryptography by messing up /dev/random 20:48:07 that's supposed to be impossible 20:48:41 fizzie, "is this where"? 20:48:53 "where is this" 20:48:57 Yes. 20:49:00 oh 20:49:05 Finnish influences? 20:49:10 oklopol: 21:08 < oklopol> especially hiato i guess 20:49:13 fizzie, Örebro Universitet 20:49:13 thanks :) 20:49:15 possibly 20:49:28 fizzie, this is the rather messy enfuse result: http://omploader.org/vM3VjMQ 20:50:12 hiato: i didn't notice someone had just joined so i had to acknowledge that my comment happened to made sense :P 20:50:22 I wonder if one could do stereo image from this 20:50:24 perhaps not 20:50:41 "Where this is?" might be the canonical word order for Finnish, but we're a bit more flexible about that; "is this where?" (or "onko tämä mistä?") doesn't sound *so* confusing. 20:50:43 it would have to figure out where the camera was... which is likely to be hard 20:50:46 oklopol: hahaha, nice. Well, 'tis the thought that counts anyway :P 20:51:00 fizzie, "where is this" in English even afaik 20:51:05 not "where this is" 20:51:06 :/ 20:51:13 oh 20:51:18 Finnish, not English 20:51:20 I need to sleep 20:51:23 so I can read properly 20:51:24 heh 20:51:24 "where this is" makes no sense, "is this where" almost does 20:51:26 Hmm, "is this where?" is a double question. 20:51:52 Well, I guess "where" can mean "the place" rather than being a question word. "Is this the place?" 20:51:54 well, in context, where this is, means something. It was "where this is" and "is this where" it was 20:52:05 uorygl: precisely 20:52:10 I was expecting "is this where happened" 20:52:12 or such 20:52:21 "Onko tämä mistä?" is maybe closer to "is this from where?" 20:52:33 oh well in uorygl's sense it makes total sense 20:52:35 fizzie, what did you think about the enfused variant? 20:52:41 but, by that token, "this is where" some gruesome event happened makes sense too, though not a question 20:52:42 notice the weird art out there 20:52:52 I have no clue what it is supposed to look like 20:53:00 or be 20:53:06 Interpreted straight, "is this where?" is asking whether it's in a certain place and also asking what that place is. 20:53:19 couldn't you say something like "you found this where exactly?" 20:53:39 AnMaster: It looks pretty typical as far as enfuse-with-unaligned-sources material go; my no-tripod shots often seem to end up as "blurry". 20:53:43 yeah, but that's a cultural thing as opposed to grammatical 20:53:46 fizzie, however, in the parts where enfuse *did* manage to merge nicely it increased detail level and removed jpeg artifacts quite nicely 20:54:10 It's easy to do that in Lojban. "xu zvati ma" means, verbosely, "True-or-false: it's at what-place?." 20:54:21 hiato: was that response to me? i'm just saying that sort of usage exists, the kinds where "is this where" = "where is this" 20:54:29 fizzie, I actually started out wanting to take photos of the long ice taps hanging down (was even worse a few weeks ago) 20:54:37 *kind 20:55:07 oklopol: yeah, it was. I guess, but that is stertching, as the one is a question (starts with a verb) whereas the other is a subjunctive clause, or part of it IIRC 20:55:21 uorygl: "xu zvati ma" does not mean "is this where" in the sense of "is this the place" 20:55:26 AnMaster: By "ice taps", do you mean the icicles? 20:55:36 stalactites? 20:55:38 fizzie, oh that is the English word, is it? 20:55:41 oklopol: right. 20:55:44 fizzie, but yes 20:56:03 hiato: no it's just "where is this" vs "where did you find this", and "is this where" vs "you found this where" 20:56:18 it just doesn't make sense for a short sentence 20:56:47 well i don't know about subjunctive clause, but they are definitely the exact same thing 20:56:59 uorygl: in fact i'm not sure it means anything 20:57:07 or umm 20:57:16 i guess it means, supply whether somewhere, supply where 20:57:24 (if somewhere) 20:57:41 oklopol: right. Now I'm confused. The first two ("where is this" and "where did you find this" are completely different, in both tense and meaning, explicitly and impliticly), the second two are closer related, but still have different meanings and are not interchangable 20:58:25 or, are you talking about a context, as opposed to taken on their own? 20:58:34 "this is" and "you find this" are both normal sentences, you're just asking where those things happen. 20:58:46 er, right 20:58:57 "where does an elephant eat its baby", "the elephant ate its baby WHERE?" 20:59:13 hmm 20:59:17 but, "Where is this?" and "Where did you find this?" are different in meaning, but perhaps not necessarily answer 20:59:34 fizzie, anyway, I think I shall have to get a compact camera that produces raw. That is, my normal camera is way too bulky to just put in a pocket in the backpack 20:59:35 "This is Alaska" vs "On a map" 20:59:38 actually the elephant thing corresponds better to "this is where?" 20:59:44 and the one in the mobile phone is very bad quality 20:59:57 so something like a compact high end camera would be perfect 21:00:05 and light 21:00:16 okay yeah i'm not sure "is this where" makes sense 21:00:16 my normal camera is too heavy as well 21:00:35 "you read this where" is also "this is where" 21:00:38 oklopol, now figure out "this where is" 21:00:56 oklopol: as a unit, it doesn't. It can only make sense as part of a larger sentence, acting as the main verb as opposed to part of the predicate 21:01:06 This is where it is at. 21:01:30 and "you read this where" is horrible abuse of grammar and doesn't actually make sense if read like that 21:01:34 hiato: or in the sense uorygl said. that's a bit irrelevant 21:01:45 Bot-tweetery: "About IRC: further discussion would be fruitless. you have to stop doing scheme and do something less kludgish, so... :p i'm not sure" 21:01:45 as opposed to "You read this? Where?" 21:01:51 lol 21:01:55 no that's not what i mean 21:02:39 fizzie, btw I use hugin to merge and perspective correct photos of overheads from lectures 21:02:47 it works quite well even from the mobile phone 21:03:18 since it is basically no parallax, and even if there is it is all on one plane (the projection) 21:03:33 sure "you read this where?" is horrible, but "you saw this where" gives 114000 google hits 21:03:48 well 21:03:57 most are probably not in the sense i mean 21:04:00 but first result is :P 21:04:06 hardly a grammatical argument if google is involved :P 21:04:07 oklopol, that works when "where" is stressed. Like in shock or surprise 21:04:09 wait no 21:04:14 but at least one is! 21:04:18 on the first page 21:04:20 AnMaster: Don't your people publish that sort of stuff over the interwebs? (Though we have photographed the blackboards on some lectures.) 21:04:28 AnMaster: yes that's the point 21:04:43 what you're seeing is "you saw this where " 21:04:44 fizzie, well, I write down the stuff from the whiteboards. But no, not overheads afaik 21:05:04 no i'm not 21:05:13 then it can't be a question 21:05:16 fizzie, considering that teacher is not the most apt with computers (he teaches electricity, currently about AC) 21:05:19 most on the first few pages are "you saw this where" in the sense "where did you see this" 21:05:26 in fact, it cant ever really be a question oklopol 21:05:40 that's cause interwebz kiddies are shtoopid 21:06:01 i'm sure some of them are native speakers. 21:06:15 AnMaster: Ah, yes. I guess we've got a few cases who have only handwritten non-computerized stuff. But everyone else as a rule publishes most lecture material in the System we have. 21:06:35 oklopol while true, the native and grammatically correct speakers are a minority 21:06:36 fizzie, or rather, he seems to not use computers unless he have to. Considering he is rumoured to teach VHDL as well I don't know what to make of it 21:07:17 in fact, in germanic languages, that construction just doesn't work: "jy het dit gesien waar?" makes as little sense as it does in english, in afirkaans/dutch 21:07:33 fizzie, but yes, in general many seem to use hand written notes for the lectures. Well, not the math teachers, they all use latex 21:07:36 Heh, "rumoured to teach VHDL" sounds nice. It's like VHDL is some sort of dirty secret. 21:07:36 hiato: well it's true the prescriptivist answer might be that the construct is not grammatical, but i'm pretty sure it's not just shtoopid internet kids who use it. 21:07:42 *interwebz kiddies 21:08:01 fizzie, XD. (never mind that the math teachers often depart from their lecture notes) 21:08:10 it's a normal colloquial construct, emphasizes where 21:08:22 heh, +3 for the correction oklopol, but fair enough, it has been assimilated, just as the double negative has "You aint going nowhere" 21:08:25 -!- MizardX has quit (Read error: Connection reset by peer). 21:08:26 fizzie, well, I will have some VHDL in the next course iirc 21:08:33 so I guess I'll get to know that then 21:08:49 that, however, doesn't mean it actually makes sense within the rules of the grammar, rather that it has an accepted meaning 21:09:14 amongst native speakers in specific envirnments 21:09:40 hiato, "all but" is a strange idiom 21:10:00 (about as strange as "You aint going nowhere" is to me) 21:10:06 well i dunno bout dat 21:10:23 AnMaster: if anything, it is more grounded in English than most others. It's very arcaic, and I have yet to meet someone who uses it readily 21:10:25 Well, "all but" makes more sense than it can seem to. 21:10:36 hiato, uses what? "all but"? 21:10:43 All but John ate the food. 21:10:45 yes 21:10:45 If something is all but destroyed, it's been damanged in every possible manner except for destroying it. 21:10:48 by which i mean "yes maybe, i don't know" and not "you're wrong" 21:10:49 in that context 21:11:06 hiato, seen it in literature. Oh btw I tend to use archaic Swedish just for the fun 21:11:08 If somebody all but kills you, you're only barely alive at the end. 21:11:15 I couldn't manage that in English 21:11:22 uorygl: only strictly speaking 21:11:28 AnMaster: I try it :) 21:11:58 though, there is the alternative construction "save", eg: "He ate it all save the rice" 21:12:14 where "all but" is nonsensical 21:12:30 i don't think save is the same as all but 21:12:38 hiato, you would get double "all" without it? 21:12:43 It seems that "all but" is only an idiom when it precedes an adjective, or even only when it precedes a past participle. 21:12:47 oklopol: oh? 21:13:11 hiato: well for one thing, "all but" is nonsensical in your example :) 21:13:19 uorygl: I'm almost sure it's not called an idiom, that would be more like "Two wrongs don't make a right" 21:13:50 as opposed to an adage which is something like "A penny saved is a penny earned" 21:13:50 Are we talking about "he ate it all but the rice" or about "he ate it all all but the rice"? 21:13:56 does either of those make sense? 21:13:57 "Two wrongs don't make a right" and "a penny saved is a penny earned" are the same type of phrase. 21:14:04 "He ate it all but the rice" seems to make sense to me. 21:14:19 yes, oklopol, that's what I'm saying, they are equivalent, but not interchangable 21:14:25 well if you think of "but" as "except", but i mean if you think of "all but" as "all but" 21:14:35 uorygl: they are subtley different, and hence are either idioms or adages 21:14:52 -!- MizardX has joined. 21:14:52 and, he ate it all but the rice doesn't actually make senes 21:14:57 hiato: can you show me where they are interchangeable? if their uses are completely separate, then i'm not sure they can be considered the same :P 21:15:09 they are similar, sure 21:15:23 oklopol: "..they are equivalent, but not interchangable..." 21:15:24 ;) 21:15:35 yeah but what does that mean 21:16:13 ah, well, by that I meant that they express the same concept through the same consturct: list exclusion has the same meaning forall list and exclusion 21:16:20 "Two wrongs don't make a right" <-- unless left twice was same as right 21:16:27 but the grammar is subtley different, so not interchangeable 21:16:34 AnMaster: heh 21:16:34 You could say that in Haskell, "" and [] are equivalent but not interchangeable. 3:[] is a valid expression while 3:"" is not, even though [] and "" are equal. 21:16:45 uorygl: nice example 21:17:40 the issue I have with "all but" is that it *doesn't* mean "all except" 21:17:52 uorygl: "An adage (pronounced /ˈædɪdʒ/), or adagium (Latin), is a short but memorable saying that holds some important fact of experience that is considered true by many people, or that has gained some credibility through its long use. It often involves a planning failure such as "don't count your chickens before they hatch" or "don't burn bridges behind you." Adages may be interesting observations, practical or ethical guidelines, or p 21:17:58 okay in what sort of sentence do they mean the same thing, if not actually syntactically interchangeable? 21:18:00 AnMaster: [citation needed] 21:18:18 hiato, well, at least sometimes it doesn't mean that, unless I'm confusing things 21:18:41 AnMaster: well, it sort of does mean that. 21:18:41 well okay "all but" can also mean "all except", but the sense used in "he all but killed me" i don't think "save" can ever do 21:18:43 hiato, also second meaning at http://idioms.thefreedictionary.com/all+but 21:18:47 oklopol: Of his belongings, he took all but the sink VS He took his belongings save the sink 21:19:20 -!- oerjan has quit (Quit: Later). 21:19:21 oklopol, try "almost" 21:19:22 yeah but that's not the actual construct "all but", that's just a sentence where "all" and "but" are adjacent :P 21:19:22 though, the second would need qualification 21:19:31 oklopol: yes it is 21:19:44 If he all but killed me, then he didn't give me a shower, bandage my wounds, or give me a haircut. 21:20:09 And he didn't kill me. 21:20:17 hiato: well whatever, i don't think were actually arguing about anything :P 21:20:19 uorygl: you can't really use "all but" in that construction. It usually doesn't refer to degree of action so much as exclusion from a list 21:20:21 *we're 21:20:27 oklopol: agreed 21:20:42 You can't say "he all but killed me"? 21:20:45 "hiato: uorygl: you can't really use "all but" in that construction." <<< yes you can, it's the meaning uorygl has been talking about all the time 21:20:49 and it's the one i said save can't do 21:21:21 uorygl: not unless you were an uneducated peasant living in post-Elizabethan england 21:21:27 like all but do something, all but some adjective. not "all but" as in "all except" 21:21:42 oklopol: he used in in degree 21:21:48 you're showing me exclusion 21:22:14 well obviously exclusion is what save does, but i was never talking about that usage 21:22:34 "save" and "all but" are the same when "all but" is "all except" 21:22:54 if that's what you've been saying, then yeah we weren't arguing about anything 21:23:31 To take his example to it's logical maximum: He all but painted yellow is fine, but He pianted it all but yellow (where all but is the degree of painting it yellow) is silly 21:23:43 oklopol: then I guess we're not 21:24:17 i am a potato, i am a macaroni 21:24:27 wait, bad example, but I hope you see what I mean 21:24:27 I guess I'm going to simply contradict you and say that "he all but killed me" is indeed a valid way of saying that he wounded me in every possible manner short of killing me. 21:24:52 now there's another equivalent yet not interchangeable consturction: short of 21:25:22 but, uorygl, it's not so much a strict grammatical rule as a manner of interpretation 21:25:36 I think we broke oklopol: 22:21 < oklopol> i am a potato, i am a macaroni 21:26:21 * hiato sighs, realising English has too many exceptions for its rules to be called rules in the first place 21:27:04 There are rules that are broken rarely if ever. 21:27:19 rules that can be broken are cooles, says this dude 21:27:27 Rules that broken, rarely if ever, are present 21:27:40 *are 21:27:56 rarely, if ever, are some rules broken 21:28:15 The determiner always comes before the noun, never after. 21:28:19 Yeah, I'm at the end of my string 21:28:26 oklopol: I like that 21:28:29 Not even the most foolish of fools would accidentally say "dog the" for "the dog". 21:28:30 what's a determiner 21:28:32 uorygl: a determiner? 21:28:35 hiato: why :o 21:28:42 A determiner is pretty much an article. 21:28:45 oh that sort of determinator 21:28:51 oklopol: cooles, it's catchy :P 21:28:55 ah! 21:28:55 yes 21:29:12 the acts of you liking it are cooles 21:29:27 A/an, the, my, your, his, her, its, our, their, Alice's... 21:29:37 uorygl: Fair enough, but, again, the exception does not make it the rule 21:29:58 Huh? 21:30:27 the exception to the exception of the rules being malformed is not the rule of the exception of the rules being malformed 21:30:32 "huh" means "whew" in finnish 21:30:32 (take that, grammar gods) 21:30:42 where whew means? 21:30:50 load of my back 21:30:55 *off 21:31:00 of, phew type thing 21:31:01 right 21:31:04 Well, I said that there are rules without exceptions, not that most rules don't have exceptions. 21:31:14 uorygl: then we have no fight 21:31:21 but I will make one if possible 21:31:26 And there are lots of "rules" that simply say that something is true most of the time. 21:31:39 Most of the time, the subject precedes the verb. Most of the time, all phrases are contiguous. 21:31:55 s/all// 21:32:50 Most of the time, "me" is an object pronoun. 21:32:53 -!- ais523 has quit (Remote host closed the connection). 21:33:18 fundementally, I hate the rules of stress: it should be that the penultimate syllable recieves the stress in the word, hence paRABola not PARAbola but, then we get TElevesion not teleVISion or DIfficulty not diFICULty 21:33:30 and so on and so forth 21:33:43 But "Are we there yet?" is an exception to the first, "I want to slap the person in the face who did that" is an exception to the second, and "Me and Andy are going to the store" is an exception to the third. 21:33:44 so it's these inconsistencies that annoy me, as I'm not a native speaker 21:34:21 If you were to stress the penultimate syllable, you would have "paraBOla", not "paRAbola". 21:34:31 And the "ficul" of "difficulty" is two syllables. 21:35:04 uorygl: but, convention prohibits the latter two examples. Never end in a preposition, and the reflexive personal pronouns have lowest priority 21:35:21 yes, my bad to those two 21:35:40 and how is "paRABola" penultimate 21:35:46 It seems that we inherit a lot of our stress rules from Latin. 21:35:47 I live in a country where english is a minority language, so emphasis is strange 21:36:13 I would tend to agree 21:36:17 And, unfortunately, the stress cues are now totally gone, so we just have to look everything up in a dictionary. 21:36:23 emphasis should be on the first syllable, so you know where words start 21:36:52 Lojban has a pretty complicated system for telling you where words begin and end. 21:36:55 oklopol: imagane saying "IMageen SAyin" 21:37:08 or SUyin 21:37:17 uorygl my memory fails me 21:37:27 It's, like... 21:37:52 hiato: it would be a more beautiful english 21:38:23 Once you hit a pair of consonants in a row, everything from then on is a single word up to the syllable after the next stressed syllable. 21:38:42 So if you have "babababablababaBAbababa", then "blababaBAba" is a single word. 21:38:54 oklopol: I beg to differ. English is beuatiful in that it is the quintessential natural language. Full of quirks and relics of the past, assimilations from long forgotten languges and silly human tendancies come grammar rules 21:39:34 what is beauty? 21:39:45 uorygl: that must be rather complex to speak fluently, as it requires an analysis of the language, as opposed to isolated understanding of terms/phrases 21:39:55 Also, the last consonant before the consonant pair, and all the vowels after that, are included in the word if and only if the word would otherwise be only one syllable. 21:39:58 lament: your mother 21:39:59 still speaking about language? 21:40:01 -_- 21:40:04 hiato: well okay i guess i agree 21:40:17 lament, good queston 21:40:22 question* 21:40:26 lament: shut up and sleep with me 21:40:27 tell me if you find the answer to it 21:40:45 Finally, once you've identified words using those rules, every consonant has its own word. 21:40:52 *-and sleep with me 21:40:52 lament, but I heard it can be found in the eye of the beholder 21:41:04 no i won't sleep with you 21:41:08 uorygl: I could never talk it 21:41:10 lament, so clearly you need to dissect your own eyes to find out :D 21:41:14 lament, what about me? 21:41:15 hiato: well, not really; in practice, these rules simply place restrictions on what words are possible. 21:41:24 lament: i removed that part 21:41:30 hiato: not you either 21:41:42 i realized you are canadian and i'm racist 21:41:44 lament, get started with it :) 21:41:45 * hiato shies his head in sorrow 21:41:58 hiato: so it really becomes the same sort of "identify the words; those are where the words are" that natural languages are. 21:43:38 uorygl: I guess, but it all sounds far too little like a language and more like a programming language to me. Though I realise its goal is to be machine parsable. But still, words should not have different "arguments" to them, opreators should not have strange precedence and so on, if a language is to be understood and spoken as opposed to learned and recalled 21:44:35 English has arguments! 21:44:56 In the sentence "I threw the ball to John", the arguments of "threw" are "I", "the ball", and "to John". 21:45:17 -!- augur has joined. 21:45:54 And there's really not much strange precedence stuff; the rule is simply that everything is greedy. 21:46:13 I don't believe they are arguments. For example, the ball was thrown from me to john. Are you now going to say taht Eng can be RPN? 21:46:39 Well, "arguments" is what they're called! 21:46:53 there are no markers to say that John, Ball and I belong to throw, as opposed to ball and throw belong to John 21:47:03 or that all of it belongs to was 21:47:25 What's argument-y about Lojban's arguments that's not argument-y about English's arguments? 21:49:21 you cant say that throw "operates on" or "requires" "argumenst" in any manner in Eng. In any natlang, well, I guess isolating ones, each verb needs no qualification, or can be arbitrarilely qualified. It can't specify how many or what form its qualifications can take anymore than any other part of speech. In fact, if anything, there will generally be an alternate construction that, without any delimiation has a similar if not identical meani 21:50:36 the trivial example of which is active VS passive, wherein, if anything is to be considered an argument in the first, it can be considered an operator in the second. Unless you now say that Natlangs have first class "verbs" that can be parsed to other verbs and verbs can return "verbs" and so on 21:51:16 Well, likewise, in Lojban, each "verb" takes whatever number of arguments you feel like passing to it. 21:51:44 whereas, in Lojban, you have fi, fo, and what have you that need to be specified if the "arguments" are "parsed" out of order 21:53:08 Well, you have that stuff in English, too. You can't say "Patrick ate John" by saying "John ate Patrick". 21:53:19 but in english: Throw the right ball on your right to my left OR Throw to my left that ball that is on your right OR The ball that is on your right must be thrown, relative to me, left (assuming it was a command) 21:53:36 No, that is confusing subject and object with qualifications 21:53:52 Well, Lojban has both sorts of things. 21:54:08 again, you cannot manipulate like that without delimeters 21:54:37 and or specific constructions to change the manner in which verbs "operate" on their arguments 21:54:52 In Lojban, there are two things corresponding to prepositions, which are argument slots and modals. 21:55:09 Doesn't the name give it away? 21:55:22 A verb may be considered a function, as oppose to a concept 21:55:25 Give what away? 21:55:37 It's not a function, it's a relation. 21:55:43 which are argument slots 21:55:56 To me relations don't need arguments 21:56:03 and most certianly not in specific slots 21:56:06 No? 21:56:31 Doesn't a relation say that a specific thing is related to a specific other thing in a specific way? 21:56:32 if qualification is desired, it may be given in any manner of ways, as opposed to conforming to an expect construct per verb 21:56:53 John is bigger than Peter. We don't say how John is bigger 21:57:12 How do you say "I eat pizza" without using the construct that "eat" expects? 21:57:17 just that, by size, they are related 21:57:28 eat does not expect a construct, that's what I'm saying 21:57:36 English expects (mostly) SVO 21:57:41 that's it 21:57:53 "Is bigger than" has exactly two slots, no more, no less, and each one goes in a specific place. 21:58:22 I eat a pizza - has the same constuction as I throw a pizza and I sling a pizza etc etc 21:58:25 If all you were saying is that John and Peter are related by size, then "John is bigger than Peter" and "Peter is bigger than John" would mean the same thing. 21:58:31 ENGLISH is what specifies order, not verbs 21:58:45 THere is no verb that can ovveride SVO 21:58:49 uorygl, err, ternary "is bigger than" would be fun 21:58:49 I dare you to find one 21:58:51 Likewise, in Lojban, you use precisely the same grammatical rules for all "verbs". 21:59:33 In lojban, some verbs take subject, object then (eg) position, others are object only, some still are position relative to subject in manner and so on 21:59:47 But they all use precisely the same grammar. 21:59:49 where each verb has an overriding say in what follows int 21:59:51 no 21:59:54 they don't 22:00:20 So what's an example of differing grammar? 22:01:15 you can't tell me that WALK 1.left 2.relative to John is the same as EAT 1.fast 2.John's food 3.on the left 22:01:27 If the third slot of EAT specifies location 22:01:32 then location goes there 22:01:40 whereas the third slot of DRIVE may specify time 22:01:46 and you can't put location there 22:02:30 So you're saying that in Lojban, the thing denoted by a slot varies by what the verb is? 22:02:32 here, the language has no say in what order/what type of slots go where, why? Because each verb is different 22:02:40 Yes 22:02:55 If WALK expects 1.direction 2.speed 22:02:56 Well, heck, English does that, too. 22:03:07 it would be nonsensical to write WALK 1.fast 2.left 22:03:13 but, in english 22:03:18 I walk to the left, quickly 22:03:25 I walk quickly to the left 22:03:30 "Boil" takes one thing in its subject slot, "jump" takes a different thing in its subject slot. 22:03:41 uorygl you're not seeing my point 22:04:18 not what it takes, but the order. SVO *is* English. Lojban, verbs specify what comes where 22:04:43 22:57 < hiato> where each verb has an overriding say in what follows int 22:05:19 see what I mean? 22:05:22 I can give you an example of two verbs in English that mean the same thing but take their arguments in different slots. 22:05:34 In English, "X likes Y" and "Y pleases X" mean the same thing. 22:05:53 -!- augur has quit (Ping timeout: 245 seconds). 22:06:00 In the something-likes-something relation, there's no inherent subject or object there; English verbs assign them arbitrarily. 22:06:11 no, they don't, and again, you're confusing the matter with SVO and the order VERBS take qualification 22:06:24 it's not who does what, but the what is being done that gets qualified 22:06:32 and that's where the difference is 22:07:04 I think I've lost track of what your point is. 22:07:18 (either way, John likes Mary and John eats Mary - both times English assigns SVO, verbs have no say) 22:07:26 eh 22:07:45 I tire, so I'm gonna hit the sack 22:07:55 but, re-read over the logs for what it's worth 22:07:57 Lojban also has SVO! You put the x1 before the verb, and the x2, the x3, the x4, and the x5 after! 22:08:04 it woujld seem we're saying different things 22:08:12 Maybe so. 22:08:12 -!- adu has quit (Quit: adu). 22:08:12 and so arent arguing about anything 22:08:26 Whatever it is, it's your fault. :P 22:08:44 yes, I agree with taht SVO in lojban, but that is not how the verb qualification works. X1 may not be subject, X2 may not be verb etc 22:08:49 heh, whatever :P 22:08:53 anyway, cheers 22:08:57 it's been interesting 22:09:03 as always on this channel 22:09:23 -!- hiato has quit (Quit: underflow). 22:09:26 In English, the subject slot may not be the x1, the verb may not be the x2, etc. 22:09:40 The subject/object distinction is just as arbitrary as the x1/x2/x3/x4/x5 distinction. 22:22:09 -!- MigoMipo has quit (Ping timeout: 276 seconds). 22:28:07 uorygl, x? 22:28:34 also stop talking about non-esolangs for a momement :/ 22:28:39 moment 22:28:39 ' 22:28:46 s/'/*/ 22:29:30 x1 x2 x1 x1 x2 x3 x1 x2 x3 x1 x4 x5 x6 x7 x2 x5 x1 22:29:36 x1 x4 x4 x4??? 22:30:38 lament, I just have no idea what they mean 22:37:30 -!- coppro has joined. 22:45:47 -!- Ilari has joined. 22:58:51 -!- MigoMipo has joined. 23:10:45 -!- Phantom_Hoover has joined. 23:13:13 -!- Ilari_ has joined. 23:14:00 -!- Ilari has quit (Quit: leaving). 23:14:01 -!- Ilari_ has changed nick to Ilari. 23:14:16 -!- augur has joined. 23:19:46 Hello? 23:20:32 Good day to you too, sir. 23:20:33 Erm 23:20:34 Hi 23:21:01 Hello. 23:21:08 Who maintains the wiki? 23:21:37 It's using an *incredibly* out-of-date version of MediaWiki. 23:24:25 is it out-of-date enough to be esoteric? if not, we just have to wait a while :) 23:25:17 olsner: lawl 23:25:23 It should be running Hackiki ^^ 23:25:23 -!- tombom has quit (Quit: Leaving). 23:25:35 Seriously, who does maintain it? 23:25:57 The ever-enigmatic graue. 23:26:14 hackiki? reminds me of a kebab place here that's called hakepi 23:26:29 olsner: http://hackiki.org/ But instead, it's the GREATEST WIKI SOFTWARE EVARS 23:26:56 Gregor: but it will not feed me! 23:27:00 AnMaster: Whiteboard scribblings from a lecture: http://www.cis.hut.fi/~itniemin/lumileopardi.jpg 23:27:05 olsner: Won't it? WON'T IT? 23:27:18 fizzie: Useful. 23:27:24 I suppose you could write a wiki using Brainfuck and CGI. 23:27:47 Gregor: I VERY MUCH DOUBT that it will 23:27:49 Though the tape would need to be *enormous*. 23:28:08 Haaaaaaaa 23:28:10 Ckiiiiiiii 23:28:11 ooh, actually, we could write the wiki in mod_rewrite! 23:28:12 Kiiiiiiiii 23:28:41 just needs some storage api, but that can be built external to the rewriting 23:29:05 Gregor: It's a visualization of the positive and negative border; it's about finding frequent itemsets in data; and the thing that looks a bit like pi to the zeroth power with a hook on it is actually a snow leopard. 23:29:33 mod_rewrite is horribly inefficient though, it'll run out of memory in notime 23:29:47 Phantom_Hoover: HA 23:29:49 olsner: CKI 23:29:51 fizzie: KI 23:30:22 Gregor: meh 23:30:24 (This is the only kind of software evangelism I know how to do :P ) 23:30:32 olsner: Meh? D-8 23:31:11 -!- kar8nga has quit (Remote host closed the connection). 23:31:14 "CKI"? "KI"? 23:31:20 AnMaster: Whiteboard scribblings from a lecture: http://www.cis.hut.fi/~itniemin/lumileopardi.jpg <-- quantum physics? 23:31:30 Phantom_Hoover: "Hackiki" :P 23:32:03 AnMaster: picture of a clown? 23:32:04 Hackiki is actually pretty awesome. 23:32:12 I suppose if that ESO OS (first on the forum) gets working you could hack together an HTTP server. 23:32:40 And yes, Hackiki looks cool. 23:33:00 hmm, maybe multi-process postscript or something :) 23:33:12 -!- Oranjer has joined. 23:33:24 olsner: D-8 23:33:32 AnMaster: Like I described it to Gregor: "It's a visualization of the positive and negative border; it's about finding frequent itemsets in data; and the thing that looks a bit like pi to the zeroth power with a hook on it is actually a snow leopard." 23:33:33 "D-8"? 23:33:42 I'm not good at acronyms. 23:33:47 Clearly. 23:33:55 "Date"? 23:34:03 I was rolling 1 negative-8 sided die. 23:34:13 Ah. 23:34:24 Everyone else: Was that too mean? :P 23:34:44 Phantom_Hoover: Lean your head to the right :P 23:34:44 maybe 23:34:49 I'm now thoroughly confused. 23:35:11 Phantom_Hoover: 本当に?グレーが君がやったね! 23:35:12 it's a smiley 23:35:27 s/グレーが/グレーガ/ 23:36:16 although it's the very opposite of a smiley, in some sense 23:36:24 in some other sense it is exactly a smiley 23:36:35 It's a megafrowny 23:36:49 (then again, the negative-8 sided die is also a sense, so I'm not saying much here) 23:37:15 (*echm* Really? Gregor has succeeded!) 23:38:07 Must dash. 23:38:08 -!- Phantom_Hoover has quit (Quit: ChatZilla 0.9.86 [Firefox 3.5.8/20100214235838]). 23:38:37 I'm certain there's another way to represent "must dash" 23:39:18 行くはず。 23:39:20 ^ That? 23:39:45 shouldn't that be a 'ki' rather than 'ku'? 23:39:59 olsner: Should it? 23:40:50 it depends on how you read the other characters 23:41:22 `fetch http://pastebin.ca/raw/1841805 23:41:32 2010-03-15 22:41:08 URL:http://pastebin.ca/raw/1841805 [445] -> "1841805" [1] 23:41:44 Should definitely be く. 23:41:53 `run mv "1841805" bin/roll ; dos2unix bin/roll; chmod 0755 bin/roll 23:41:57 No output. 23:41:59 `roll 55d6 23:42:01 No output. 23:42:04 Whoops 23:45:26 -!- MigoMipo has quit (Quit: When two people dream the same dream, it ceases to be an illusion. KVIrc 3.4.2 Shiny http://www.kvirc.net). 23:45:38 Mmm. はず is probably wrong in this context, though. Should be more 行かなくちゃ。 23:46:09 i'll hazu your ikanakucha 23:46:11 -!- jay has joined. 23:46:17 HI 23:46:27 augur: Hah. 23:46:39 -!- jay has changed nick to Guest31015. 23:46:40 jay: ようこそ。 23:47:21 Hello Mr. Anonymous Guest 23:48:04 私は、私はGoogle翻訳を使用して日本語を話さない 23:48:20 haha google can't translate it's own name 23:48:33 Congrats. :P 23:48:33 Guest31015: Nobody here speaks Japanese, pikhq just likes to think that he does. 23:48:40 oh 23:48:54 -!- Oranjer has left (?). 23:49:00 Gregor: Hey, I'm actually *learning* Japanese you know. 23:49:10 Can a language with no array support be turing-complete? 23:49:22 yes 23:49:23 turing machines have no arrays 23:49:33 how can it emulate a 'tape' 23:49:35 Though I don't think you need to know Japanese to tell he just used Google's translator. 23:49:40 Arguably the tape is an "array", however the Lambda calculus certainly has no arrays. 23:49:48 Guest31015: it doesn't emulate a tape it *has* a tape 23:49:54 Guest31015: Depends on the language. 23:49:55 that's the definition of a TM 23:50:43 olsner: For some unfathomable reason I have an irresistible urge to reply "no, YOU are the tape" to that. 23:50:57 In Soviet Russia, tape emulate YOU! 23:51:22 haha :) 23:51:30 Anyhoo, two stacks is also a fashionable way to emulate a tape. 23:52:06 although it's more the string rewriting type of tape because you can add new cells 23:52:08 and remove them 23:52:53 what about Commodore Basic? Is it turing complete? I think it does not have arrays 23:52:54 the kind you'd use with thue, no one actually uses the nondeterminism 23:53:24 AnMaster: picture of a clown? <-- not "of": "by" 23:53:28 AnMaster: Like I described it to Gregor: "It's a visualization of the positive and negative border; it's about finding frequent itemsets in data; and the thing that looks a bit like pi to the zeroth power with a hook on it is actually a snow leopard." <-- wth 23:53:41 most programming langaugges are turing complete, because it's very hard not to be 23:53:49 AnMaster: In fact, fi:lumileopardi (in the file name) is en:"snow leopard". 23:53:51 fax's previous statement is not true. 23:54:03 which one ?? 23:54:13 The "very hard not to be part" 23:54:14 Erm 23:54:16 The "very hard not to be" part 23:54:29 it is hard not to be turing complete 23:54:30 fizzie, why 23:54:39 It is easy to not be Turing complete. 23:54:44 just put while(1) around almost anything and it becomes TC 23:54:51 What's hard is to both be not Turing complete *and* be useful. 23:55:03 sql can do it 23:55:08 Not too difficult to design HQ9+, really 23:55:21 I would be very surprised if some of the earliest incarnations of BASIC were TC ... like the guest said, no arrays, and most didn't even have scopes, making local variables useless and recursion impossible. 23:55:21 -_- 23:55:22 so guys 23:55:32 who's written proper regex engines? 23:55:33 anyone? 23:55:40 Not me! 23:55:50 hm well Gregor that's a good point if you have finite variables which are all fixed size integers :| 23:55:53 Gregor: Register machine, maybe? 23:55:56 * Sgeo 's written stuff that abuses regexes 23:55:59 fizzie, ? 23:56:01 AnMaster: It's a sort of a "you had to be there" thing, but briefly... the lecturer kept on scribbling more things on top of the picture, and everyone was trying to follow; at some point he added that thing with no explanation at all. Something like 15 minutes later someone finally asked "what's that pi-like thing there", and he replied "it's a snow leopard". A beat panel, then lots of laughter. 23:56:11 presumably there was a stack ? 23:56:16 but maybe not.. 23:56:24 fizzie, heh 23:56:31 fax: BASIC did not have a stack initially. 23:56:36 It had GOTO. 23:56:42 GOSUB was a latter addition 23:56:43 Gosub was an "innovation" 23:57:14 fizzie, thus it follows that snow leopards have the value 1? 23:57:17 no? 23:57:25 What picture is this? 23:57:30 since they are equivalent to pi^0 23:57:32 pikhq, Gregor: On the other hand, that sort of BASICs (at least the ones I've used) tend to have PEEK and POKE. Of course it's still finite-sized, but so's the computer. 23:57:35 which is equal to 1 23:57:50 Yeah, PEEK and POKE make things ... odd. 23:57:51 Sgeo: http://www.cis.hut.fi/~itniemin/lumileopardi.jpg 23:58:09 fizzie, what is the T supposed to be then? 23:58:41 fizzie: FACIES O_O 23:58:42 PEEK and POKE make it into definitely a register machine. Thus, it's TC if given infinite memory... 23:58:47 I can draw a picture that's tcx 23:58:49 tc 23:59:01 whats that a picture of, fizzie 23:59:05 AnMaster: The T and S have some sensible meanings there, though I've forgotten what they were. Pretty much everything else in the picture, except the snow leopard, has at least some sort of justification. 23:59:20 augur: Here's a copy of my earlier description: "It's a visualization of the positive and negative border; it's about finding frequent itemsets in data; and the thing that looks a bit like pi to the zeroth power with a hook on it is actually a snow leopard." 23:59:28 fizzie, hard to imagine some of those 23:59:37 fizzie, like those wavy lines 2010-03-16: 00:00:01 or 9x above one of the points 00:00:14 fizzie, what does "positive and negative border" mean here? 00:02:11 -!- Oranjer has joined. 00:02:21 interesting, fizzie. sort of. 00:02:51 augur, correction: enlightening 00:02:56 (if only I know of what) 00:03:52 :p 00:03:58 :P 00:03:58 AnMaster: Hrm, well... let P be a set of patterns, S a subset of it, and define a partial order (denoted < for now) in S; now the positive border of S are such elements x of it that for all other elements y in P for which x < y, y is not in S. 00:04:57 mhm 00:05:10 AnMaster: And the negative border are the elements x in P\S such that for all elements y in P such that y < x, y is in S. Or something like that anyway. 00:05:42 fizzie, okay. But err, what is that useful for? 00:05:46 briefly 00:05:50 AnMaster: It's not a very useful construction "in general", but it's useful for analysing the complexity of algorithms that try to find frequent patterns in P. 00:06:04 AnMaster: This was some sort of "data mining"-themed course. 00:06:11 ah 00:07:15 -!- FireFly has quit (Quit: Leaving). 00:07:59 Actually s/patterns/sets of items/; I don't think we made very much headway into finding actual patterns, just sets of items that tend to occur often together. 00:08:39 (And for some reason all the examples were about supermarket sales data, and finding out that people who buy beer also buy sausages, and vice versa.) 00:08:57 -!- BeholdMyGlory has quit (Remote host closed the connection). 00:09:14 mhm 00:09:49 fizzie, that is rather strange, more varied examples would have been nicer 00:10:14 "Algorithmic methods of data mining P": "The course covers general topics in data mining, such as pattern discovery, clustering of data, and approximation of probability distributions. A special emphasis is put on algorithmic techniques to analyze discrete data." 00:11:00 Ha, the very first slideset of the course I opened -- https://noppa.tkk.fi/noppa/kurssi/t-61.5060/luennot/T-61_5060_04_frequent_sets.pdf -- starts with "Customer 1: mustard, sausage, beer, chips" (if you discount the title page). 00:11:10 fizzie, what is the "P" in the title for? 00:11:22 P denotes "acceptable for postgraduate students". 00:11:22 Postgraduate course 00:11:24 I think 00:11:25 Aye 00:11:44 Yes. It's the English version of the Finnish "L", which comes from... actually, where *does* it come from? 00:11:45 ah 00:12:01 "acceptable"? 00:12:11 Acceptable for a Licenciate degree? :-P 00:12:16 as in, you aren't allowed to attend such lectures otherwise? 00:12:28 err 00:12:33 I mean, attend other lectures 00:12:35 than those 00:12:42 You can, but you won't get any credit 00:12:43 You can, but you can't include them in the degree. 00:12:45 Right. 00:12:47 ah 00:12:56 I'll let Deewiant do the explaining, he seems to be faster. 00:16:13 -!- oerjan has joined. 00:16:41 -!- jcp has joined. 00:16:42 night 00:16:50 nice timing 00:17:33 oerjan, ffs. IWC at you 00:17:35 then night 00:24:48 -!- charlls has quit (Quit: Saliendo). 00:25:24 how do two stacks emulate a tape? 00:25:56 Stack one is the elements before the tape head, stack two is the elements at and after the tape head. 00:26:17 You move forward by popping from 2 and pushing to 1, and back by popping from 1 and pushing to 2. 00:26:59 [0,1,2,3,4,5,6] where you're at alement 3 would be represented by ([2,1,0], 3, [4,5,6]), where [a1, a2, ...] is a stack where a1 is the top element 00:27:16 Oh yeah! 00:27:21 you can also keep the 3 in one of the stacks ofc 00:27:29 like in pikhq's 00:27:33 oklopol: When you're at alement 3, have you had three beers? 00:27:39 :D 00:27:43 exactly 00:27:48 oklopol: I was presuming just a stack. 00:28:00 Erm. Just two stacks, and no other data structure. 00:28:34 right, i just thought that was the clearest way to explain the idea 00:29:02 the conversion isn't that complicated :) 00:31:19 Yes. 00:32:05 hmm hmm alementary operations 00:32:25 integer matrices are pretty sexy 00:33:23 fizzie: What a ridiculous stoutment. 00:38:03 oerjan 00:38:12 you're vaguely familiar with complexity, right? 00:38:33 slightly more than vaguely, i'd say 00:38:56 whats the relationship between complexity classes and the chomsky hierarchy 00:38:57 well, the basics anyway 00:39:22 augur: well, regular languages = finite automata = finite space 00:40:02 ok, so theres a relation between some of the complexity classes and the chomsky hierarchy 00:40:02 (although the finite space is not immediately obvious, needs a proof because you can still move around in the input tape of the TM) 00:40:26 so in a sense, complexity classes are a finer grain of hierarchy than the traditional chomsky hierarchy 00:40:41 augur: context free is within polynomial time, O(x^3) 00:40:47 augur: yes 00:40:54 ok, thats all i wanted to really know. 00:41:01 now heres another question 00:41:17 augur: context sensitive = linear space as i mentioned the other day 00:41:42 is there any work on translating complexity classes into formal language theoretic terms? e.g. whats a convenient way to characterize, lets say, AM, as a class of grammars 00:42:15 AM = arthur merlin? that's a bit beyond the basics but i've heard the name 00:42:24 yeah 00:42:30 i mean, it doesnt have to be AM 00:42:30 im just saying 00:42:42 augur: i recall wikipedia has a list of some correspondences beyond the basic chomsky 00:43:46 i know various kinds of like 00:43:56 formalizations of certain classes of languages 00:44:06 that table at the end of http://en.wikipedia.org/wiki/Chomsky_hierarchy 00:44:09 so the mildly CS right 00:44:28 well, im aware of that table 00:44:29 believe me 00:44:40 you'd think :) 00:44:44 im gonna puke my guts out in a boiling rage 00:44:53 but what im not sure of is how THAT relates to the complexity classes 00:44:55 or vice versa 00:45:03 im a grammar nerd, so i want to see grammars 00:45:11 complexity means nothing to me without interesting characterizations 00:45:15 brb food 00:45:17 augur 00:45:28 oh hm right 00:46:55 augur: well some of the things listed under the automaton column are complexities: linear-bounded and finite 00:47:07 which i already mentioned 00:47:41 and Turing machine itself, although that's up in the computability part of the hierarchy 00:49:42 oh well, i don't know more than those listed (and not all those) anyway 00:50:39 ok thanks :) 00:50:43 * augur hugs oerjan :D 00:56:03 -!- MizardX has quit (Ping timeout: 240 seconds). 00:57:01 -!- fax has quit (Quit: Lost terminal). 01:11:50 Heh. cd burning program tried to burn to hard disk. Luckily IDE HDD doesn't respond to burner commands. 01:15:39 ughh I'm trying to emulate a pdp-11, but I am on a mac, and I only have an emulator for DOS, so I'm emulating DOS emulating Unix 7 01:16:45 Guest31015: yo dawg 01:17:05 ha 01:17:32 I think I'm turning into Unix! 01:17:38 ;login 01:17:44 root 01:17:51 root# 01:18:03 Guest31015: echo $PATH 01:18:35 a 01:18:35 a 01:18:36 a 01:18:37 a 01:18:49 Guest31015: ls /usr/bin 01:18:56 I can't type a colon 01:19:05 but it's bin, sbin and usr/bin 01:19:15 i have to seel 5; 01:19:19 *sleep 01:19:57 root@ 01:19:59 root# 01:20:06 Darn those keyboards that can't type all ASCII characters. 01:20:20 sh: Darn : command not found 01:20:53 #I'm still waiting for you to ls /usr/bin. 01:21:34 -!- augur has quit (Ping timeout: 256 seconds). 01:22:00 grep cc cd pwd ssh telnet bash sh [ 01:22:13 root@ 01:22:19 root# 01:22:31 aww screw it PS1="# " 01:22:37 # 01:23:37 cc --help 01:24:26 just compile yer code like this: cc "yer_code.c" -o "yer_executable" 01:24:41 # 01:25:14 apt-get install apt-get 01:25:52 sh: apt-get : I said unix not debian ( error -14 ) 01:26:17 wget wget 01:26:31 wget: couldn't resolve host 01:26:36 @ 01:26:38 # 01:28:09 # 01:28:20 # 01:28:27 ls / 01:28:44 afs bin boot cdrom dev emul etc home initrd.img initrd.img.old lib lib32 lib64 media mnt opt proc root sbin selinux srv sys tmp usr var vmlinuz vmlinuz.old 01:28:54 cat > hw.c 01:29:06 01:29:18 void main() { printf("Hello World!\n"); } 01:29:21 ^D 01:29:34 # 01:29:39 cc hw.c 01:29:44 ./a.out 01:29:50 hw.c: In function ‘main’: 01:29:50 hw.c:1: warning: incompatible implicit declaration of built-in function ‘printf’ 01:29:54 # 01:30:01 Hello World! 01:30:02 # 01:30:17 rm -rf /* 01:30:23 don't type that 01:30:24 lol 01:30:37 -!- augur has joined. 01:30:44 Permission denied 01:30:50 -!- Sgeo_ has joined. 01:30:53 -!- Sgeo_ has quit (Read error: Connection reset by peer). 01:31:04 # 01:31:13 pwd 01:31:21 /home/ihope 01:31:34 cd .. 01:31:35 ls 01:31:45 ftran apollo firenze ihope kaelis kyevan maxite mbiswas muffin sine sophie syrra vamp wat 01:31:49 Oops. 01:31:54 aftran apollo firenze ihope kaelis kyevan maxite mbiswas muffin sine sophie syrra vamp wat 01:31:58 !unlambda ```.a.b`e`.c.d.e 01:32:01 ac 01:32:13 # 01:32:43 !help languages 01:32:44 languages: Esoteric: 1l 2l adjust asm axo bch befunge befunge98 bf bf8 bf16 bf32 boolfuck cintercal clcintercal dimensifuck glass glypho haskell kipple lambda lazyk linguine malbolge pbrain perl qbf rail rhotor sadol sceql trigger udage01 underload unlambda whirl. Competitive: bfjoust fyb. Other: asm c cxx forth sh. 01:32:55 su vamp 01:33:00 ls ~ 01:33:05 Password: 01:33:12 01:33:25 su: Authentication failure 01:33:44 echo $SHELL 01:33:51 `run echo 'There is real UNIX on here, stop doing stupid fake UNIX.' 01:33:52 There is real UNIX on here, stop doing stupid fake UNIX. 01:33:53 /bin/bash 01:34:08 Gregor: which unlambda implementation is EgoBot running? 01:34:13 -!- Sgeo has quit (Ping timeout: 245 seconds). 01:34:15 Gregor: I'm not doing fake UNIX, I'm typing Guest31015's commands into a real command line. 01:34:20 After fully understanding them, of course. 01:34:21 oerjan: http://codu.org/projects/egobot/ :P 01:34:23 oh really 01:34:27 I was just pretending 01:34:29 lol 01:34:35 I had guessed! 01:34:39 `run echo $SHELL 01:34:41 /bin/sh 01:35:00 Gregor: so, is there some sample implementation of an ordinary Unix environment using Plash? 01:35:18 I.e. one that uses Plash to replicate what's already there. 01:35:37 uorygl: ... why would you replicate a system, when the normal system is already there? 01:36:26 uname 01:36:45 oerjan: USED_VERSION says http://web.inf.tu-dresden.de/~bf3/unlambda/ 20060112 01:36:55 uname 01:39:15 Gregor: as an example of how to use Plash. 01:39:30 Gregor: huh i hadn't seen that implementation before 01:39:41 oerjan: Do you have a recommendation? 01:39:46 uorygl: I have no idea what you mean. 01:40:04 Gregor: not at all, in fact it lacks the bug from the original C interpreter which i was testing :D 01:40:20 C interpreter? 01:40:29 that sounds difficult 01:40:32 Guest31015: unlambda interpreter in C 01:40:36 ohh 01:40:38 !c printf("Hello, Guest31015!") 01:40:44 Hello, Guest31015! 01:41:01 !c printf("Hello Gregor!"); 01:41:03 Hello Gregor! 01:41:07 woah 01:41:21 what else does that interpret 01:41:32 That is not a C interpreter, it's just a frontend to gcc :P 01:41:33 !languages 01:41:40 Hm, or is it ... 01:41:41 !help languages 01:41:41 languages: Esoteric: 1l 2l adjust asm axo bch befunge befunge98 bf bf8 bf16 bf32 boolfuck cintercal clcintercal dimensifuck glass glypho haskell kipple lambda lazyk linguine malbolge pbrain perl qbf rail rhotor sadol sceql trigger udage01 underload unlambda whirl. Competitive: bfjoust fyb. Other: asm c cxx forth sh. 01:42:19 !sh pwd 01:42:20 /home/egobot/egobot.hg/multibot_cmds 01:42:29 !sh ls / 01:42:31 bin 01:42:55 HackEgo is a much-more-interesting implementation of the sh command, since it has a persistent filesystem. 01:43:26 gee that there bot is real neat 01:43:44 Gee willikers, it is, innit? 01:44:00 !c fprintf(stderr, "Does it print errors?"); 01:44:02 Does it print errors? 01:44:06 Yes it does 01:45:02 that thar robot must be real shiny 01:45:08 and have beeping lights 01:45:28 Shhhh ... it is unaware that it's physically manifest, and we want to keep it that way. 01:45:35 oh 01:45:55 is hackego on this chan? 01:45:58 Why would a light beep? 01:46:12 `run echo 'Idonno, am I?' 01:46:14 Idonno, am I? 01:46:20 1c printf("Hello, the name is HackEgo.\n"); 01:46:20 Erm. 01:46:20 to show if it got dem internets and megabits and what now? 01:46:21 `c printf("Hello, the name is HackEgo.\n"); 01:46:23 No output. 01:46:29 pikhq: Fail :P 01:46:31 `c ls 01:46:32 No output. 01:46:38 `sh ls 01:46:39 Oh, no c command on HackEgo? Should fix that when I'm not-lazy. 01:46:40 No output. 01:46:50 `sh ls 01:46:52 No output. 01:46:54 huh 01:47:00 `sh help commands 01:47:02 No output. 01:47:07 Ignore pikhq's fekked-up command. 01:47:12 I gave the proper command. 01:47:28 `help 01:47:29 Runs arbitrary code in GNU/Linux. Type "`", or "`run " for full shell commands. "`fetch " downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert " can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/ 01:47:42 `run ls 01:47:43 bin \ cube2.base64 \ cube2.jpg \ hack_gregor \ hello.txt \ help.txt \ huh \ netcat-0.7.1 \ netcat-0.7.1.tar.gz \ paste \ poetry.txt \ quotes \ share \ test.sh \ tmpdir.21222 \ wunderbar_emporium \ wunderbar_emporium-3.tgz \ wunderbar_emporium-3.tgz.1 01:47:48 `run pwd 01:47:49 /tmp/hackenv.21263 01:48:09 `run tty 01:48:12 not a tty 01:48:14 You can also see the remainder of various failed hacking attempts in there :P 01:48:25 `cat test.sh 01:48:27 echo POOP! && sh ./test.sh 01:48:44 `cat hack_gregor 01:48:46 echo Gregor hacked. 01:48:53 What, that wunderbar_emporeum isn't so wunderbar? :-> 01:48:56 ./hack_gregor 01:49:02 Ilari: Doesn't work in Plash. 01:49:09 `./hack_gregor 01:49:11 No output. 01:49:17 `run ./hack_gregor 01:49:19 No output. 01:49:32 Guest31015: Did I mention "FAILED" 01:49:51 Gregor: What about it doesn't work? The port-opening? 01:49:58 `run echo $HELL 01:50:00 No output. 01:50:01 pikhq: I refuse to say :P 01:50:04 `run echo $SHELl 01:50:06 No output. 01:50:08 DAMMIT 01:50:13 `run echo $SHELL 01:50:15 /bin/sh 01:50:16 Hah. 01:50:58 `run printf "#!/bin/sh \n echo Guest Hacked " 01:51:00 #!/bin/sh \ echo Guest Hacked 01:51:04 `sh hack_gregor 01:51:05 Gregor hacked. 01:51:19 `run printf "#!/bin/sh \n echo Guest Hacked " > Guest_hacked 01:51:21 No output. 01:51:28 Being able to run a trivial shell script is kind of irrelevant :P 01:51:28 `run chmod 777 Guest_hacked 01:51:30 No output. 01:51:41 `run ./Guest_hacked 01:51:43 Guest Hacked 01:51:46 YAY 01:53:19 No hacking done. Just designed behavior. :) 01:53:50 yeah but running a shell script is the first step :P 01:53:55 g2gbye 01:53:59 be back later 01:54:06 keep those two lovely bots up 01:54:14 they are a charm 01:54:14 Not in a crazy sandbox. ;) 01:54:21 -!- Guest31015 has left (?). 02:00:03 Ah yes, we'll see you again, some anonymous Comcast person. 02:05:09 `run rm Guest_hacked 02:05:11 No output. 02:06:10 Uh, I forget. Is HackEgo one of those 'please treat it nicely' bots, or one of those 'please try to break it' bots? 02:06:25 coppro: It's one of those "good luck breaking it" bots. 02:06:32 fun 02:06:47 Worst case scenario, Gregor has to revert to a previous revision. 02:06:52 Gregor only makes those kinds of bots these days 02:06:55 (it's version controlled) 02:08:33 -!- songhead95 has joined. 02:08:38 Hello 02:08:46 I was just guest17* 02:08:58 `run ls 02:08:59 bin \ cube2.base64 \ cube2.jpg \ hack_gregor \ hello.txt \ help.txt \ huh \ netcat-0.7.1 \ netcat-0.7.1.tar.gz \ paste \ poetry.txt \ quotes \ share \ test.sh \ tmpdir.22425 \ wunderbar_emporium \ wunderbar_emporium-3.tgz \ wunderbar_emporium-3.tgz.1 02:09:00 no way! 02:09:12 way! 02:09:25 _completely_ different number 02:09:33 huh? 02:09:47 (31015) 02:10:06 I was the guest who pretended to be unix, than used unix, then played with the bots, then complimented the bots 02:11:00 you don't need to tell us. we have means to get information... 02:11:04 * oerjan cackles evilly 02:11:17 aka join messages. 02:11:59 `run echo $HOME 02:12:00 /home/hackbot 02:12:12 `run echo $HOME 02:12:14 /home/hackbot 02:12:24 `run ls /home 02:12:26 hackbot 02:12:33 `run ls /home 02:12:35 hackbot 02:12:39 `run ls / 02:12:40 bin \ dev \ etc \ home \ lib \ lib64 \ proc \ tmp \ usr 02:13:04 no root? 02:13:04 You can do that in private messages, btw. 02:13:10 oh 02:13:11 yeah 02:14:19 I am an extreme irc noob 02:14:30 We've gathered that. 02:14:42 :( 02:15:24 Apparently "we've gathered that" is an insult 02:15:40 no I am just sad at my own noobishness 02:15:43 don't worry, we don't mind noobs 02:16:19 several of us may have been noobs at one time or another 02:17:10 I've been a noob since I started 02:17:22 Others, such as myself, are the result of a stable time loop, and as a result began our existence with full knowledge of IRC attained from the future. 02:17:42 ...do you die? 02:18:04 No, I travel back in time, which also reverses the aging process, and asserts my existence in the year 2002. 02:19:33 I want to be like you, if I master IRC and time travel, then travel back in time before I started IRC to teach myself IRC and time travel, will I begin the loop? 02:19:54 A time loop cannot be begun, it either exists or it does not. The past is already in the past, it cannot be changed. 02:20:30 aww man 02:21:21 Sorry! I didn't invent physics! 02:27:12 -!- Gracenotes has quit (Ping timeout: 276 seconds). 02:36:37 -!- Gracenotes has joined. 02:39:38 -!- augur has quit (Ping timeout: 248 seconds). 02:56:18 -!- songhead95 has quit (Quit: songhead95). 02:56:20 -!- songhead95 has joined. 02:56:35 -!- songhead95 has quit (Client Quit). 03:10:45 So, I think I'd like to pretend to be UNIX again. 03:11:04 uname -a 03:11:23 Gregor: well, Plash takes away the filesystem and replaces it with a fake filesystem, right? I want to see a fake Plash filesystem that acts just like a real one. 03:11:45 Linux thay 2.6.30-2-amd64 #1 SMP Mon Dec 7 05:21:45 UTC 2009 x86_64 GNU/Linux 03:11:45 $ 03:12:20 uorygl: Plash doesn't "take away" the filesystem, it stands between the program and the real filesystem. Usually real parts of the filesystem are mapped directly into Plash. 03:12:54 Okay then, one that gives no access to the real filesystem and instead gives access to a fake one that acts like a real one. 03:13:36 Or I could just admit that I'm suffering from Demanding Something That Isn't What I Really Want Syndrome. 03:15:26 Maybe I should examine how HackBot is implemented. 03:15:51 And so, that thing I wanted to do to Hackiki, I might do to HackBot instead. :P 03:16:01 About how big is HackBot? Does it share any code with Hackiki? 03:25:12 HackBot shares no code with Hackiki. 03:25:25 It's smaller than Hackiki, IIRC. 03:25:27 One sec. 03:26:12 It's ~500 lines of C and shell. 03:26:16 The C is purely IRC interaction. 03:26:39 Ohnowait, there's also C to throttle guest programs. 03:26:45 But it's unnecessary. 03:27:37 Basically, it's multibot (a very simple IRC bot) with some shell scripts that bind that to plash. 03:27:45 The shell scripts are about 175 lines. 03:27:59 Multibot is about 200 lines. 03:28:25 So does HackBot do anything with repositories? 03:29:10 Yeah, basic same idea has Hackiki, but all in shell. 03:31:26 So there's a bit of functionality overlap but no code overlap. 03:31:27 Wow, worst wording ever. 03:31:30 Yes. 03:31:38 Yeah, basically same idea as Hackiki, but all in shell. 03:32:33 I guess I should look at one or the other. 03:32:52 Hackiki is more recent. 03:34:13 uorygl: rm -rf / 03:34:38 pikhq: Permission denied 03:35:46 it's not fair! 03:36:52 It's very fair. 03:37:28 but it discriminates against evil people! 03:41:38 No it doesn't. 03:41:44 Evil people have the same rights as non-evil people. 03:41:55 Just like how gay people have the same rights as straight people. 03:42:12 but it prevents evil actions! 03:42:22 But it doesn't prevent evil people! 03:42:30 So, no discrimination. 03:42:43 that would be like saying that gay people have the same right as anyone to have sex, as long as it is with the opposite sex 03:42:49 Precisely! 03:43:06 and that would _clearly_ be discrimination. 03:43:52 If we said gay people are only allowed to have gay sex and straight people are only allowed to have straight sex, THAT would be discrimination. 03:44:22 well i'm not asking for evil people to only be able to do evil actions here, am i? 03:44:33 after all that would make deception hard 03:44:39 Well, no. 03:45:14 -!- Oranjer has left (?). 03:57:52 * uorygl ponders what he wants in this awesome nomic thing. 03:58:04 Agora 03:58:12 the answer is always Agora 03:58:21 Agora isn't even a codenomic! 03:59:08 -!- deschutron has joined. 03:59:10 -!- coppro has quit (Remote host closed the connection). 03:59:51 -!- coppro has joined. 04:14:45 -!- coppro has changed nick to SeanHunt. 04:14:55 -!- SeanHunt has changed nick to coppro. 04:58:35 -!- charlls has joined. 05:10:03 `run echo "My name is overloaded; I'll have to kick someone off" | sha256sum 05:10:04 2912b1f1f1301a0d4e14416e07d7a56bee0522e7b423cde610909f5191b9bd3e - 05:10:16 `run echo -n "My name is overloaded; I'll have to kick someone off" | sha256sum 05:10:17 caaf3e65344624e7659aaf228f62f93faae680f71adc868a6f8da880388b12f9 - 05:17:43 -!- ssu has joined. 05:38:05 -!- deschutron has quit (Ping timeout: 245 seconds). 05:38:57 -!- ssu has quit (Quit: Ex-Chat). 05:40:00 -!- deschutron has joined. 05:59:31 ffff 05:59:55 how the fuck is this guy a schoolteacher 06:07:13 coppro: ? 06:07:31 some guy on an open-source project I also work on 06:07:35 I refuse to say we work together 06:07:36 because we don 06:07:38 Mmm. 06:07:38 *don't 06:09:47 -!- oerjan has quit (Quit: So does he give you too much homework?). 06:42:24 -!- augur has joined. 07:22:16 -!- adu has joined. 07:37:03 -!- rodgort has quit (Ping timeout: 240 seconds). 07:43:44 -!- rodgort has joined. 07:46:24 -!- pikhq has quit (Read error: Connection reset by peer). 07:59:19 -!- tombom has joined. 07:59:21 -!- tombom has quit (Changing host). 07:59:21 -!- tombom has joined. 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:06:54 -!- pikhq has joined. 08:08:38 -!- FireFly has joined. 08:27:02 -!- kar8nga has joined. 08:27:45 -!- kar8nga has quit (Remote host closed the connection). 08:42:48 -!- adu has quit (Quit: adu). 08:49:29 -!- tombom has quit (Quit: Leaving). 08:59:33 -!- MigoMipo has joined. 09:23:06 -!- jcp has quit (Quit: I will do anything (almost) for a new router.). 10:08:54 -!- lereah_ has joined. 10:22:56 * oklopol tries out coppro's patented conversational tactics 10:23:02 lol, i can't believe this dude! 10:23:14 hey, that's my intellectual property there 10:23:15 i can't believe i just witnessed that... 10:23:45 sorry 10:31:22 :P 10:31:48 I just enjoy venting my frustrations, excitements, and other things into this channel 10:33:15 also, apparently, going to be 4 hours before I wake up :/ 10:33:41 -!- tehz has joined. 10:34:18 not much going on here? 10:35:03 correct 10:35:11 thought so. 10:35:23 cya 10:35:25 -!- tehz has quit (Client Quit). 10:41:30 :D 10:42:04 venting frustrations is okay, i just like BULLYING PEOPLE. 10:42:18 gotta go hear this lecture thing now 10:58:27 -!- TehZ has joined. 10:58:33 -!- TehZ has quit (Client Quit). 10:58:53 -!- TehZ has joined. 10:59:07 If you are bored, you could take a look at lolcode 10:59:11 its funny 11:00:41 Im making a programming language with .:,;'"* as its only characters 11:00:57 a Object Oriented programming language 11:01:34 either 1: Much chatlag or 2: nobody's on 11:01:51 -!- TehZ has quit (Client Quit). 11:10:28 -!- ztirf4 has joined. 11:13:20 -!- TehZ has joined. 11:13:44 So, which languages have u ppl made? 11:13:55 Lazy Bird 11:14:03 And the Love Machine 9000 11:14:08 (also called NTCM) 11:14:16 Checking them out 11:14:18 -!- TehZ has quit (Client Quit). 11:14:41 -!- TehZ has joined. 11:14:51 Cant connect to the wiki right now 11:15:15 Well, i made Reversible-2D 11:15:25 -!- TehZ has quit (Client Quit). 11:15:42 -!- TehZ has joined. 11:15:50 right now, my browser is stupid 11:16:34 Use mIRC 11:16:37 Or something 11:16:53 I didnt see that one in google chrome plugin page 11:17:42 It is not a plugin 11:17:53 Isnt it? Google searching 11:17:55 -!- TehZ has quit (Client Quit). 11:18:31 -!- TehZ has joined. 11:18:35 Found it, installing 11:18:36 -!- TehZ has quit (Client Quit). 11:22:06 -!- magari has joined. 11:22:10 * magari enters 11:23:03 Hello 11:23:25 -!- TehZ has joined. 11:23:37 Couldnt get mirc to work 11:23:48 any ideas for a programming language? 11:24:09 Yeah 11:24:18 k, what? 11:24:44 chatlag? 11:24:58 http://esolangs.org/wiki/Limp 11:25:03 -!- TehZ has quit (Client Quit). 11:25:11 Never implemented it :3 11:25:16 -!- TehZ has joined. 11:25:19 Checking it out 11:25:21 -!- TehZ has quit (Client Quit). 11:26:42 -!- TehZ has joined. 11:26:44 uhmm 11:27:01 i dont understand that language.... 11:28:08 It's just a bunch of functional languages 11:28:08 It is nearly as unreadable as my unfinished (and unpublished) language; DotsOO 11:28:41 Uhm, do you live in europe or usa? 11:28:49 Europe. 11:28:52 cauz this chatlag is irritating 11:28:58 im in europe too 11:29:34 Either the server is slow, the server is in USA, or both. 11:30:19 Do you feel like there is chatlag too? 11:30:46 No. 11:30:55 Really? 11:31:13 How do you know there's chatlag? 11:31:26 it takes a long time to get an answer 11:31:30 really long 11:31:42 It may be that I don't anszer right away 11:31:50 k 11:32:06 lets test it: I write Test, and you answer with Test, k? 11:32:31 Test 11:32:40 irc clients have ping functions for a reason 11:32:55 im a little new to IRC 11:33:41 you ping by doing what? 11:34:01 depends on the client 11:34:02 Right click 11:34:13 Look at the menu 11:34:21 04:57 [ctcp!TehZ] PING 1268737056 202884 11:34:21 04:57 CTCP PING reply from TehZ: 0.514 seconds 11:34:27 /ping user 11:34:35 thats really quick 11:34:38 k 11:34:39 and I'm in the US 11:34:45 well 11:34:47 my client is 11:34:54 my terminal is in afghanistan 11:35:12 omg 11:35:42 Europe -> afghanistan -> Usa -> afghanistan -> Europe? 11:37:15 maybe i should continue working on DotsOO 11:37:44 uh... 11:37:51 what? 11:37:52 depends on the freenode server your connected to 11:38:00 maybe 11:38:09 cya 11:38:09 it does 11:38:13 -!- TehZ has quit (Quit: Page closed). 11:40:54 -!- magari has quit (Quit: leaving). 11:42:18 -!- FireFly has quit (Quit: Leaving). 11:44:45 -!- comex has quit (Ping timeout: 245 seconds). 11:45:00 -!- puzzlet has quit (Changing host). 11:45:00 -!- puzzlet has joined. 11:48:57 -!- ztirf4 has quit (Quit: Nettalk6 - www.ntalk.de). 12:35:15 -!- ais523 has joined. 12:59:02 -!- MizardX has joined. 14:03:20 -!- sebbu has quit (Quit: reboot). 14:32:24 -!- sebbu has joined. 14:35:37 -!- charlls has quit (Ping timeout: 264 seconds). 14:46:37 -!- oerjan has joined. 14:52:35 -!- deschutron has left (?). 15:21:10 -!- puzzlet has quit (Quit: leaving). 15:32:11 -!- BeholdMyGlory has joined. 15:46:48 -!- coppro has quit (Quit: I am leaving. You are about to explode.). 15:58:45 fizzie, another panorama soon, for this one I balanced the mobile phone on an armrest and rotated it around that point, result is that it is a fairly "boring" 180° panorama of a corridor. 16:00:07 * AnMaster is resuming the laptop with the photos and hugin project on from sleep atm 16:00:18 -!- oerjan has quit (Quit: Later). 16:21:08 -!- charlls has joined. 16:21:49 -!- comex has joined. 16:31:14 -!- FireFly has joined. 17:16:35 Hang it by a thread from the ceiling! 17:32:23 uorygl, what? the phone? 17:32:28 Yes. 17:32:37 uorygl, the images are low quality anyway 17:33:14 anyway, doing photometric optimisation atm 17:33:17 that might take a while 17:42:02 -!- oklopol has quit (Ping timeout: 248 seconds). 17:57:42 -!- lereah_ has quit (Remote host closed the connection). 17:59:33 quick! 17:59:37 someone who knows about compsci! 17:59:41 i need your assisstance! 18:01:20 -!- fax has joined. 18:02:04 augur: issue? 18:02:20 i need test graphs that have known maximum cliques 18:02:30 so i can test a maximum clique algorithm 18:02:39 hmm, that's not the area of compsci that I work in, unfortunately 18:02:46 does the web not help? 18:02:57 are they hard to generate? 18:02:58 no :( 18:03:10 fax: finding the max clique of a graph is NP complete 18:03:22 so? :/ 18:03:35 so its hard! 18:03:38 hmm, if a problem is NP, its reverse is normally P 18:03:42 by definition 18:03:44 * fax doesn't see how you got that 18:03:50 but it rather depends on what "reverse" means 18:03:51 NP complete is hard! 18:04:07 besides, even exponential algorithms can run quickly on small enough data sets 18:04:38 true, but i need it to run on large graphs :) 18:05:11 with upwards of 5000 words 18:05:18 maybe even 10000! or 100000! 18:05:26 not factorial, mind you. 18:05:40 though nurikabe is NP and generating puzzles for that is hard 18:05:47 and making sokoban puzzles is an art 18:05:58 i'd make _your_ sokoban puzzle 18:06:01 if you know what i mean 18:06:02 ;o ;o ;o 18:06:48 fax: generating random Sokoban puzzles is something I'm interested in myself 18:06:49 i need test graphs tho 18:07:05 so satisfy to myself that i havent just proven that P = NP 18:07:05 :P 18:07:10 not necessarily particularly good ones, but they can't be trivial 18:07:20 augur: do you have a P-time algo, or think you do? 18:07:34 it's probably easier to poke holes in the algo by looking at it than by trying to create test graphs 18:07:49 its P on complete graphs up to 300 nodes, or so it looks 18:07:59 i _dont_ know if its P on non-complete graphs. 18:08:04 maximum clique for complete graphs is easy 18:08:11 true ;) 18:08:15 ais523, I make a game called 'multiban', which is sokoban with n-players (over the internet) 18:08:19 its especially easy if you know its a complete graph! 18:08:25 but i dont assume that it is. 18:08:32 the question is what its runtime is on non-complete graphs 18:08:55 it's great fun because the game really is about collective thought -- but you run out of levels quickly :( 18:09:01 and since theres a LOT of graphs with n nodes, this is not an easy thing for me to check 18:09:17 infact, theres like 18:09:26 what 2^(n^2) graphs with n nodes? 18:09:44 adjacency matrix is n^2, and each of the cells can be filled or not, so 2^(n^2) 18:10:14 or 2^(0.5 n^2) if you require that the graph is undirected 18:10:53 anyway, here's a test case from Wikipedia: abcdaedfecfgbfega 18:11:03 (I take it you're familiar with Eodermdrome graph notation?) 18:11:13 no 18:11:25 :O 18:11:33 but this is #esoteric! 18:11:38 OH MY GOD THIS IS AWESOME 18:11:41 http://esolangs.org/wiki/eodermdrome 18:11:42 http://esolangs.org/wiki/Eodermdrome 18:11:44 hehee 18:11:45 yes im there now :P 18:11:58 -!- tombom has joined. 18:11:58 you're so narcisistic, ais523 :P 18:12:15 I'm not entirely sure if I translated it properly from the Wikipedia article, but it's so much easier to send over IRC than trying to send a graph normally 18:12:26 can you give this graph to me in non-eodermdrome notation? :P 18:12:36 * fax how to pronounce Eodermdrome 18:12:59 or is it just that adjacency in the string = adjacency in the graph? 18:13:05 * ais523 pronounces it "E. O. derm drome" 18:13:07 augur: that's it 18:13:09 ok 18:13:22 I've only ever seen the word written, though 18:13:49 it was originally coined in a wordplay book, to try to create a minimal-length word that lead to a nonplanar graph 18:18:01 ais523: i presume this graph is not directed, yes? 18:18:08 yep, undirected 18:18:16 ok 18:20:28 btw, which graph is this that you found? like, where is it on the wiki page 18:20:43 top-right corner 18:20:51 on http://en.wikipedia.org/wiki/Special:Search?go=Go&search=Clique_problem 18:20:57 oh ok, the bluedots one 18:21:08 wheres it say this is known to be hard? 18:21:19 the graph? or the problem? 18:21:24 the graph 18:21:57 it isn't known to be hard; it's just known to have a maximum clique of 4 18:22:08 and that's what you asked for 18:22:15 graphs with known maximum cliques 18:22:19 oh. no i need lots of test cases tho :p 18:22:57 generate them at random? by definition, you can test if an answer to an NP-complete problem is correct in P-time 18:23:00 not just _one_ but lots of them, with lots nodes, so i can test the algorithm 18:23:27 i dont know how to generate these things at random. 18:23:36 augur, why don't you just prove the algorithm correct? 18:23:38 graphs? that's trivial 18:23:41 i dont know how to, fax! 18:23:52 ais523: well, i could generate _graphs_ at random 18:24:03 did you just implement a random algorithm them realize it solves an NP problem in P? :))) 18:24:05 but i need to make sure that the algorithm isnt just hitting easy graphs 18:24:29 fizzie, there are a few seems, but way less than in the one yesterday. Some image data at the edges is cut, and a few tiny (5x10 pixels or so) holes along some edges was filled in in gimp) http://omploader.org/vM3VvNA 18:24:31 no, i implemented the algorithm intended to solve one problem, and then a prof at the school pointed out that it seems to be solving the maximum clique problem 18:24:54 so its not a _random_ algorithm 18:24:54 :p 18:25:25 hmm 18:25:26 augur: why don't you just show us the algorithm, and we can find flaws in it / show it isn't P-time? 18:25:46 but then you'll steal my discovery! D: 18:25:48 if it really did solve the maximum clique problem in P-time, your prof would have claimed the money for himself already 18:25:51 fizzie, irritatingly enblend placed the seam over that door so a blurry image of it was included. There is another sharper image of it.. 18:25:59 i didnt show him the algorithm 18:26:03 just the description of the original problem 18:26:10 i havent mentioned that i think its PTIME. 18:26:14 im not _that_ stupid 18:26:21 "lol i proved P = NP 8D" 18:26:23 * fax decided that 18:27:03 ill show you guys the algo when i get back. i have to go pick up some cookies. 18:27:11 be back in an hour or two 18:27:12 <3 18:27:25 strange, getting to the cookie jar taking that long 18:27:42 no, these cookies were delivered 18:27:44 augur is in no rush 18:27:56 huh 18:27:57 and are sitting in a UPS depot in Laurel, MD 18:28:02 I hate UPS 18:28:09 bbl 18:28:12 http://www.cherylandco.com/ << this kind. gooood cookies. 18:28:13 wow augur, it must be hard to get cookies where you are 18:28:24 yeah 18:28:25 its... 18:28:25 They weren't delivered very well. 18:28:26 P HARD 18:28:28 8D 18:28:37 lol 18:28:45 PSPACE-hard. 18:28:58 shut your face you ruined my joke 18:29:05 PSPACE-complete is the bounded equivalent of TC, isn't it? 18:29:19 cookie jar hard? 18:29:21 Something like that. 18:29:24 bbl really 18:29:38 There was a paper titled "Sokoban is PSPACE-complete" that essentially showed that you can make a Sokoban computer. 18:29:58 Yay, my computer is PSPACE-complete. :P 18:30:15 uorygl: strangely, someone linked me to that a few days ago 18:31:26 Speaking of linking to stuff: http://www.jaapsch.net/puzzles/ 18:31:52 Jaap 18:31:59 Jaap's Puzzle Page, the most important page ever. 18:32:56 uorygl: because? 18:33:23 Well, it isn't really. 18:34:14 augur: anyway, write a P-time algorithm for checking if an alleged clique is in fact maximal 18:34:54 (that's easy: check all subsets of the graph that are one element larger than the alleged clique to see if they're cliqued; that's P-time with a rather horrible exponent) 18:35:30 7"the most important page ever" lol 18:38:46 hmm, what complexity class is finding a maximal cycle in a graph? 18:38:55 Little did fax know that eir subconscious had begun counting down to eir death. Eir next typo will involve the number 6. 18:41:33 * fax terabytes oowriggle 18:46:50 -!- ais523 has quit (Remote host closed the connection). 19:07:57 -!- hiato has joined. 19:08:44 Hey all, got a new esolang, and I'm struggling to write a quine in it. Does a language have to be TC to have quines? 19:09:05 HQ9+ has quines and isn't TC 19:09:17 But that is a language feature. Ok, non-trivial quines 19:09:41 Still no. 19:09:42 Probably not, but I can't prove it. 19:09:57 hiato new esao lang? 19:09:57 Take any language with a quine. Figure out how much memory it uses. Restrict it to that much memory. 19:10:03 Ok, cool, then I guess it's programmer error here :P 19:10:16 uorygl: Right, but that requires a quine to reduce the memory 19:10:23 fax: yep, I'll upload the spec now :) 19:10:24 Well, that doesn't imply that your language has quines 19:10:37 No, but I seem to recall a proof that a TC language with output capabilities sufficient to output itself must have a quine. 19:10:56 it's pretty much one quine that you can rewrite into whatever language 19:11:12 hiato: well, the language with the memory restricted, which is not TC, still has a quine. 19:11:15 there was something about fix point thereom, but I can't remember what it meant or why it was important 19:11:30 So, a non-TC language with a non-trivial quine. 19:11:49 uorygl: well, memory isn't really the issue here, it's string stuff and delimeters, actually, only delimeters 19:11:56 * uorygl shrugs. 19:12:00 C has quines, and C is not TC. 19:12:10 Heh, lovely C. 19:12:31 pikhq: right, but it can easily operate on strings, and it has the augmented print function %c, %i etc 19:12:42 C is not TC? 19:12:56 fax: Mandated finite memory. 19:13:08 * hiato thinks it's probably best to keep quite about this now, sign, C again 19:13:28 fax: there was that "discussion" under bit-bit-jump 19:13:37 iirc 19:15:34 fax: Pointers must be a multiple-of-char size. A char must have a bound, and that bound must be storable in a char. Thus, C has finite memory. QED. 19:18:25 http://dpaste.com/172601/ 19:18:30 http://www.jaapsch.net/puzzles/morph.htm 19:18:48 sorry, the explanation is terrible, but the source should clear it up 19:21:39 the problem is that # (as a string, so as to avoid execution) needs to be escaped viz., :# Then, : needs to be escaped and it's a horrible route from there on in 19:24:02 unless I'm going about it in the wrong manner, and perhaps the stack should hold individual tokens instead of strings 19:24:06 -!- TehZ has joined. 19:24:28 No chat? :( 19:24:50 何? 19:24:51 heyo 19:25:03 それが本当にチャネルだ! 19:25:07 "何?"?????? 19:25:16 Sorry. 19:25:21 np 19:25:27 Switching from Japanese manga to English chatroom = possible confusion. 19:25:28 :P 19:25:41 uorygl uragirl? 19:25:57 I have to find some puzzles for you 19:25:58 ok who wants to see my little algo now? 19:26:16 What, people manage to make that mistake even with this spelling of my name? :P 19:26:45 la uorygl nakni 19:27:00 -!- TehZ has quit (Client Quit). 19:27:01 AnMaster: That's a very long-looking corridor. 19:28:23 fizzie, it is very long 19:29:08 * hiato cannot believe someone would have the time to do this http://en.wikipedia.org/wiki/Tupper%27s_self-referential_formula 19:29:30 fizzie, to the right it continues for another, wider, "section" like the one I took the photo in. 19:29:38 err 19:29:40 not wider, longer 19:29:42 I meant 19:31:25 well, it seems that Quine -> TC may not hold, but TC -> quine does : "By the fixed point theorems in logic, such a program exists in any Turing-complete language in which printing..." 19:31:43 * hiato cannot believe someone would have the time to do this http://en.wikipedia.org/wiki/Tupper%27s_self-referential_formula <--- .... wow... 19:32:10 AnMaster: Yep, I'm still picking my jaw up. I mean, I knew you could do relations, but encoding bitmaps? 19:32:27 hiato, well, plotting relations is common. 19:32:33 uorygl, http://www.youtube.com/watch?v=ONYN8yAEfpA http://www.youtube.com/watch?v=uzgnpf2URhQ http://upload.wikimedia.org/wikipedia/en/4/42/Haberdasher-anm-01.gif 19:32:34 well, not as common as functions 19:32:35 bbl 19:35:48 I'll use the fact that I'm unimpressed by Tupper's self-referential formula as a status symbol. :P 19:36:09 how can you not be impressed by that? Do you know how to make it? 19:36:26 More or less. 19:36:58 i guess it's basically a less elegant and 2D version of godels beta function... 19:38:42 oh! "The formula was first published in his 2001 SIGGRAPH paper that discusses methods related to the GrafEq formula-graphing program he developed." 19:38:48 I learned taylor series from this program 19:41:41 uorygl did you see the links I gave you 19:45:49 :[ 19:47:15 guys 19:47:29 should i use haskellish notation for my algorithm, even tho its written impertively? 19:55:14 augur, I'm not sure that makes terribly that much sense to me 19:55:29 :p 19:55:32 * hiato ok, that is how not to write a sentence 19:55:40 (mine that is) 19:56:28 and augur, what is exactly is your algorithm? 19:57:06 a relativized maximal clique algo 19:57:36 right. sure it is. does it make coffee? otheriwse I would say your deltas are off a tad 19:58:30 Relativized, you say? 20:00:28 yes 20:00:31 relativized. 20:00:48 that is, the largest clique that some node is in 20:00:58 not the largest clique in the graph but just the largest clique a given node is in 20:01:11 Couldn't you find that by dropping the node and all the nodes it's not connected to? 20:03:45 uorygl?!??!?!?!? 20:04:12 geez I went and looked it up in my book for you and you're just ignoring me 20:06:26 wanker 20:08:44 uorygl fuck you 20:08:55 uorygl: no, because that doesnt mean that they form a clique 20:10:36 uorygl: http://wellnowwhat.net/linguistics/node-relative%20maximal%20clique.pdf 20:10:37 -!- jcp has joined. 20:12:29 don't youknow it's rude to ignore people 20:13:19 i need to go buy some spraypaint. bbiaf guys <3 20:13:29 I mean by doing that and then finding the maximal clique of the result. 20:13:37 ey? 20:13:58 oh, you mean taking the subgraph of G that contains the node and all its neighbors 20:14:11 (and thus all the edges that only include those neighbors) 20:14:28 and then finding the maximum clique in that? 20:14:35 The subgraph that contains the node's neighbors only, not the node itself. 20:14:43 that still doesnt guarantee it, because the biggest clique in that might not include the node itself 20:14:58 * fax wonders how uorygl leaned to be such a bastard 20:15:05 no but it must, right 20:15:10 sure then i guess that would work 20:15:18 if you included the node, crucially 20:15:20 Surely any clique in that can be extended to include the node itself. 20:15:28 right 20:15:34 anyway, check out the algo while im off doing stuff 20:15:36 see ya <3 20:20:01 -!- augur has quit (Ping timeout: 264 seconds). 20:20:37 -!- Slereah has quit (Ping timeout: 264 seconds). 20:24:20 -!- comex has changed nick to comex_. 20:24:21 -!- comex_ has changed nick to comex. 20:24:33 -!- comex has changed nick to comex_. 20:24:35 -!- comex_ has changed nick to comex. 20:26:12 -!- Slereah has joined. 20:32:16 fizzie, any such corridors at your university btw? 20:32:32 -!- Gracenotes has quit (Quit: Leaving). 20:33:42 I guess the main building corridors look a bit like that, though not quite that.. how should I put it, open. 20:34:32 fizzie, I think the eqvirectangular (?) projection is partly to blame for that 20:35:10 equirectangular that is 20:35:17 (just checked the spelling) 20:35:42 fizzie, not that cylindrical projection looks much better, and rectilinear is just not feasible with that fov 20:38:37 fizzie, according to hugin I have ~185° fov 20:39:24 fizzie, actually more (214), but not all was usable 20:41:29 (not usable, as in photo ends up looking not very nice due to corridor not being in "center") 20:41:49 (oh and all there was to see was the power cable to my laptop lying over a table basically 20:41:53 ) 20:42:32 some day I should try to take a 360° panorama 20:42:43 also I wonder if that really is a degree sign, or if it is a ^0... 20:43:30 hm... °⁰ well degree sign I guess 20:44:09 hey, am I holding a monologue or something? 20:44:11 * AnMaster prods fizzie 20:44:38 I'm sort of a bit away here. 20:44:55 I'd photograph places at the university, but I don't want to do it when there are people there. 20:45:03 true 20:45:13 fizzie, btw fish eye looks funny 20:45:18 tried that projection? 20:45:38 stereographic actually seems to kind of work for this... 20:57:47 -!- augur has joined. 21:01:43 -!- Phantom_Hoover has joined. 21:01:50 a 21:01:52 -!- Phantom_Hoover has quit (Client Quit). 21:10:13 uorygl: hey 21:10:36 Ahoy. 21:10:53 sup 21:11:04 Not much. 21:11:06 uorygl is a twerp 21:11:13 true 21:11:23 he can go stick it up himself 21:11:32 hot 21:13:33 * uorygl disassembles a pen and screws a TRS size adapter onto one of the parts. 21:14:31 I imagine that in my younger days, I would have expected to be able to do that, plug it into an amplifier, and sing into the tip of the pen, and hear my voice coming through the amplifier. 21:14:53 uorygl I hope yu get electrocuted 21:29:19 -!- Ilari_ has joined. 21:30:54 -!- Ilari has quit (Quit: "Address/window change"). 21:30:54 -!- Ilari_ has changed nick to Ilari. 21:47:35 well uorygl? is my algorithm awesome or not? 8D 21:51:05 -!- Phantom_Hoover has joined. 21:59:16 -!- hiato has quit (Quit: underflow). 22:14:56 Has nothing really happened for 25 minutes? 22:15:36 butt 22:15:46 What? 22:15:49 butt 22:20:32 -!- johsam1 has joined. 22:20:59 -!- johsam1 has left (?). 22:28:49 -!- Phantom_Hoover has quit (Quit: ChatZilla 0.9.86 [Firefox 3.5.8/20100214235838]). 22:32:02 * uorygl disassembles a pen and screws a TRS size adapter onto one of the parts. <-- TRS? 22:32:39 uorygl I hope yu get electrocuted <-- why? 22:35:03 because he ignored me 22:35:29 he linked to some puzzles site so I tried to show him my favorite puzzles but he just completely ignored me, why would someone do that? It's so horrible 22:43:22 huh 22:43:27 fax, maybe he missed it? 22:51:04 -!- Ilari has quit (Quit: Reconnecting). 22:51:12 -!- Ilari has joined. 22:57:04 AnMaster: tip-ring-sleeve, consumer audio connectors. 22:57:53 -!- comex has left (?). 23:05:03 uorygl, ? 23:05:04 uorygl: ouch. im doing some tests on random graphs, and the time complexity seems to be exponential :( 23:05:12 its _fast_ but its exponential 23:05:14 ah 23:06:13 -!- werdan7 has quit (Ping timeout: 619 seconds). 23:07:21 :( 23:07:27 and i had thought i'd done it! D: 23:08:25 Proven P = NP? 23:08:34 hell yeah bitch 23:13:51 -!- werdan7 has joined. 23:17:44 -!- comex has joined. 23:29:50 augur, I doubt P=NP is the case 23:29:56 ;) 23:29:57 still! 23:30:00 there seems to be nothing that points in that direction 23:30:36 augur, what I find more likely is than P=NP is that P!=NP but that is unprovable. (Of course it could be unprovable if it is unprovable or not...) 23:32:13 -!- fax has quit (Ping timeout: 260 seconds). 23:32:52 -!- BeholdMyGlory has quit (Read error: Connection reset by peer). 23:33:20 it's provable.. it's just very, very hard to prove. 23:33:26 ...exponentially hard 23:33:29 oh yeah? prove it. 23:33:32 8D 23:34:15 actually, this is interesting, the graphs that seem to be taking the longest to calculate are the ones that are very nearly complete, but those are _easy_ when just run by themselves. so i might be actually hitting computational randomness in the calculation times 23:34:16 -!- coppro has joined. 23:38:15 yeah, that seems to have been what it is; after averaging multiple compute times for each graph, the number of graphs that are extremely long to compute for has dropped 23:40:32 -!- tombom has quit (Quit: Leaving). 23:52:17 -!- MigoMipo has quit (Read error: Connection reset by peer). 23:53:28 bhatturas <3 23:58:38 damnit, i keep doing this 23:58:47 the algorithm ive been testing? wrong fucking algorithm. 23:58:57 i have two methods on my graph class that solve this problem 23:59:07 both with the same name, except for a version number 23:59:21 e.g. relmaxclique and relmaxclique2 23:59:26 and the first i know to be a shitty algorithm 2010-03-17: 00:01:42 -!- oerjan has joined. 00:02:51 fuck yeah, now its looking good :) 00:03:33 10:03:38 hmm, if a problem is NP, its reverse is normally P 00:03:44 you should be _glad_ you're not here right now 00:04:17 oerjan: :) 00:04:22 * augur huggles oerjan 00:04:23 (translation: that is just nonsense) 00:04:45 unless he had something strange in mind by "reverse" 00:04:51 isn't that part of the definition of NP? 00:04:59 have i told you about my algorithm that seems to solve the maximum clique problem in quadratic time? 8D 00:05:02 certainly not 00:06:07 i have a link somewhere in the logs 00:06:09 did you see it? 00:06:55 augur: well since the part of the logs i'm at mentioned it was NP-complete, i assume that's only "seems" 00:07:04 it probbaly does only seem 00:07:25 im running it in Textmate's ruby interpreter, so its slow, right 00:07:31 so i cant so the kinds of tests i'd like to do 00:07:40 but otherwise i should congratulate you on soon becoming a millionaire ;D 00:07:47 we could implement it in C and get some blazing speed out of it then throw some random data at it 00:07:49 MAN I WISH 00:09:22 augur: you should test it on a maximum clique problem that has been reduced from some other NP-complete problem like SAT. 00:10:02 sure but what i need is not a single test case but a bunch of them, so that i can actually plot complexity curves 00:10:07 i don't know (at least on the spot) how the reduction goes though 00:10:17 a single test case is fine, but that just tells me how fast it solves this one problem 00:10:33 augur: well if you have the actual reduction algorithm, you could test reduced SAT cases 00:11:23 right. i guess what i really need is a way to just run through a shitton of graphs. 00:11:38 right now im just testing it on 100 random graphs with n nodes 00:11:46 for n in 2..30 00:11:51 -!- Oranjer has joined. 00:12:01 augur: Ruby? Of course it's slow. The interpreter is literally traversing the AST! 00:12:09 ;) 00:12:35 i know its slow. i need to write this in C, but im too lazy to figure that out right now. i suppose if i could find a graph library it'd be trivial 00:13:02 "the problem of finding the maximum clique is both fixed-parameter intractable and hard to approximate" 00:13:07 and i need to figure out how to use the standard array and hash libraries 00:13:42 Array library? C? *Hah*. 00:13:57 :P 00:14:11 what? :P 00:14:23 you know, something that will automatically manage arrays for me 00:14:34 No such thing. 00:14:37 what 00:14:38 yes there is 00:14:42 You're lucky to have malloc. 00:14:43 augur: are you sure you are actually finding the maximum clique and not a _maximal_ clique? 00:14:48 * pikhq is being intentionally evil. ;) 00:14:51 :| 00:15:18 (i.e. a clique that cannot be enlarged) 00:15:20 But on a more serious note: there are no *standard* array libraries. 00:15:23 oerjan: yes. see, the algorithm technically doesn't find the maximum clique, it finds the largest clique that a given node is in 00:15:29 You've got handy tools like "memcmp" 00:15:33 and "memcpy". 00:15:38 BUT, that problem is actually the maximum clique problem. 00:15:38 mhm 00:15:47 And things that claim to be tools like "strcpy" and "strcmp". 00:16:11 also, ofcourse im finding a maximal clique. the maximum clique IS maximal. 8D 00:16:18 * augur is a semanticist 00:17:03 yeah thats right 00:17:12 i know how to do denotational semantics /for real languages/ 00:17:35 suck it, strachey and scott 00:17:59 general semantics? hah 00:18:03 no. 00:18:07 :| 00:18:11 I know! 00:18:12 general semantics is not semantics. 00:18:18 I know! 00:22:01 10:22:57 generate them at random? by definition, you can test if an answer to an NP-complete problem is correct in P-time 00:22:06 *facepalm* 00:22:30 only if the answer is _yes_ 00:22:45 And only if "answer" means a whole lot more than the answer. 00:22:54 oerjan: forget him 00:22:59 heh 00:22:59 lets translate this algorithm into C 00:23:36 Otherwise, the statement would be equivalent to "you can determine if the answer to an NP-complete problem is YES or NO in P-time". 00:23:57 -!- FireFly has quit (Quit: Leaving). 00:24:32 I once met a guy who was 120% sure that P != NP. 00:24:33 uorygl: mind you what he said, with a liberal interpretation, is true if NP = co-NP. but that is not known. 00:25:16 You know, if he really is 120% sure, he ought to be willing to take a bet where he loses $1 if P != NP and loses $1,000,000 if P = NP. 00:25:31 oerjan: cmon, lets do it. im starting to see some potentially exponential trends so lets get to doing this for real 00:25:57 what do you mean "us", kemosabe? 00:25:58 Calculate the expected value: 1.2 * -1 + -0.2 * -1000000 = 199998.8 00:26:35 oerjan: us, as in if its really polynomial you'll get half the credit. 00:26:46 *kimosabe 00:28:04 -!- charlls has quit (Quit: Saliendo). 00:29:08 wait, it's kemosabe, how does google dare to suggest a _wrong_ correction? 00:31:40 magic 00:32:25 Google Dares With Magic 00:32:52 i'd dare your magic 00:32:55 if you know what i mean 00:32:56 ;o ;o ;o 00:39:53 wow wait 00:40:01 are there really no standard C libs for arrays? 00:43:25 It's not part of the standard library, no. 00:43:52 Strictly speaking, C *does not have arrays* that are not global or on the stack. And you cannot pass arrays as arguments. 00:44:00 What you have is a pointer and syntactic sugar. 00:44:46 right, i know. what i mean is some sort of struct or whatever and some functions that will manage it so i can just push and pop as needed 00:44:58 Not in the C library. 00:45:06 ok 00:45:08 im surprised. 00:57:47 -!- Gracenotes has joined. 01:16:12 where the fuck is memcpy located :| 01:17:54 string,h, according to man memcpy 01:18:32 Erm. string.h 01:19:27 i think i might need to just write my own version actually 01:19:50 no probably not 01:19:50 ok 01:31:00 hm. 01:31:08 oh. 01:33:05 weird. 01:35:01 `run echo 'Because there are a LOT of ways to mess up these' | wc 01:35:11 1 11 49 01:36:10 -!- lament has quit (Ping timeout: 264 seconds). 01:36:19 -!- lament has joined. 01:54:03 O_O 01:55:41 Yes? 01:59:40 Quite Definitely Maybe. 02:05:01 -!- comex has changed nick to HiEverybody. 02:05:07 -!- HiEverybody has changed nick to comex. 02:05:55 comex: hi! 02:06:01 :p 02:09:53 -!- jcp has quit (Ping timeout: 260 seconds). 02:33:30 -!- jcp has joined. 02:45:54 -!- pikhq has quit (Ping timeout: 256 seconds). 02:46:11 -!- oerjan has quit (Quit: Reboot). 02:47:08 -!- pikhq has joined. 02:51:00 -!- nooga has joined. 02:51:02 hi 02:51:22 i've found something amusing on google maps :D 02:51:23 -!- Sgeo has joined. 02:51:28 http://to./38k2 WTF? 02:52:23 -!- oerjan has joined. 02:52:29 well then 02:52:31 0.5mil broad stripe over bajkal O_o 02:54:03 looks like a post-processing artifact to me 02:54:11 indeed 02:54:34 looks awesome 02:55:18 no no, it's the famous barguzin half-bridge 02:55:38 for soviet tanks, perhaps 02:55:39 ;D 02:55:53 if this wasn't 2010 i'd say it was a piece of tape 02:59:54 http://en.allexperts.com/q/Geography-1729/running-Lake-Baikal-1.htm 02:59:58 rotfl rotfl rotfl 03:00:21 they're trying to explain it with another conspiracy theory 03:00:23 :DD:DD: 03:02:50 -!- Oranjer has left (?). 03:21:03 -!- coppro has quit (Quit: I am leaving. You are about to explode.). 03:31:56 okay, so in my game, if the player hits the jump button 2 frames before they touch the ground, the game gives them leeway and jumps anyway once they touch down 03:32:04 hope this doesn't screw with their brains 03:33:18 I'm actually pretty happy about the heuristics I've come up with. scrolling, jumping behavior, ... 03:33:21 brainfucking is strictly allowed in this community 03:33:47 screw with their brains, not screw their brains 03:51:18 -!- jcp has quit (Ping timeout: 252 seconds). 04:00:10 erg 04:00:25 why am i getting errors when i have circular dependency graphs in C? :| 04:07:28 -!- jcp has joined. 04:13:36 what do you mean by circular dependency graphs 04:14:02 augur: ^ 04:14:13 nevermind 04:14:17 i found a better solution 04:14:47 if you mean #include's, then they cannot be circular afaik, they're textual inclusion 04:15:06 i was using #import, but 04:15:33 -!- MizardX has quit (Ping timeout: 240 seconds). 04:16:41 ah that's apparently not C, but C++ 04:16:55 XCode. 04:26:50 -!- jcp has quit (Ping timeout: 248 seconds). 04:31:59 -!- werdan7 has quit (*.net *.split). 04:31:59 -!- SimonRC has quit (*.net *.split). 04:32:35 -!- SimonRC has joined. 04:39:45 -!- werdan7 has joined. 04:46:36 "Probably a simple question but what do I put for the login universe for Preston bot and other bots if I am in AWEDU? I have tried !AWEDU! but get the message ' cant resolve universe host'." 04:46:49 Basically, the login universe is a server 04:47:04 So, this person is somewhat clueless, but so what 04:47:14 However, this is the response from staff: 04:47:27 "Could you please tell me what your User name is in AWEDU and which world is yours? I will need this to get the info. 04:47:27 " 04:47:31 ^^lies 05:01:02 -!- jcp has joined. 05:33:32 -!- oerjan has quit (Quit: Good night). 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:08:01 -!- tombom has joined. 08:40:57 -!- jcp has quit (Quit: I will do anything (almost) for a new router.). 08:50:07 -!- tombom has quit (Quit: Leaving). 10:28:39 -!- lereah_ has joined. 11:13:48 -!- kar8nga has joined. 11:32:48 -!- MizardX has joined. 11:37:14 -!- MizardX has quit (Read error: Connection reset by peer). 11:50:02 -!- MizardX has joined. 12:13:35 -!- kar8nga has quit (Remote host closed the connection). 12:56:41 -!- kar8nga has joined. 13:04:36 -!- MigoMipo has joined. 13:18:36 -!- amca has joined. 13:39:24 -!- ais523 has joined. 14:52:39 -!- deschutron has joined. 14:56:56 -!- fax has joined. 14:57:47 -!- Sgeo_ has joined. 15:00:04 -!- MigoMipo has quit. 15:00:27 -!- Sgeo has quit (Ping timeout: 245 seconds). 15:02:23 -!- MigoMipo has joined. 15:03:30 -!- lament has quit (Ping timeout: 245 seconds). 15:03:45 -!- lament has joined. 15:07:47 -!- MigoMipo has quit (Remote host closed the connection). 15:10:52 -!- MigoMipo has joined. 15:23:12 -!- oerjan has joined. 16:06:02 -!- lament has quit (Ping timeout: 248 seconds). 16:06:28 -!- lament has joined. 16:23:10 -!- oerjan has quit (Quit: KABOOM!). 16:23:33 -!- nooga has quit (Ping timeout: 240 seconds). 16:25:44 -!- Gracenotes has quit (Quit: Leaving). 16:30:57 -!- sebbu2 has joined. 16:31:25 -!- sebbu has quit (Ping timeout: 260 seconds). 16:31:28 -!- sebbu2 has changed nick to sebbu. 16:37:24 -!- FireFly has joined. 16:57:26 -!- werdan7 has quit (Ping timeout: 633 seconds). 17:01:34 -!- deschutron has left (?). 17:06:10 -!- werdan7 has joined. 17:19:26 ais523, there? 17:20:07 yes 17:20:12 How deep snow have you personally seen in "real life"? 17:20:30 maybe 5-6 inches in the deepest parts 17:20:48 ais523, heh. Look at http://omploader.org/vM3YyMw then 17:20:50 took that today 17:20:56 image? 17:20:57 and well, it has started melting now 17:20:59 ais523, yes 17:21:00 what else? 17:21:09 and yes, that's pretty thick 17:21:15 ais523, well, not to me :P 17:21:28 The snow was deeper than that here last year. 17:21:29 and not compared to how it was before melting... 17:21:49 Gregor, well as I said it started melting. About a week or two ago 17:22:04 Well, I don't live in the frozen north :P 17:22:49 Gregor, what do you mean? 17:23:24 wth at one picture from my mobile phone. It is just black in the lower part 17:23:32 I mean, quite simply, that I don't live in the frozen north. 17:23:34 lik not all image data was captured or something 17:23:45 AnMaster: Perfectly horizontal line? 17:23:52 Gregor, yes: http://omploader.org/vM3YyNw 17:24:15 Heh, funny, it shows white for me :P 17:24:19 It must truly not have all the image data. 17:24:26 Gregor, well, it shows black in eog 17:24:29 hm 17:24:32 Gregor, perhaps 17:24:33 that's sad 17:24:44 was going to make a panorama including that image 17:26:13 Not now you're not! 17:26:25 [1189626.022063] googleearth-bin[3782]: segfault at 0 ip (null) sp 00000000fff4cb24 error 14 in googleearth-bin[8048000+49000] <-- argh 17:26:57 okay, now it is suddenly no longer reproducible 17:26:57 wth 17:27:27 okay... now it crashes at another point instead 17:27:29 AnMaster: That's it? :P 17:27:39 (the snow) 17:27:45 hmm, I was reading an article on making stupidly small executables earlier today 17:27:53 and now I recognise that 8048000 straight off 17:28:05 pikhq, well, compared to UK! 17:28:17 AnMaster: the canal here froze over over the winter 17:28:29 some people were rather unwisely trying to walk on it, but it could bear their weight 17:28:39 also, someone tried to drive a car down it, and it /couldn't/ bear its weight 17:28:42 it hit the local news 17:28:48 they got quite a way, though 17:30:31 AnMaster: the canal here froze over over the winter <-- is that rare? 17:30:37 yes 17:30:42 never known it to happen before 17:30:53 at least, it's common for it to get a bit of ice on it 17:30:56 ais523, well, here we have regular winter roads on the lake 17:30:59 but not for it to be able to bear weight 17:31:06 for cars, some winters even for trucks 17:31:15 but I think it closed for this season last week or so 17:31:21 (the one close to here that is) 17:31:21 AnMaster: it's so nice talking to scandinavians, they're the only people (apart from possibly russians, some canadians, and eskimos) who don't think the UK is stupidly cold 17:31:36 ais523, we think it is stupidly rainy 17:31:43 ais523, also what about Germans? 17:31:57 hmm, I rather like it here, but maybe I'm just used to it 17:34:35 fizzie, measuring that corridor from the pano yesterday in google earth gives it as roughly 60 meters between the nearest doors visible at either end 17:34:47 fizzie, perhaps 50 17:34:49 also, I'm disappointed at the fact that someone put an URL shortener at http://to./ 17:35:09 to.? 17:35:12 wth is that 17:35:15 a TLD 17:35:18 well yes 17:35:23 but you can't put a site at it 17:35:24 can you? 17:35:27 someone bought the A record for a TLD just so they could put an URL shortener there 17:35:30 of course you can 17:35:37 ais523, is that allowed? 17:35:40 you can add an A record for any domain if you own it 17:35:50 and nothing in the spec says you can't 17:36:04 ais523, well, but is it allowed by policy... 17:36:18 well, /someone/ did it 17:36:30 and allegedly ICANN's planning to sell brand new TLDs to companies 17:36:39 I'm thinking a TLD owner doesn't have very many constraints as to what they can do with it. 17:38:03 fizzie, I took a picture at near the end of a 240 meter corridor at the university (length estimated from google earth) 17:38:07 sadly it was rather blurry 17:38:19 and didn't really show how long it was 17:38:26 there was an MX record for mailto:i@an for a while, IIRC 17:38:27 I wonder how much money Tonga gets from the (ab)use of their .to TLD. 17:38:30 maybe still is 17:38:38 fizzie, sorry, 270 17:38:40 not 240 17:38:51 fizzie, and .nu too 17:38:52 fizzie: I seem to remember that when Tuvalu sold .tv, it was a significant amount of money for every member of its population 17:39:00 a few hundred thousand dollars or so 17:39:03 ais523, what is an? 17:39:05 no wonder they sold it 17:39:22 AnMaster: I'm not sure; who really cares, I doubt the original owner of the TLD has much correlation with its use 17:39:24 ais523, per person!? 17:39:28 ais523, that were given out? 17:39:30 an. currently seems to have just NS (and the SOA) entries. 17:39:33 also what domain did they get after? 17:40:14 .an: Netherlands Antilles, previously known as the Netherlands West Indies or Dutch Antilles/West Indies. 17:40:30 AnMaster: according to Wikipedia Tuvalu has a population of 12373 17:40:32 There were TLDs with MX records though, I think we dig'd for those not long ago. 17:40:56 presumably, with all the money they got from the sale they have no problems buying domains elsewhere if they need them 17:41:24 ais523, what a pity there are 28 persons more than the ideal! 17:41:41 presumably the value changes over time 17:41:58 there is no se. 17:42:01 but there is www.se 17:42:08 some domain registrar 17:42:22 ai. 14400 IN MX 10 mail.offshore.ai. 17:42:25 That was one of them. 17:42:41 ai? 17:42:49 So you could get x@ai as a working email address. 17:43:01 fizzie, xai? is that supposed to mean anything? 17:43:05 Except that there's probably quite a lot of MTAs that would add a site-specific prefix there. 17:43:11 Just "x" as in "arbitrary". 17:43:14 ah 17:43:29 evil.ai would be a nice domain 17:43:49 .ai is for Anguilla, another one of those tiny specs in the Caribbean. 17:43:52 but that yuoswhatever would probably prefer good.ai, unless I misremember what his opinion was 17:44:03 "The total land area of the territory is 91 km2 (35 sq mi), with a population of approximately 13,500 (2006 estimate)." 17:45:00 Heh, www.ai: "Anguilla's consumption-based tax system is hospitable to productive firms that create income, profits and wealth. And Anguilla has strict secrecy laws, fresh air, and fantastic beaches." 17:45:20 What a delightfully coy way of saying "we do tax evasion here". 17:45:39 hehe 17:45:53 An .ai domain is $100 for 2 years, available to anyone. 17:45:57 you could try emailing webmaster@ai and asking if they're offering mail addresses there 17:46:08 um, not webmaster 17:46:11 @ai ?? 17:46:14 not @something.ai ? 17:46:22 what's the address to contact the mail server owner? 17:46:30 fax: you can put DNS records in for a TLD if you own it 17:46:42 * AnMaster watches one now slush filled street in google earth's street view 17:46:44 that is so cool 17:46:49 it is amazing that it is the same place 17:47:01 And, as was just mentioned, ai. is one of the relatively few ones that has one already. 17:47:06 ICANN will truly jump the shark if it ever offers a 0-character TLF 17:47:08 *TLD 17:47:12 which would presumably be http://./ 17:47:24 and a subdomain would be http://domain../ 17:47:28 ais523, is that even possible? 17:47:33 That one I'm not so sure is legal. 17:47:45 (in theory, google.com is google.com. etc but people pretty much always leave off the final dot) 17:48:17 (and the "correct" meaning for http://google.com/ is http://google.com.localhost./) 17:48:36 ais523, no it isn't. It will search in the default search whatever for domains 17:48:52 from my resolv.conf I think that is "domain lan" 17:48:55 not 100% sure though 17:49:06 well, I was trying to simplify a bit 17:49:14 hm no 17:49:16 but the idea is that it uses relative-to-local addressing 17:49:17 there is a search line 17:49:21 according to man page 17:49:21 if you miss off the final . 17:49:58 -!- jcp has joined. 17:51:05 ndots:n 17:51:06 sets a threshold for the number of dots which must appear in a name given to res_query(3) (see resolver(3)) before an initial absolute query will be made. The default for n is 1, 17:51:06 meaning that if there are any dots in a name, the name will be tried first as an absolute name before any search list elements are appended to it. The value for this option is 17:51:06 silently capped to 15. 17:51:12 why is it "silently capped to 15" 17:51:13 -_- 17:51:24 that so makes no sense 17:51:47 ah, ok 17:52:23 so a.b.c.d.e.f.g.h.i.j.k.com might be self-relative, but a.b.c.d.e.f.g.h.i.j.k.l.com always means a.b.c.d.e.f.g.h.i.j.k.l.com.? 17:53:03 RFC1035 (STD 13) specifies "