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