←2008-01-13 2008-01-14 2008-01-15→ ↑2008 ↑all
00:42:51 -!- SimonRC has quit (Read error: 110 (Connection timed out)).
00:56:59 -!- cherez has joined.
01:19:00 -!- SimonRC has joined.
01:28:26 -!- sebbu has quit ("@+").
01:31:30 -!- cherez has quit ("Leaving.").
01:45:54 -!- calamari has joined.
01:45:54 -!- tesseracter has joined.
01:46:50 -!- Corun has quit ("This computer has gone to sleep").
02:00:43 -!- cherez has joined.
02:39:05 <RodgerTheGreat> I feel like drawing something. Does anyone have any requests?
02:53:27 <GreaseMonkey> RodgerTheGreat, do you have more plans for handgrenade?
02:53:49 <GreaseMonkey> just curious
02:58:17 <GreaseMonkey> i tend to scribble technical stuff
03:03:08 <RodgerTheGreat> I dunno
03:04:08 <RodgerTheGreat> is this you asking if you can take it over, or suggesting that I continue?
03:10:38 <GreaseMonkey> a bit of both actually :\
03:10:44 -!- GlassBot has quit (Read error: 110 (Connection timed out)).
03:10:47 -!- ehirdsleep has quit (Read error: 110 (Connection timed out)).
03:11:03 <GreaseMonkey> do you reckon you'll do more work on it?
03:11:33 <GreaseMonkey> meh
03:11:39 <GreaseMonkey> maybe i'm just talking crap
03:15:54 <RodgerTheGreat> I dunno
03:16:05 <RodgerTheGreat> really, I have a lot on my plate already
03:21:55 <GreaseMonkey> ok. i'm probably just going to do an implementation based on what's there
03:32:26 <slereah_> Hm. Should I put the Love Machine 9000 on the esowiki?
03:39:33 <GreaseMonkey> go ahead
04:14:04 <RodgerTheGreat> is the Love Machine 9000 like the opposite of the DeathStation 9000?
04:14:25 <RodgerTheGreat> or something new and hideous altogether?
04:17:02 <slereah_> It is the name of one of mah language, which is pretty much a Turing machine.
04:17:49 <RodgerTheGreat> only sexier?
04:18:00 -!- slereah_ has changed nick to Slereah.
04:18:41 <Slereah> You decide. http://membres.lycos.fr/bewulf/Russell/turingprog16.py
04:19:12 <Slereah> If you use the penguins, you might want to use : http://membres.lycos.fr/bewulf/Russell/turingprog16-Lin.py
04:19:43 <RodgerTheGreat> It's interesting, but I still don't think I get the name
04:20:16 <Slereah> The story behind that name is that I had no idea for a name.
04:20:32 <Slereah> The "serious" name is NTCM
04:20:42 <Slereah> For n-tape choice machine.
04:21:26 <RodgerTheGreat> on a somewhat unrelated note, does anyone find this amusing? http://rodger.nonlogic.org/images/Comic024.png
04:22:38 <Slereah> It's okay I guess.
04:22:51 <RodgerTheGreat> yeah, not my best work
04:23:08 <RodgerTheGreat> I think it seemed funnier when I was waiting in an airport for 4 hours.
04:24:05 <Slereah> Here's a BF interpreter for the Love Machine if you want to see what it looks like : http://membres.lycos.fr/bewulf/Russell/BF%20ASCII.txt
04:24:53 <Slereah> I should make a penguin version. This one doesn't work on the penguin love machine.
04:25:12 <RodgerTheGreat> woah, funky extended ASCII
04:27:01 <Slereah> Yes. A Turing Machine is a poor choice to make a BF interpreter.
04:27:13 <Slereah> The Bitchanger interpreter is much shorter!
04:27:34 <RodgerTheGreat> lol
04:31:44 <Slereah> And here's the 99 bottles of beer : http://membres.lycos.fr/bewulf/Russell/99%208.txt
04:32:28 <RodgerTheGreat> that must really be a bitch to type
04:32:56 <RodgerTheGreat> but I do applaud your success in making 99b readable
04:33:58 <Slereah> The comments are actually states of the machine, but that are never called.
04:34:12 <RodgerTheGreat> yeah, quite clever
04:34:28 <RodgerTheGreat> not entirely unlike the [ comments go here ] BF trick
04:36:02 <Slereah> Although I still specify an accepting char and exit state, otherwise I fear there might be a parsing error.
04:36:28 <Slereah> Hm. How do I create a new page on the esowiki?
04:45:44 -!- Pyotr has joined.
04:46:12 -!- Pyotr has quit (Client Quit).
04:46:43 <RodgerTheGreat> good night everyone
04:46:58 -!- RodgerTheGreat has quit.
05:10:59 -!- calamari has quit ("Leaving").
05:47:47 -!- CakeProphet has joined.
06:13:32 -!- CakeProphet has quit ("haaaaaaaaaa").
06:49:39 <Slereah> http://www.esolangs.org/wiki/NTCM
06:49:45 <Slereah> Thar.
06:53:27 <immibis> go to the page and click "create this page" or "edit"
06:55:43 <Slereah> Well, it is a little late now.
06:56:56 <immibis> ok
07:40:51 <Slereah> [a[0:P1RI:b;1:P1LE:c]|b[0:P1RI:c;1:P1RI:b]|c[0:P1RI:d;1:P0LE:e]|d[0:P1LE:a;1:P1LE:d]|e[0:P1RIHA:e;1:P0LE:a]][0=0;ims=a;d15;vh;etTecF;t1]
07:40:54 <Slereah> Aaaaaargh!
07:41:02 <Slereah> Busy beaver with millions of steps!
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:04:57 <GreaseMonkey> heh
08:08:07 <Slereah> Still running.
08:08:34 <Slereah> I wonder in how much time the Love Machine 9000 can process 14.000.000 steps
08:10:03 <Slereah> Oh. It's actually 47,176,870 steps.
08:19:19 -!- bsmntbot has joined.
08:19:58 * immibis wonders why IrcCoffeeBot is calling itself bsmntbot, and why it came to this channel instead of #coffee
08:20:03 <immibis> !j #coffee
08:20:05 <EgoBot> Huh?
08:20:21 <immibis> oops, #coffee's already in use....?????
08:20:30 -!- bsmntbot has changed nick to CoffeeBot.
08:20:41 * CoffeeBot is making a coffee in an office mug with cold milk help for immibis
08:20:41 * CoffeeBot gives immibis a coffee in an office mug with cold milk help
08:20:48 <CoffeeBot> #coffee: <immibis> ...
08:21:14 <immibis> stupid bot
08:21:16 <immibis> !p #esoteric
08:21:18 -!- CoffeeBot has left (?).
08:21:19 <EgoBot> Huh?
08:23:01 -!- immibis has quit ("Hi Im a qit msg virus. Pls rplce ur old qit msg wit tis 1 & hlp me tk ovr th wrld of IRC. IceChat - Its what Cool People use").
08:24:07 <Slereah> A good quit message virus would also ask the user to manually delete all his files!
08:24:52 <GreaseMonkey> heh
08:49:12 -!- GreaseMonkey has quit ("Hi Im a qit msg virus. Pls rplce ur old qit msg wit tis 1 & hlp me tk ovr th wrld of IRC. Man who run behind car get exhauste).
10:16:23 -!- puzzlet has quit (Read error: 110 (Connection timed out)).
11:25:49 -!- Corun has joined.
12:09:45 -!- slereah_ has joined.
12:12:38 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
12:58:31 -!- slereah_ has quit (Read error: 104 (Connection reset by peer)).
12:59:13 -!- slereah_ has joined.
13:02:12 -!- slereah_ has quit (Read error: 104 (Connection reset by peer)).
13:02:32 -!- slereah_ has joined.
13:51:01 -!- ehirdsleep has joined.
13:51:05 -!- ehirdsleep has changed nick to ehird.
13:51:08 -!- ehird has changed nick to ehird`.
13:55:36 -!- slereah_ has quit (Read error: 104 (Connection reset by peer)).
14:12:15 -!- slereah_ has joined.
14:13:33 <ehird`> hello all
14:19:43 -!- Corun has quit (calvino.freenode.net irc.freenode.net).
14:19:46 -!- slereah_ has quit (Read error: 104 (Connection reset by peer)).
14:20:47 -!- Corun has joined.
14:26:13 -!- RodgerTheGreat has joined.
14:26:25 <RodgerTheGreat> howdy
14:26:35 -!- jix has joined.
14:35:18 -!- slereah_ has joined.
14:36:35 -!- Jontte has joined.
14:41:33 <oklopol> RodgerTheGreat: i think the comic was funny
14:41:52 <RodgerTheGreat> well, that's good to hear
14:42:03 <oklopol> i love the last square
14:42:12 <oklopol> the guy's posture is awesome :)
14:42:34 <RodgerTheGreat> heh
14:43:04 <oklopol> does his shirt say "you are likely to be eaten by a give"? :D
14:43:21 <oklopol> grue
14:43:22 <oklopol> !
14:43:25 <EgoBot> Huh?
14:44:05 <RodgerTheGreat> grue
14:44:56 <oklopol> for some reason i first thought the logical continuum to "you are likely to be eaten by" would be "bear".
14:45:20 <oklopol> so i interpreted the last word at random
14:46:33 -!- slereah__ has joined.
14:46:56 -!- slereah_ has quit (Read error: 104 (Connection reset by peer)).
14:47:24 <RodgerTheGreat> I dunno, in my twisted imagination grues seem a lot more likely to eat people than bears
14:47:47 <RodgerTheGreat> then again, I've seen "grizzly man", which was pretty much the comedy of the year
14:48:12 <oklopol> what's a grue, i thought you can only be eaten by "grue", not "a grue"
14:49:13 <RodgerTheGreat> "It is pitch black. You are likely to be eaten by a grue."
14:49:19 <RodgerTheGreat> "> what is a grue?
14:49:19 <RodgerTheGreat> The grue is a sinister, lurking presence in the dark places of the earth. Its favorite diet is adventurers, but its insatiable appetite is tempered by its fear of light. No grue has ever been seen by the light of day, and few have survived its fearsome jaws to tell the tale."
14:56:57 <oklopol> oh, it's "a grue"
14:57:14 <oklopol> i haven't actually played a game that had this saying, just heard a few people use the phrase
14:58:37 <RodgerTheGreat> Zork 1, 2 and 3 are freeware now- you ought a find a Z-machine interpreter and at least play the first one for a while
15:08:24 <oklopol> hmm... text adventure games?
15:08:34 <RodgerTheGreat> the best
15:09:50 <oklopol> being the best text adventure game < being the best game < interesting enough to try for me, though :)
15:10:02 <oklopol> don't like games really
15:10:28 <oklopol> except ones where the controls are interesting
15:11:43 <RodgerTheGreat> text adventures are fun and interesting to code, and unlike graphical games there's no overhead for asset creation. If you want a room that looks like something, you describe it rather than slaving over a graphics editor for hours
15:12:45 <oklopol> indeed, except i don't care what it looks like, i care about what it does.
15:13:07 <RodgerTheGreat> which is why text adventure games are perfect
15:13:12 <oklopol> so... i don't care about graphics or plot, making me fairly uninterested in both all new games, and the awesome old adventure games.
15:13:27 <RodgerTheGreat> plus, they can be played in a number of unusual vectors, such as over IRC
15:13:42 <oklopol> well, that's ofc a plus, i agree that
15:13:51 <RodgerTheGreat> there exist a number of Zork-bots, and I believe you're aware of my IRC-based MUD experiments
15:14:26 <oklopol> but most text adventure games don't let me "build stuff" like i want to, as a programmer
15:14:40 <oklopol> i'm aware of them, if they contain the game where you hunted... something :)
15:14:56 <oklopol> wombat?
15:16:07 <RodgerTheGreat> wumpus
15:16:11 <RodgerTheGreat> much more fearsome
15:16:39 <RodgerTheGreat> oh, man- my next wumpus-hunting game needs to include a torch, dark areas and grues
15:17:59 <RodgerTheGreat> http://thcnet.net/zork/index.php
15:19:36 <oklopol> too slow a connection for that
15:22:17 -!- timotiis has joined.
15:30:44 <slereah__> I think I'll modify some of the Love Machine to make a language based on that 2,3 machine.
15:31:09 <oklopol> :D
15:31:14 <oklopol> sounds useful
15:31:34 <slereah__> Although I so far have no clue of how to make even the most trivial program with it!
15:31:34 <slereah__> Isn't it?
15:31:46 <slereah__> But since I already have the Love Machine 9000, it won't be too hard.
15:32:10 <slereah__> It's just defining a Turing program with two states, three symbols and some initial input.
15:33:11 <slereah__> It wil prolly be 5 symbols for the language itself.
15:33:38 <oklopol> well, actually, you need a laze preprocessor for the input tape
15:33:46 <oklopol> so you can allow for the infinite patterns
15:33:55 <oklopol> *lazy
15:34:07 <slereah__> First char is the default char, the rest is the input, and there's a ^ or v next to one of those symbols to show where's the head to start with and what's the first state.
15:34:10 <slereah__> Wut?
15:35:02 <oklopol> i would love to explain, but i have to go now
15:35:06 <oklopol> well, i guess it's short
15:35:07 <slereah__> kthxbai
15:35:11 <slereah__> Oh.
15:35:24 <oklopol> the 2,3 machine was proven tc using an infinite initial pattern
15:35:31 <oklopol> so... you need to have that.
15:35:55 <slereah__> Does the pattern have any... pattern?
15:36:06 <slereah__> Or can it be anything?
15:36:10 <oklopol> you need to add a facility for adding non-tc programs that always process the tape before the actual tape of the turing machine enters them
15:37:16 <oklopol> actually, i think ais's thingie on the tape was some sort of a nested structure, even, so it's not even all that trivial a preprocessing.
15:38:06 <slereah__> Let's see that proof.
15:38:23 <oklopol> it cannot be *any* pattern, i think bounded to a pda or something
15:38:25 <oklopol> ais can tell you better, or you can read the proof
15:38:26 <oklopol> i couldn't.
15:38:41 <oklopol> too complex for me, lazied out after a few pages
15:39:49 <slereah__> If it's that horrible, it will probably have to wait the end of the week
15:39:53 <slereah__> It's exam week right now.
15:48:47 -!- jix has quit (Nick collision from services.).
15:48:57 -!- jix has joined.
15:52:57 -!- Hiato has joined.
16:02:24 <slereah__> ('system 0') can emulate any two-colour cyclic tag system for an arbitrary number of steps, using a finite-
16:02:24 <slereah__> length initial condition in which the leftmost cell is a 0 and starts active in state A and in which the first
16:02:33 <slereah__> Finite-length?
16:22:56 -!- Hiato has left (?).
16:27:34 -!- sebbu has joined.
16:54:17 <slereah__> From what I can make out, the actual 2,3 machine takes on a finite input. The transformation of input seems to be for the next systems.
16:54:30 <slereah__> But then again, I can't understand that much.
17:04:16 <ehird`> I wonder... Glass is one example of 'ridiculous object orientation'...
17:04:18 <ehird`> What could another be..
17:08:47 <slereah__> 2,3 is so simple that I seem to be throwing out most of the Love Machine 9000.
18:03:27 <slereah__> Well, I have the basic machine so far.
18:03:35 <slereah__> Now, to make something ridiculous with it.
18:07:22 <ehird`> >query Love Machine 9001 release date
18:08:36 <slereah__> It is not the Love Machine 9001.
18:08:49 <slereah__> It will be called "23 skidoo", I fear.
18:09:39 <slereah__> The idea will be that, instead of colors, there will be 0, 1 and X.
18:09:52 <slereah__> And the tape will be divided into packs of eight.
18:10:19 <slereah__> So that, maybe, by pure chance (I have no idea how to do programming with that thing), it will spell out some stuff.
18:10:29 <slereah__> In ASCII, that is
18:10:42 <slereah__> Making some sort of readable output.
18:11:04 <ehird`> The Rt. Hon. Lord God Bless Its Soul Love Machine 9000 Sr.
18:11:32 <slereah__> Well, it could be that too.
18:11:41 <slereah__> It's not like I care that much about the name, obviously.
18:15:09 -!- RedDak has joined.
18:17:47 <ehird`> someone give me an algorithm for determining the 'random keyboard bashing'-ness of a string!
18:19:40 -!- Corun has quit ("Leaving").
18:19:40 -!- Corun has joined.
18:19:40 <slereah__> Define "random keyboard bashing".
18:19:41 <slereah__> Most keyboard bashing isn't random, because people tend to strike the same areas.
18:20:02 <slereah__> Hence the expression, sdfgsdf
18:21:02 <ehird`> slereah__: based on subjective human opinion
18:22:38 <slereah__> Place a midget in your CPU.
18:22:42 <slereah__> Input the string.
18:22:44 <slereah__> ???
18:22:48 <slereah__> Problem solved!
18:39:43 -!- slereah_ has joined.
18:39:49 -!- dak has joined.
18:39:59 -!- dak has quit (Read error: 104 (Connection reset by peer)).
18:40:14 -!- slereah__ has quit (Read error: 104 (Connection reset by peer)).
18:42:07 <ehird`> who wants an esolang implemented
18:42:08 <ehird`> :P
18:56:12 -!- slereah__ has joined.
18:57:54 -!- slereah_ has quit (Read error: 104 (Connection reset by peer)).
18:59:35 <slereah__> >:|
19:20:08 -!- Jontte has quit (Read error: 104 (Connection reset by peer)).
19:20:55 -!- Jontte has joined.
19:43:10 <ehird`> sheesh. the lambda calculus is dynamically scoped, kinda
19:44:47 <slereah__> Well, the empty string is definately not a quine in 23 skidoo.
19:45:58 <slereah__> Although so far, no letters.
19:56:33 <SimonRC> ehird`: no, staticly
19:56:52 <ehird`> SimonRC: depends on how you view it
19:56:58 <SimonRC> umm
19:57:12 <SimonRC> There is only one kind of variable and it is lexically scoped
19:57:23 <ehird`> yes.
19:57:39 <SimonRC> so how can it be dynamically scoped?
20:08:11 <ehird`> if your evaluation strategy is fucked.
20:08:12 <ehird`> :)
20:09:05 <SimonRC> well then it isn't the lambda calculus
20:13:59 <ehird`> naw
20:14:01 <ehird`> it worked the same
20:14:05 <ehird`> just... :P
20:17:56 <oklopol> for some weird meaning of kinda, perhaps it is dynamically scoped
20:30:51 <oklopol> is there an esolang with nice network support?
20:30:58 <bsmntbombdood> 1337
20:31:23 <oklopol> i don't know if i'm leet enough, but let's see
20:31:26 <oklopol> oh, right
20:31:31 <oklopol> brainfuck derivative?
20:31:34 <bsmntbombdood> yeah
20:31:39 <oklopol> i think i know it
20:33:27 <oklopol> umm... that's not a brainfuck derivative
20:34:45 <bsmntbombdood> wtf?!?!
20:34:55 <bsmntbombdood> the 1337 wiki page got replaced with something else
20:35:24 <bsmntbombdood> oh
20:35:29 <bsmntbombdood> it's spelled l33t
20:35:48 <oklopol> hehe
20:37:09 <oklopol> http://www.100webads.com/ any other suggestions?
20:37:27 <oklopol> i would prefer getting it running today, though, so an esolang might not suit that well :)
20:37:59 <bsmntbombdood> what is it?
20:38:05 <bsmntbombdood> a 1 million pixels clone?
20:38:22 <oklopol> what?
20:38:22 <oklopol> :)
20:38:32 <bsmntbombdood> some asshole
20:38:47 <bsmntbombdood> sold 1 million pixels of ad space on his website for $1 each
20:39:14 <oklopol> xD
20:39:17 <oklopol> that's awesome
20:39:33 <oklopol> we gotta put that on vjn.fi
20:39:59 <bsmntbombdood> what's that?
20:40:07 <oklopol> www.vjn.fi
20:40:12 <bsmntbombdood> ...
20:40:14 <SimonRC> a cat walking on the keyboard
20:40:17 <oklopol> a page me and a few friends bought for fun
20:40:24 <bsmntbombdood> i wish i could come up with a scam as profitable as that :(
20:40:37 <oklopol> heh
20:40:41 <SimonRC> not a scam
20:40:45 <bsmntbombdood> i know
20:40:46 <SimonRC> you got exactly what you asked for
20:40:49 <bsmntbombdood> but it feels like one
20:40:58 <bsmntbombdood> he made a million bucks without ANY content
20:41:16 <SimonRC> except the idea
20:41:44 <SimonRC> and, I expect, a vast amount of time spent handling 10000 emails from people wanting to buy space
20:41:48 * oklopol wants to buy a pixel
20:41:53 <SimonRC> just the one/
20:42:22 <bsmntbombdood> i could pretend i was a 500 pound fatso that lost 350 pounds, and i need people to donate money for skin removal surgery
20:42:28 <SimonRC> heh
20:42:37 <bsmntbombdood> everyone loves an uplifting story about how someone lost weight
20:42:48 <SimonRC> you'd need pics
20:42:53 <bsmntbombdood> easy to find
20:43:01 <SimonRC> hmm
20:43:08 <SimonRC> someone might spot if ytou re-used them
20:44:16 <bsmntbombdood> http://seanyounai.files.wordpress.com/2007/08/massive-weight-loss.jpg
20:44:17 <bsmntbombdood> etvc
20:44:19 <bsmntbombdood> *etc
20:45:04 <bsmntbombdood> http://www.t-nation.com/img/photos/05-118-diet/image002.jpg
20:45:36 <SimonRC> see previous remark
20:45:44 -!- Jontte has quit ("Konversation terminated!").
20:46:22 <bsmntbombdood> as long as the image wasn't prolific i think it would be ok
20:48:39 <bsmntbombdood> ugh
20:48:49 <bsmntbombdood> i knew i should have looked up prolific before using it
20:51:07 <oklopol> :D
20:51:14 <oklopol> i pwn you at your own language!
20:57:54 -!- pikhq has quit (Remote closed the connection).
20:57:58 <ehird`> idea:
20:58:06 <ehird`> esolang emacs!
20:58:31 <ehird`> take an esolang, add some kind of feature to it to allow 'calling out' to fake-syscalls, make loads of them for editor and ncurses stuff
20:58:32 <ehird`> write editor
20:58:33 <ehird`> profit
20:59:12 <SimonRC> It's called TECO
21:00:49 -!- Hiato has joined.
21:01:00 <ehird`> SimonRC: heh
21:01:59 <Hiato> Wassup :)
21:02:16 <SimonRC> ^
21:02:25 <Hiato> heh :)
21:02:32 <SimonRC> unless your monitor is upside-down, in which case it's v
21:02:42 <Hiato> lol :D
21:03:19 -!- pikhq has joined.
21:03:22 <Hiato> ehird`: this'll probably annoy you, but I changed the ACRONYM grid size back to 128x128, and for a reason too, here is the spec including reason http://rafb.net/p/LLTaUp22.txt
21:04:07 <ehird`> that doesn't say *why*
21:04:12 <SimonRC> does
21:04:16 <Hiato> yes, it does :P
21:04:22 <ehird`> and also actually using that tc-ness in practice is... infeasable
21:04:30 <ehird`> 'This language will, by no account, need an infinitely large grid to be Turing complete.' that's not a reason
21:04:54 <Hiato> 1st statement: agreeed :) 2nd statement: why do you say that...
21:04:59 <SimonRC> well, it is an esolang
21:05:26 <SimonRC> making implementation easier at the expense of a horribly complex program is fin
21:05:29 <SimonRC> e
21:05:32 <Hiato> your motivation for an infinite grid was: "This will defiantly make it Turing Complete"
21:06:09 <Hiato> SimonRC, it's not horribly complex ;) it just went down from infinity to 128x128x2, which as ~26000
21:06:17 <Hiato> so still plenty of space
21:06:25 <SimonRC> Hiato: put it there: http://esoteric.voxelperfect.net/wiki/ACRONYM
21:06:27 <SimonRC> Hiato: yes
21:06:47 <Hiato> well ehird`: the actual reason was: how would a mover possibly wrap around the pushed row/column on an infinite grid
21:06:48 <SimonRC> and 128 * 128 * 2 = 32768
21:06:52 <Hiato> not possible
21:06:56 <SimonRC> Hiato: is possible
21:06:59 <ehird`> Hiato: first untouched square
21:07:03 <ehird`> is a wall.
21:07:35 <SimonRC> e.g. if you store the grid as a hashtable
21:07:49 <Hiato> so if I understand then what you're saying is:
21:07:49 <Hiato> x x x x x
21:07:49 <Hiato> x x x x x
21:07:49 <Hiato> ^
21:08:22 <Hiato> if that column is shifted up, then put the top x at the bottom etc.. because the rest of the grid hasn't been used
21:08:48 <SimonRC> what is the implementation language?
21:08:52 <Hiato> hrmm...
21:08:58 <ehird`> i was going to implement it.
21:09:01 <ehird`> in Scheme, or Haskell
21:09:03 <Hiato> well, it is (from my side) delphu
21:09:09 <Hiato> *delphi
21:09:18 <ehird`> in haskell/scheme this would be trivial
21:09:44 <Hiato> actually, if we use that furthest untouched square, then I must say, I like the sound of infinite
21:09:48 <SimonRC> well, Haskell will do fine on it, you just need to map over the keys of the Data.Map
21:10:29 <SimonRC> just rotating the row/col and always making sure you have some padding will work too
21:10:44 <Hiato> hrmm.... that would mean though, that to wrap around a give point, you would need to visit it first, therefore adding loads more instrucitons
21:10:46 <SimonRC> make grid size powers of two, for proper asymtotic behaviourt
21:10:56 <Hiato> ie: the hello world programme would need 15 extra instructions
21:11:08 <SimonRC> wel.....
21:11:42 <Hiato> hrm...
21:11:59 <SimonRC> if the terp could prove that the program would keep going until the row wrapped around, it could "wrap it round infinity"
21:12:02 <SimonRC> :-P
21:12:36 <SimonRC> or you could have an explicit "wrap round infinity" instruction
21:13:37 * SimonRC goes (food, bed, etc)
21:15:08 * SimonRC goes (food, bed, etc)
21:15:29 -!- faxlore has joined.
21:16:07 <Hiato> I can't seem to decide now. For ehird`'s sake I want the infinite grid (and it's cool too), but for thesake of functionality, I want the finite grid
21:16:37 <ehird`> it's functional in my way
21:16:38 <faxlore> hi
21:16:40 <ehird`> unless you use, say, delphi
21:16:41 <ehird`> ;)
21:16:45 <faxlore> What does functionality mean?
21:17:44 <Hiato> lol :)
21:18:08 <Hiato> I meant in terms of extra instructions to use the grid when it is infinite
21:20:34 <Hiato> meh, ok, fine ehird`, you win
21:21:08 <Hiato> as long as it is still possible to use the mover functions
21:21:16 <ehird`> \o/
21:23:23 <oklopol> i love the idea of wrapping around infinity
21:23:35 <Hiato> :D
21:23:55 * faxlore can think of two bijections from N to NxN...
21:24:24 <faxlore> *between
21:25:17 * oklopol can think of an infinite number of them...
21:26:50 <faxlore> What are they all?
21:28:14 <oklopol> if you have N <-> N*N, then you have a function with A!=B -> f(A)!=f(B), right?
21:28:30 <faxlore> Yes
21:30:01 <oklopol> any function f_X(N) = f(N+X) trivially also satisfies the bijection, since A-X!=B-X -> f_X(A)!=f_X(B)
21:30:56 <oklopol> i have a hard time having conversations right now, my client takes a few minutes of lagtime every 3 words i type
21:32:28 <oklopol> my notation may be a bit weird there, but i think i'm correct
21:33:55 <oklopol> oh, right A!=B -> A-X!=B-X -> f(A-X)!=f(B-X) -> f_X(A)!=f_X(B)
21:35:03 <oklopol> do you see?
21:35:12 <faxlore> I don't get it, how does f_X still have .e.g 0 in it
21:35:15 <oklopol> or do you see an error
21:35:29 <oklopol> oh, right, N
21:35:35 <oklopol> in that case, that doesn't apply
21:35:37 <oklopol> sorry
21:35:43 <oklopol> anyway, still trivial
21:35:44 <faxlore> ahh..but this works for Z
21:36:02 <oklopol> yes, anmd you have N <-> Z, so...
21:36:03 <faxlore> (and R.. and there's probably a name for the sets it works øn?)
21:36:04 <oklopol> *and
21:36:27 <oklopol> there might be. i don't really know much math.
21:38:05 <ehird`> Num a
21:38:07 <ehird`> oh wait, math, not haskell
21:38:08 <ehird`> ;)
21:38:40 <oklopol> i doubt Num is the general term in haskell either, though
21:39:42 <oklopol> "forall A in Num: forall B in Num, A-B in Num"
21:42:06 -!- oklofok has joined.
21:45:47 <Hiato> http://rafb.net/p/zz0kwW41.html
21:45:57 <Hiato> ok, there *you* go ehird`
21:46:01 <Hiato> :P
21:46:20 <ehird`> oklopol: Num is the type class of numerics.
21:46:31 <ehird`> Int, Float, ... all have an instance (Num a), where a is the type
21:46:37 <ehird`> I didn't read the stuff above, so, maybe your type is different.
21:46:41 <ehird`> Hiato: :D
21:46:56 <ehird`> it looks all pretty now
21:46:57 <ehird`> heh :D
21:47:06 <Hiato> lol :D
21:47:47 <ehird`> damn i'm good at writing obfuscated haskell
21:47:48 <ehird`> it comes naturally
21:48:01 -!- jix has quit ("CommandQ").
21:48:27 <oklopol> ehird`: it's "forall A in it: forall B in it: A-B in it"
21:48:43 <ehird`> that's one confusing type
21:48:46 <ehird`> :D
21:49:11 <ehird`> (Num a) => (Num b) => ... i get lost around this point.
21:49:28 <faxlore> A:X -> B:X ->(A-B):X
21:50:23 <faxlore> forall A:X, forall B:X, (A-B):X
21:50:27 <ehird`> that's not haskell ;)
21:50:34 * faxlore misused the ->..
21:50:38 <oklopol> it's not haskell, but it's obvious what it means
21:50:56 <oklopol> ehird`: try being a human, not an interp ;)
21:51:09 <ehird`> oklopol: I am an interpreter :|
21:51:15 <ehird`> running IRP
21:52:40 -!- oklopol has quit ("for the need to encumber").
21:55:24 -!- Hiato has left (?).
22:19:19 -!- GreaseMonkey has joined.
22:20:06 * ehird` is rewriting his underload compiler in Haskell
22:20:51 -!- oklokok has joined.
22:22:19 -!- oklofok has quit (Read error: 104 (Connection reset by peer)).
22:26:31 -!- tesseracter has quit (Connection timed out).
22:29:51 * pikhq is enjoying TMBG
22:35:58 <ehird`> pikhq: got The Else?
22:36:10 <pikhq> Yeah, although that's not what I'm listening to ATM.
22:36:17 <pikhq> Severe Tire Damage ATM.
22:37:53 -!- timotiis has quit ("leaving").
22:41:10 -!- Jontte has joined.
22:46:50 -!- ihope has joined.
22:47:22 <ehird`> 'lambda unrolling' is a pain, in underload
22:47:25 <ehird`> to summarize
22:47:48 <ehird`> when given "abc(def(ghi)blah)xyz" to compile, i need to produce something like: (where <...> means 'compiled code of ...')
22:48:09 <ehird`> void f1(void) { <abc> pushfunc(f2, "def(ghi)blah"); <xyz> }
22:48:18 <ehird`> void f2(void) { <def> pushfunc(f3, "ghi"); <blah> }
22:48:22 <ehird`> void f3(void) { <ghi> }
22:48:32 <ehird`> and in haskell, it's a PAIN to do that without some kind of ugly monad
22:49:15 <faxlore> ehird`: Convert it to CPS first?
22:49:32 <ehird`> faxlore: that makes no sense in the context of underload
22:51:18 <ihope> apply (compile "abc") (apply (compile "def") (compile "ghi") `then` compile "blah") `then` compile "xyz"?
22:52:03 <ehird`> ihope: except that would compile xyz somewhere in f3, or maybe even in the bare source code
22:52:09 <ehird`> it's the unrolling that's the problem
22:52:52 <ihope> The problem is trying to implement Underload in Haskell?
22:53:10 <ehird`> err, no
22:53:12 <ehird`> COMPILING
22:53:17 <ehird`> which is a whole different ballgame
22:53:56 <faxlore> ehird`: Do you have some internal representation for "abc(def(ghi)blah)xyz", What does that strings AST look like?
22:54:37 <ehird`> faxlore: it looks like a String, because I need to have the string contents of (...) at all times. plus all commands are single-char so it isn't much of a pain. I could parse it but it's a lot of effort for little worth
22:59:51 <faxlore> This is cool
23:00:25 <faxlore> I can't see how you would compile ^ though.. without writing an interpreter?
23:01:16 <ihope> I guess that makes Underload a scripting language. :-P
23:01:51 * faxlore is assuming there is some way, that they haven't thought of
23:02:25 <ehird`> faxlore: trivial
23:02:29 <ehird`> whenever you see (...)
23:02:37 <ehird`> compile the code inside, and push (str,funcptr)
23:02:43 <ehird`> ^ is just a call to that.
23:02:50 <ehird`> this is why you need to unroll
23:03:05 <ehird`> abc(def(ghi)) needs to be abc<PTR>; def<PTR>; ghi
23:03:23 <ihope> Oh, indeed.
23:05:08 <ehird`> and ofc you do it recursively
23:05:08 <ehird`> but
23:05:18 <ehird`> that means the 'top function number' (for fN) might increase more than 1
23:05:26 <ehird`> so you need to keep track of that and sdfhakjhdsklgdskjfgjdhgahjsdgeuwyrygiubvhjasbbhdklglyp
23:05:55 <faxlore> isn't it possible to generate some code, (like every permutation or something, for example) and call that (with ^) ?
23:10:10 <ehird`> faxlore: ?????????
23:10:19 <ehird`> yes
23:10:21 <ehird`> but
23:10:23 <ehird`> that's why you have
23:10:27 <ehird`> "next" and "inner" pointers
23:10:37 <faxlore> ahh
23:10:40 <ehird`> (a)(b)* -> {a; next={b; next=NULL}}
23:11:09 <ehird`> (xy)(zzy)*a -> {inner={xy; next={zzy; next=NULL}}}
23:11:23 <faxlore> this is really mad
23:11:32 <faxlore> please show me this compile when it's done? :D
23:13:05 <ehird`> i already have a one that works..
23:13:16 <ehird`> it's ugly, imperative, slow scheme and the output c code is ugly and non-indented
23:15:53 <ehird`> also it's buggy.
23:16:54 <ehird`> fun
23:16:59 <ehird`> hm i wonder if any of you recieved that
23:17:00 <ehird`> basically:
23:17:06 <ehird`> */*/**/****SHITLOAD OF *s
23:17:07 <ehird`> segfault.
23:30:40 -!- RedDak has quit (Read error: 113 (No route to host)).
23:32:42 -!- immibis has joined.
23:34:16 <ehird`> argh
23:34:20 <ehird`> i ALMOST had it there
23:35:56 -!- immibis_ has joined.
23:36:02 <bsmntbombdood> ugh
23:36:05 <bsmntbombdood> dvorak is infuriating
23:36:24 <ehird`> no, compiling underload is
23:36:38 <bsmntbombdood> not dvorak specifically, but not being able to type fast
23:37:37 <faxlore> \me switches to dvorak
23:37:49 * ihope switches to dvorak
23:40:10 <ihope> Yd.p.!
23:41:08 <ihope> I can almost type if I try hard enough.
23:42:04 <ihope> Much practice is required.
23:42:04 -!- immibis has quit (Nick collision from services.).
23:42:06 -!- immibis_ has changed nick to immibis.
23:47:20 <ehird`> if only there was an imperative language with the elegance of haskell :P
23:47:23 <ehird`> this would be a doddle.
←2008-01-13 2008-01-14 2008-01-15→ ↑2008 ↑all