00:12:23 I thought you were supposed to use /italics/ for that, where available. :) 00:13:34 or just plain text 01:09:05 -!- c|p has quit ("Leaving"). 01:14:21 http://retroforth.com/paste/?id=420 02:00:12 zomg 420 02:03:17 hmm 02:03:37 MS are trying to be Google: http://slashdot.org/articles/07/06/06/1848214.shtml 02:04:02 I initially just assumed that it was Google that did this when I saw the video 02:04:37 google is becoming evil 02:04:38 The app really needs that cool multi-touch screen though. 02:07:03 photo zooming, wow 02:07:19 no, wait until he gets to the Notre Dame bit 02:09:19 hmm 02:10:21 i wonder how they put all the pictures together 02:21:14 I think that was the main thing that the software did. 02:21:28 ...yeah 02:30:33 zzzz 02:58:16 -!- mee has left (?). 03:53:30 -!- erider has quit ("I don't sleep because sleep is the cousin of death!"). 04:29:57 -!- erider has joined. 04:31:12 1, 11, 21, 1211, 111221, 312211, 13112221, 1113213211, 31131211131211, 13211311131221 04:32:40 11131221133113112211 04:32:57 yes 04:39:00 Interesting program. 04:39:03 :p 04:43:32 -!- boily has joined. 04:45:00 I wonder at what rate the sequence expands 04:48:25 11131221133112132113212221 04:48:32 3113112221232112111312211312113211 04:48:38 1321132132111213122112311311222113111221131221 04:48:42 any scheme users here 04:48:47 11131221131211131231121113112221121321132132211331222113112211 04:48:56 311311222113111231131112132112311321322112111312211312111322212311322113212221 04:49:26 faster than exponential, looks like 04:50:53 and it looks like the digits don't go above 3 04:51:19 you can't go above three 04:52:08 why not? 04:52:53 because, for example, to get a 4 you need something like 1111, 2222, ... 04:53:27 1111 refers, in the precedent step, to 11, which normally is written 21 in the next step 04:53:27 yes 04:53:36 and why can't there be 111 ones? 04:53:44 oh 04:53:47 umm... 04:55:22 http://en.wikipedia.org/wiki/Conway_sequence 04:55:33 his starts with a 3, though. 04:56:02 actually, http://en.wikipedia.org/wiki/Look_and_say_sequence 04:56:42 -!- GregorR-L has joined. 04:56:48 bah, i'm never the first one to think of it 04:58:06 lol @ the polynomial on that page 04:58:54 funny how something that complex comes from a simple sequence (or, a simple to generate sequence) 04:58:58 * pikhq hails the EgoBot lord 04:58:59 :p 04:59:26 wooo... this polinomial scares me 05:02:18 1, 11, 101, 111011, 11110101, erm 05:02:27 -!- puzzlet_ has joined. 05:19:39 -!- puzzlet has quit (Read error: 110 (Connection timed out)). 05:20:19 100110111011 05:20:27 111001011011110101 05:20:37 111100111010110100110111011 05:20:53 100110011110111010110111001011011110101 05:22:13 GET YOUR BINARY OUT OF HERE 05:22:14 BITCH 05:22:16 I mean hi. 05:25:46 probably wasn't a good idea to set ruby going with this, as it's now consuming about 20MB per second 05:27:14 yes, I definitely don't have 1.89770965081337e+030 bytes of RAM :( 05:27:53 why would you need that much? 05:28:48 because I was doing it the silly way, i.e. keeping it all in memory at once 05:29:34 I think you should be able to calculate the length recursively if you give it a depth 05:29:54 huh? 05:30:41 I was calculating the rate of growth of the 1, 11, 21, 1211 sequence.. in a very dumb way (and doing 250 iterations) :) 05:32:43 iterations? 05:33:24 I was thinking of 1 -> 11 as one iteration 05:47:14 Gregor, I was just randomly running strings on cplofc. . . And I'm wondering: how the *hell* did "Hello, world!" get into there? 05:49:16 http://www.acm.org/classics/sep95/ Did you happen to pull this trick off? 05:52:59 that would be awesome 05:53:30 It's not a *horribly* difficult trick. . . 05:53:52 Whee bit tricky when you've got two implementations that your self-hosting compiler can run on, though. ;) 05:54:10 . . . Oh, shit. Dplof is written in D, and Gregor is a major D developer. . . 05:54:11 :p 05:54:46 Although that seems like a bit of excessive work for sticking "Hello, world!" in something. 05:55:14 the putting it in the compiler you're compiling is the tricky part 05:55:51 Not really. Once you've got a self-hosting compiler, you add in a pattern matching function or two, then compile, remove, distribute binaries. 05:56:45 There's a few problems with this approach, of course. . . The source could change enough to break the pattern matching being the most obvious. 05:57:13 it would be better if you could put it in other compilers 05:57:40 Why not. 05:57:53 You just add another pattern matcher to match a specific compiler. 05:58:14 in compilers you don't know about 05:59:01 That's impossible, unless you can somehow match any function which could *possibly* result in valid machine code. 05:59:23 that's why i said it was tricky 05:59:33 The main problem with *that* being that, odds are, your compiler would break every binary, and it'd be noticed. 06:27:42 -!- boily has quit ("WeeChat 0.2.4"). 06:49:22 -!- oerjan has joined. 06:57:32 pikhq: You should've said "GregorR-L", so I'd recognize that you'd messaged me :P 06:58:33 pikhq: And that's from some tests compiled into fileio.plof 06:58:38 -!- GreaseMonkey has joined. 07:00:13 -!- sp3tt has quit (Remote closed the connection). 07:00:18 -!- sp3tt has joined. 07:02:43 GregorR-L: Ah. 07:03:18 I still wouldn't put Trusting Trust past you. ;) 07:03:47 i want to invent a language so i can do that 07:04:33 bsmntbombdood: Screw that. Stick it in a Brainfuck compiler. . . 07:04:50 Hmm. I should do that to Pfuck. :p 07:04:55 but Trusting Trust only works properly if the language is self-hosting 07:05:01 no one compiles login with a bf compiler 07:05:48 And Brainfuck self-hosts. 07:06:50 clarification: the best compiler for the language must be yours, and self-hosting 07:07:09 right 07:07:14 Obviously, you should get it into GCC. 07:07:25 hmm, there's plenty of BF self-compilers out there 07:07:57 Especially if your target is BF :P 07:07:58 Preferably into one of the RTL optimisation passes. You could even leave the code *in* and nobody would notice it there! 07:08:18 :D 07:09:12 was it here someone mentioned a backdoor in the linux kernel that was designed to look like a simple typo? 07:09:55 i have can't hair all over me 07:10:15 There's another good place to put one. . . 07:10:22 no parse 07:10:23 Except, of course, that GCC is used on more archs. 07:10:41 GCC is, after all, the #1 compiler on everything but Windows. 07:10:53 yah 07:11:01 the #1 compiler on Windows is " 07:11:02 " 07:11:06 the #1 compiler on Windows is "don't bother" 07:11:07 vc++ 07:11:14 (I of course refer to popularity, not quality. VC++: EWW.) 07:11:22 yes 07:11:34 c compilers are crap under windows 07:11:59 http://www.youtube.com/watch?v=xiKwErpPwMs 07:12:10 (On the subject of Microsoft :P) 07:12:28 VC8's not all that bad. 07:13:23 Not entirely. 07:13:36 GCC is a good C compiler for Windows, after all. 07:16:55 GregorR-L: You, uh, do realise that Windows 1.0 had a (craptastic) color GUI, not just B&W, right? 07:17:43 I didn't make that. 07:17:45 Microsoft did. 07:17:58 Don't ask me why they didn't use Windows' glorious pastel. 07:18:02 Ah. 07:18:20 That's a craptastic OS. 07:18:38 You could've read the description before asking that X-P 07:18:49 Too much work. 07:21:11 * pikhq really goes into uncontrollable laughter when comparing the capabilities of those POS machines and a UNIX box. . . (fine, so we're comparing tricycles to Ferraris. . . Still.) 07:22:00 that was in the movie? 07:22:30 No, Unix vs. Windows wasn't. 07:37:25 I need a language to invent 07:37:53 Invent Plof 0.1 07:39:49 but call it Flop just to avoid issues 07:40:02 Of course. 07:40:32 Be sure to wrap it up in sexps, and perhaps replace the typing system. 07:42:06 sexp++ 07:42:26 i mean 07:42:36 (set! sexp (+ sexp 1)) 07:42:47 Obviously, you want: 07:42:56 or (incf sexp) 07:43:20 (set! (int sexp) (int (+ (int sexp) (int 1)))) 07:43:32 Yay, overdoing type systems! 07:43:36 why would i do that? 07:44:04 Because a language must be worthy of the term "WTF" before it can be a language. :p 07:44:19 that sounds pretty sexp to me 07:45:03 * oerjan updates wikipedia's Look and Say Sequence article to mention Conway's "elements". 07:46:06 sexp!4++; 07:46:08 they are really the key to understand why the polynomial arises, although i don't explain _that_. 07:52:31 apparently you can do something similar but much easier with the binary version (easier because every 0 ends an "atom") 07:53:10 hehe, zero-terminated arbitrary numbers :D 07:53:23 i mean, every 0 followed by a 1 07:54:05 Quick, dial 11111111101010! 07:54:52 fibonacci numbers are also self-terminating i think, but more efficient 07:55:07 *fibonacci base 07:56:03 er, i mean you just add a 1 at the end 07:56:14 because 11 doesn't occur internally 07:57:08 gonna get off now for food, cya 07:57:51 -!- GreaseMonkey has quit ("I'm the world's fastest idiot!"). 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:04:16 -!- bsmntbombdood has quit (Remote closed the connection). 08:04:20 -!- bsmntbombdood has joined. 08:07:26 puts [set me::state $::human::states::sleepy] 08:08:00 [drink you coffee] 08:08:40 puts [expr {$::me::coffee == $::item::have}] 08:08:47 stdout: "FALSE" 08:09:12 stab your foot 08:44:12 stdio.StdOut.writeln("lawlehcoptah"); 08:44:47 roflbrothel!! 09:59:39 -!- oerjan has quit ("leaving"). 10:18:30 -!- GregorR-L has quit ("Leaving"). 10:22:40 http://www.codu.org/cmh/ 13:04:04 -!- Asztal has quit (":o"). 13:48:21 -!- jix has joined. 15:14:50 -!- bobbens has quit ("Lost terminal"). 15:36:10 yay, democracy FTW! http://en.wikipedia.org/wiki/Cleanfeed_(content_blocking_system) 15:36:42 Oh, BTW people, I managed a lucid dream. 15:36:43 Yay! 15:36:54 I didn't do anything sensible though. 15:37:20 I just ran for a short time, then flew, then woke up due to high heart rate. 16:42:26 -!- sebbu has joined. 17:03:51 -!- crathman has joined. 17:06:11 lol@BB! 17:06:17 http://www.theregister.co.uk/2007/06/07/big_brother_eviction/ 17:06:27 woman says "nigger"; gets kicked out 17:44:36 anyone here who hasn't seen this yet ought to: http://worsethanfailure.com/Articles/OMGWTF-Finalist-08-Universal-Calculator.aspx 17:44:49 You just go WTF WTF WTF 17:47:42 that's beautiful 17:48:28 did you try a multiplication? 17:48:55 The little icon in the taskbar pops up a baloon to tell you it's finished! 18:03:31 -!- oerjan has joined. 18:31:06 1, 11, 21, 1211, 111221, 312211, 13112221, 1113213211, 31131211131211, 13211311131221 18:31:06 11131221133113112211 18:31:16 i'm pretty sure i'd never have figured that. 18:37:52 -!- crathman_ has joined. 18:38:31 -!- crathman_ has quit (Remote closed the connection). 18:40:25 -!- crathman has quit (Read error: 110 (Connection timed out)). 18:53:56 oklopol: the trick is to have seen it before 18:54:41 heh 19:10:26 indeed, though i don't understand how i could be so blind 19:10:26 if you say it out loud, you can't miss it 19:10:26 unless retarded 19:10:26 why didn't i try that? 19:10:26 <- dumb 19:10:26 usually i think it is because you have some faulty assumption about what it must be 19:10:26 true, it looked familiar 19:10:26 it looked like one where you reverse the string 19:10:26 but, that had no relation, so i didn't get it 19:10:26 01101001100101101001011001101001 19:10:26 ... 19:11:29 22 19:12:02 hmm 19:12:04 huh? 19:12:35 now that i decoded that binary with python, i'm pretty sure one of the two of us failed miserably :< 19:12:36 (that's supposed to be the start of an infinite sequence of bits) 19:12:41 oh 19:12:49 then perhaps neither 19:16:31 (in a predictable pattern) 19:17:54 oerjan: that's a cute sequence 19:19:01 ...1001011001101001011010011001011001101001100101101001011001101001 19:19:33 ah, yeah... 19:19:41 that one 19:19:49 I also invented that as a kid 19:20:12 repeatedly? 19:20:24 huh? 19:20:35 -!- c|p has joined. 19:20:53 The "also" applied to the "I" not the "invented". 19:22:50 lament: your sequence is wrong from index 65 19:23:22 probably typo 19:24:02 no, your bits are switch 0-1 19:24:08 *switched 19:24:46 oh, in that case your short sequence simply doesn't give enough information 19:24:53 here's mine, from the beginning: 19:24:55 0110100110010110100101100110100110010110011010010110100110010110100101100110100101101001100101100110100110010110100101100110100110010110011010010110100110010110011010011001011010010110011010010110100110010110100101100110100110010110011010010110100110010110 19:24:59 etc 19:25:04 (no typos) 19:25:45 now, if my sequence has a simpler generating rule, i win :) 19:26:19 that one was correct, you must have made a cut/paste error in the first 19:26:24 oh, okay. 19:27:14 i suppose it's a nature of this sequence that a cut-paste error leads to effects like "all bits being reversed" 19:27:49 indeed 19:29:06 btw it's called the Morse-Thue sequence 19:34:35 let { foo = "0" ++ (tail $ concat [if c == '0' then "01" else "10" | c <- foo]) } in foo 19:35:38 OTOH, I think there is a log-space stream generator 19:36:30 i suppose, based on something like the parity definition in the MathWorld article 19:36:57 http://mathworld.wolfram.com/Thue-MorseSequence.html 19:40:12 SimonRC: that's not my rule... 19:40:38 -!- mangatiga has joined. 19:40:49 let parity 0 = 0; parity n = (parity (n `div` 2) + n `mod` 2) `mod` 2 in concatMap show $ map parity [0..] 19:41:05 wow 19:41:11 those rules are way too complex. 19:41:28 that one is log-space i hope 19:41:56 my rule: start with '01' 19:42:19 then take the existing string, split it into two equal halves, swap them and put the result after the existing string. 19:42:37 each operation grows the string by a factor of 2. 19:42:53 there are several ways of producing this :) 19:43:03 i like mine :) 19:44:15 (well maybe the parity function is not quite logspace as written) 19:44:33 i mean linear 19:44:39 not only my method is the best but the mathworld page doesn't mention it 19:44:50 or maybe i just don't notice it there. 19:46:35 your method corresponds to the substitution method done inside out 19:48:10 as in, assuming the two halves were generated from 0 and 1 respectively, what would the next step 0110 generate 19:49:46 but the two halves weren't generated from anything 19:51:02 01101001100101101001011001101001 << this one i actually cracked! :) 19:51:07 another way, but which can only create every other step: if s is your string, use s ++ reverse s ++ reverse s ++ s 19:51:56 oklopol: good :) 19:51:58 yeah. 19:52:16 only works for the assymetric steps 19:53:22 lament: the two halves would be what the substitution method generates in n steps, it is a way of deriving your method from the substitution method 19:54:06 -!- GregorR-L has joined. 20:03:13 I just tested (for the first time) my library for non-Euclidean game terrain. 20:05:08 hideously non-Euclidean? 20:05:22 http://www.choosemyhat.com/ 20:06:41 you actually bought that domain? o_O 20:09:40 those are cheap 20:10:10 we bought a .fi, and even that was < 100 20:18:55 non-euclidean? 20:22:55 oklopol: <100 whats? 20:25:54 Err, I'd say <<100, not just <100. .fi domains are 48 EUR per three years, which means 16 EUR/year. Not as cheap as com/net/org, but still. 20:34:48 h-t-t-p-colon-slash-slash-slash-dot-dot-org 20:34:48 oerjan: yes, hideously 20:34:48 You can even have flips, giving a set-up like a Möbeus strip 20:34:48 but each rectangular patch of terrain must only connect to each other patch in one way, and never to itself, so some really twisted things can't be done. 20:35:34 i.e. you have a graph of blocks of terrain 20:37:14 vim has cool undo 20:40:54 bsmntbombdood: if you delete something, write something else and then discover you didn't want to delete anyhow, you can undo, yank what you deleted, redo what you wrote, then paste 20:41:32 is there a special way to yank what you deleted? 20:41:44 no, just ordinary yank 20:42:40 of course if the original delete was with a single command you may still have it in the yank buffer automatically 20:43:20 er, i vaguely recall that there are rotating yank buffers as well 20:45:10 oklopol: <100 whats? <<< cash tokens. 20:46:30 right, the numbered registers 21:00:08 me is just learning 21:00:43 does a stack based copy paste exist in any form? 21:01:52 the registers 1-9 behave as a stack 21:02:13 not very deep... 21:03:22 popping pastes wouldn't be very usefull, because you could only paste once 21:04:48 right, behave as a stack on pushing. on pasting you use "1p - "9p, i suppose 21:04:58 yeah 21:05:42 you could have top and pop separate 21:06:30 okloOS has this a native feature, it's very great in my head, though i'm not sure if it'll look exactly like that when i implement it... 21:06:36 i mean, overall 21:06:44 hmm 21:06:58 context switch 21:07:00 -> 21:40:52 -!- oerjan has quit ("Good night"). 21:52:23 -!- jix has quit ("CommandQ"). 22:00:16 -!- GregorR-L has quit (Read error: 110 (Connection timed out)). 22:29:00 -!- c|p has quit ("Leaving"). 23:05:27 all the binary LaSS numbers are odd 23:06:43 actually, the LaSS numbers in any base are odd 23:07:23 how can a number be odd in any base? 23:07:32 oh wait 23:07:37 what does that even mean? 23:07:51 what does "odd in base n" mean? 23:08:06 odd means not divisble by 2 23:08:19 right 23:08:24 so it doesn't depend on the base... 23:09:08 the LaSS numbers do depend on base 23:10:37 err, not base 3 23:17:12 -!- c|p has joined. 23:18:26 err 23:21:47 not quite 23:22:51 the last digit is always theinitial value 23:26:21 -!- sebbu has quit ("@+"). 23:36:11 -!- GregorR-L has joined. 23:38:21 -!- wooby has joined. 23:45:44 -!- wooby has quit.