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