←2006-01-30 2006-01-31 2006-02-01→ ↑2006 ↑all
00:00:02 <EgoBot> Huh?
00:00:09 <ihope> What was that command?
00:31:18 <ihope> "Tonight we'll be playing eleven card stud-hold'em with threes, eights, jacks, and kings wild...fives count as fours, fours count as nines, and queens don't count unless there is a prime numbered spade showing."
00:44:01 -!- jix has quit ("Bitte waehlen Sie eine Beerdigungnachricht").
01:06:24 -!- puzzlet_ has quit (Read error: 104 (Connection reset by peer)).
01:08:37 -!- puzzlet has joined.
02:16:05 -!- ihope has quit (Read error: 110 (Connection timed out)).
02:44:43 <{^Raven^}> I have been pondering calamari's idea of using line numbers in BF programs
02:45:12 <kipple> that's not a bad idea actually :)
02:45:41 * kipple is currently working on an esoteric BASIC variant which is all about line numbers
02:46:40 <{^Raven^}> it is an essential technique used by BFBASIC, it occurs to me that adding the concept of blocks of line numbers, you can write code that executes a lot faster
02:47:19 <{^Raven^}> each subroutine could be in it's own block, that way you just have to check the block number and only check for the specific line number if it is in your block
02:48:33 <{^Raven^}> it also means that the line numbers in each block can run from 1-n, this forces all the line numbers into nice small ranges that are quick to check for
02:54:04 <{^Raven^}> It seems that efficent optimised line number algorithms will be essential for the development of a C compiler for BF
03:00:53 <GregorR> Good thing we're all thinking of the /important/ things in life.
03:02:51 <{^Raven^}> calamari has shown us that it is possible to write a BASIC to BF compiler.
03:04:17 <{^Raven^}> the maddening thing for me is that i know it is possible to write a C compiler for BF becuase BF is turing complete, but actually doing it is going to be a challenge
03:04:52 <kipple> what exactly makes a C compiler harder than a BASIC compiler?
03:11:44 <{^Raven^}> memory allocation is going to be difficult to implement, each time a function is called you may have to create some variables for it on the stack. Recursive functions with local variables seem like a big challenge to implement
03:14:06 <{^Raven^}> calamari solved the problem of how to implement high level flow control, so jumping around inside the program can be done via line numbers.
03:15:55 <GregorR> AFAIK BASIC has no local variables (you can correct me on this if I'm wrong)
03:16:02 <GregorR> So that makes that easier :P
03:16:36 <{^Raven^}> BFBASIC has no local variables, of course most modern BASICs have local and static variables
03:16:40 <kipple> depends on the BASIC dialect I suppose, but yeah
03:17:31 <{^Raven^}> rewriting the standard C library for the BF virtual machine is going to be an interesting challenge
03:19:12 <kipple> that would be quite an achievement!
03:19:30 <{^Raven^}> optionally you could have some functions implemented as inline functions which would increase the code size but reduce the amount of jumping around the program
03:21:07 <{^Raven^}> kipple: math.h, especially if the compiler supports 16-bit numbers (on an 8-bit machine) or floating point numbers
03:21:43 <kipple> hehe. yeah. didn't realize you we're going to include all of that...
03:22:06 <kipple> I thought you were only talking about a small subset of C
03:24:25 <{^Raven^}> This is a thought experiment, I'm not actually working on anything like that at the moment
03:28:49 <{^Raven^}> It does occur to me that to enable us to run the mammoth programs that a compiler might generate, it is important to have effiecent optimising interpreters to execute the programs at reasonable speeds
03:30:44 <GregorR> Well...
03:31:02 <GregorR> Once you got the C compiler itself ...
03:31:11 <GregorR> You could get most of a free libc from newlib :)
03:31:22 <GregorR> sprintf, etc (anything that doesn't need kernel calls)
03:34:38 <GregorR> Hmm, transforming this grammar, I had to use 7 LL(2)s ... now, do I continue adjusting to try to get it to LL(1), or do I say "Well, technically, it says he'll accept it in LL(2) form" and be done with it :P
03:36:22 * {^Raven^} is a compiler compilers newbie whi usually writes his own parsers
03:36:59 -!- fungebob has joined.
03:37:42 <GregorR> I wrote my own Glass parser :P
03:39:48 <{^Raven^}> It should be possible to write a proof of concept compiler that compiles a limited subset of C into BFBASIC before embarking on the project proper
03:40:37 <GregorR> That would prove no concept except that you can write a parser ;)
03:41:52 <{^Raven^}> And that you can get a limited subset of C to (eventually) compile to workable BF object code. :P
03:46:54 <GregorR> ARGH
03:47:05 * GregorR doesn't like his professor's "do-as-I-do-not-as-I-say" attitude :P
03:47:36 <GregorR> First he says that our ridiculously minimalistic language should not support such reals as ".9", that it needs to have a digit before it.
03:47:45 <GregorR> Then he has a test WITHOUT a digit before it, which is supposed to pass!
03:47:52 <GregorR> SHGOIUSPDHFIDHFIODSJFIODPSJF *KILL KILL KILL*
03:51:04 * {^Raven^} finds that the requested specifications often bear little resemblance to the actual specifications required
03:51:33 <{^Raven^}> nite all
03:52:55 -!- kipple has quit (Read error: 110 (Connection timed out)).
03:54:01 <GregorR> lol
03:54:10 <GregorR> {^Raven^} says "nite all," then kipple quits :P
04:03:11 -!- Sgeo has quit.
10:35:29 -!- clog has joined.
10:35:29 -!- clog has joined.
11:21:59 <jix> re
11:22:07 <jix> ihope: does it owrk?
11:28:52 <kipple> was it the rhotor distribution that caused all that zip-trouble?
11:29:02 <jix> tar.bz2
11:29:19 <jix> but someone was talking about zip before i announced the url
11:29:47 <kipple> he must have gotten a corrupt download then. it worked fine for me
11:30:37 <jix> kipple: were you able to compile it?
11:30:51 <kipple> haven't tried. don't have haskell
11:31:20 <jix> yeah i was thinking about a binary distribution but i don't have windows or linux
11:31:38 <jix> and crosscompiling haskell... no
11:31:41 <kipple> well, I guess I should download haskell.
11:31:52 <jix> download the glasgow haskell compiler (ghc)
11:32:17 <kipple> do they have a debian package?
11:32:27 -!- ihope has quit (Read error: 110 (Connection timed out)).
11:32:28 <jix> then run build.bat or build.sh or build.command
11:33:02 <jix> can some windows user test build.bat?
11:33:37 <jix> ghc6
11:33:40 <jix> is the debian package
11:33:45 <kipple> yeah, I found it
11:35:52 <kipple> yikes. I'm getting 445kB/s from the debian ftp. didn't know my connection was that fast....
11:36:12 <kipple> must be a bug :P
11:38:13 <fizzie> I usually get debian packages ~3-6 MB/s. One of the very few good points of living in these student apartments.
11:38:33 <fizzie> From a debian mirror nearby: 19:57:43 (4.04 MB/s) - `ls-lR' saved [31813417]
11:40:11 <kipple> jix: it compiled without error on my debian box. don't have any code to test it with, though
11:41:55 <Keymaker> here's one jix posted some lines above: x/<s,a/s.s,a><s,a,b/a,a,<s.s,b>>,x
11:42:36 <Keymaker> ok, 30 lines above at least
11:44:27 <kipple> thanks. it worked.
11:44:32 <jix> yay
11:44:53 <kipple> though I don't understand anything of that program ;)
11:45:08 <jix> well x is stdin
11:45:21 <jix> <s,a/s.s,a> is a simple way to iterate over all characters
11:45:48 <jix> and <s,a,b/a,a,<s.s,b>> replaces a with a,a and b with the same procedure applied to b
11:45:58 <kipple> but, then again I do not understand lambda calculus, so it's no surprise
11:46:06 <jix> ok
11:51:55 -!- calamari has joined.
11:52:01 <Keymaker> 'ey
11:52:09 <calamari> hi
11:52:13 <calamari> how's the bf?
11:52:43 <Keymaker> currently writing :)
11:53:23 <calamari> cool
12:32:58 <Keymaker> grhh.. a bug again..
12:33:29 <calamari> come on there are only 8 instructions, how hard can it be? </sarcasm>
12:33:37 <Keymaker> :D
12:46:43 <Keymaker> aaargh.. this bug can't be found that easily..
12:47:04 <Keymaker> it doesn't cause errors, but the behaviour isn't right, although it "looks" right
12:48:30 <Keymaker> gotta go for a while..
12:51:01 <calamari> have fun..
14:17:04 <Keymaker> back.
14:34:49 <Keymaker> rghhh..
14:43:18 <Keymaker> NOOOOOOOOOOOOOO!!!!!!!
14:43:44 <Keymaker> the code current code is perfectly valid, i just hadn't written it yet to do some things..
14:44:05 <Keymaker> that's why it looked right but didn't behave right..
14:45:04 <Keymaker> well, it was a meatware problem once again
14:45:53 <Keymaker> grghh. i'm only annoyed because it took time to realize this.. i could've spent the debug time continuing the program writing..
14:47:16 <Keymaker> and, is there any word to replace the word "code" in "program code"? i don't like using that word
14:47:45 <Keymaker> and preferably "source code" too.. well, don't like the word "source" either.
14:48:06 <Keymaker> and no, this has nothing to do with this current program, i'm just insane.
14:51:49 <fizzie> You can use "program text".
14:51:59 <Keymaker> cool!
14:52:00 <fizzie> It's called the text segment, after all.
14:52:23 <Keymaker> ok, although it doesn't sound that good either
14:52:28 <Keymaker> definitely better though
14:52:32 <fizzie> It's not as unambiguous.
14:55:05 <calamari> statements? instructions?
14:56:03 <Keymaker> the instructions sounds the best
14:59:27 <Keymaker> darn wikipedia.. i can't even remember what i was originally reading about!
15:08:13 <calamari> lol
15:19:09 -!- ihope has joined.
15:34:31 -!- calamari has quit ("Leaving").
15:35:49 -!- Sgeo has joined.
15:46:59 <jix> gn8
15:47:05 <Keymaker> nite
15:47:30 -!- jix has quit ("Bitte waehlen Sie eine Beerdigungnachricht").
15:48:02 <ihope> "gn8"?
15:48:27 <Keymaker> "good night"
15:48:30 <ihope> Oh. 8 with... an Australian accent, is it?
15:48:37 * ihope is bad at recognizing those things
15:54:16 <kipple> I think it's german actually
15:55:15 <ihope> Hmm. /me imagines Augustus Gloop from that one movie
15:55:28 <Keymaker> "guten nacht" or something.. yeah, could be.
15:55:32 <ihope> I guess it works.
15:55:37 <kipple> 8 = acht
15:55:40 <Keymaker> yeah, 8 was something like acht
15:55:43 <Keymaker> yah
15:55:55 <kipple> and jix is german IIRC
15:56:00 <Keymaker> yep
15:56:07 <Keymaker> that's right
15:56:08 <ihope> Ah.
15:56:28 <ihope> I guess that would make sense, given his quit message.
15:56:43 <Keymaker> yeah, although i don't understand it :)
15:57:36 <ihope> "Please you select a funeral message".
15:59:00 <ihope> Maybe his chat client said "Please select a quit message" once upon a time, then he translated it wrong?
15:59:20 <ihope> Something along those lines, I think.
15:59:32 <kipple> I always thought that was what it meant
15:59:40 <Keymaker> heh
15:59:58 <Keymaker> i always thought it had something to do with beer :}
16:00:02 <ihope> :-)
16:00:18 * ihope drinks a Beerdigungnaachricht
16:00:27 <ihope> s/aa/a
16:00:41 <ihope> Uh. s/s/aa/a/s/aa/a//
16:04:52 <kipple> 99 bottles of beerdigungnachricht on the wall ...
16:05:26 <kipple> who's Augustus Gloop by the way?
16:05:47 <ihope> Character in Charlie and the Chocolate Factory.
16:06:18 <kipple> ah, the german boy?
16:06:52 <ihope> Yep.
16:06:55 <ihope> The fat one.
16:22:08 <Keymaker> rghh.. at least the program doesn't cause errors, but doesn't work properly either
16:22:19 <Keymaker> sigh.. back to debug..
16:27:54 <Keymaker> oh well, now it gave some healthy underflow..
16:28:32 <Keymaker> why do i always get underflow instead of other errors?!
16:29:08 <ihope> Because an error may be caused in the process of displaying an error>
16:36:36 <Keymaker> heh
16:36:49 <ihope> http://www.pwned.nl/ayb/
16:36:52 <ihope> WOW!
16:36:55 <Keymaker> no, the interpreter is fine, i just happen to mess up somewhere
16:44:11 <kipple> ihope: lol
16:49:08 <kipple> hmm. an esolang based on the Zero Wing intro text could be funny
16:49:30 <Keymaker> input: What you say!!
16:49:49 <Keymaker> move zig could move memory pointer..
16:51:23 <ihope> You have no chance to survive make your time... that one would hash the system clock into a seed for a random number generator!
16:51:56 <Keymaker> hehe :)
16:52:35 <Keymaker> "Main screen turn on." turn on the graphical display
16:53:18 <ihope> Makes sense.
16:53:26 <ihope> We get signal could be the input thing.
16:53:37 <Keymaker> yeah
16:53:50 <ihope> Some{body|one} set up us the bomb would end the program.
16:53:56 <Keymaker> yeah
16:54:05 <Keymaker> what about "For great justice."?
16:54:11 <ihope> Um...
16:54:19 <Keymaker> what could it do?
16:54:21 <ihope> Make the language Turing-complete?
16:54:26 <Keymaker> hehe
16:54:36 <ihope> "For great computation"...
16:55:05 <Keymaker> heh
16:55:13 <ihope> Well, "you have no ___ to ___ make your ___" would have to be a somewhat versatile command.
16:55:37 <ihope> You have no time to chance make your survive!
16:55:46 <kipple> all your <value> are belong to <variable-name>
16:55:56 <Keymaker> yeah
16:55:57 <ihope> Yeah!
16:56:25 <kipple> All your "Hello, World" are belong to STDOUT
16:56:36 <ihope> Heh.
16:56:40 <Keymaker> hehe
16:57:05 <ihope> Take up every <variable-name> = output <variable-name>
16:57:23 <Keymaker> that's good
16:57:32 <ihope> All your "Hello, world!" are belong to hello.
16:57:39 <ihope> Take up every hello.
16:57:47 <Keymaker> :)
16:57:49 <ihope> Somebody set up us the bomb.
16:57:58 <kipple> why take up? should be take up
16:58:01 <kipple> off
16:58:09 <ihope> ...Oh, yeah.
16:58:21 <ihope> Take off every hello...
16:59:12 <Keymaker> hmm, what about the loops or jumps?
16:59:43 <Keymaker> what about "what!" and "what happen?"
16:59:52 <kipple> for great/equal/lesser justice could be comparison operator
16:59:59 <Keymaker> :D
17:00:05 <Keymaker> that's great!
17:00:27 <ihope> Yeah!
17:01:04 <Keymaker> first storing some value to some specific variables and then using the FGJ instruction
17:01:55 <kipple> you are on the way to destruction could be GOTO (replace destruction with a label)
17:02:27 <ihope> Yeah!
17:03:05 <ihope> Main <label> turn on could be a label...
17:03:36 <ihope> So let's see here...
17:03:59 <Keymaker> haha, wow!
17:04:08 <Keymaker> we need to write specs
17:04:24 <Keymaker> very nice
17:04:31 <ihope> Main start turn on. We get zignal. Take off every zignal. You are on the way to start.
17:04:45 <kipple> cat?
17:04:48 <Keymaker> cat
17:04:49 <Keymaker> yah
17:05:27 <ihope> What haven't we covered yet?
17:05:34 <kipple> value manipulation
17:05:56 <Keymaker> yeah
17:06:47 <kipple> hey! we could use character names too.
17:07:07 <ihope> They have names?
17:07:18 <kipple> CATS: All your "base" are belong to us => CATS = "base"
17:07:23 <kipple> http://en.wikipedia.org/wiki/All_your_base_are_belong_to_us#Transcript
17:07:40 <ihope> Well, all we need for Turing-completeness would be increment and decrement commands.
17:07:46 <ihope> Bang, you got a Minsky machine.
17:08:08 <kipple> Ha Ha Ha => add 3
17:08:31 <kipple> Ha Ha => add 2 etc.
17:08:44 <ihope> :-)
17:08:59 <ihope> What you say = decrement, then.
17:09:10 <kipple> you could have a negate instead
17:09:23 <ihope> Ooh, yeah. What you say would be negate.
17:09:40 <kipple> You have no chance to survive make your time.?
17:09:43 <kipple> :)
17:12:33 <ihope> You have no <variable1> to subtract make your <variable2> would subtract variable1 from variable2?
17:13:21 <Keymaker> hmm
17:13:38 <kipple> yeah. but then survive should be a legal operator
17:14:28 <kipple> I like the idea of using the character names as variable names though. they are a part of the text too
17:15:06 <Keymaker> yeah
17:16:06 <kipple> The first line of a program should be: In A.D. 2101, <name of program> was beginning
17:16:17 <Keymaker> hehe, yeah
17:16:44 <ihope> :-)
17:17:24 <kipple> 2101 could be substituted with the year the program was written
17:24:52 <ihope> So what should this language be called? "All your base"?
17:25:24 <Keymaker> hmmm
17:25:36 <Keymaker> that would be logical at least :)
17:26:07 <Keymaker> ..but naturally that has nothing to do with this language :)
17:26:29 <ihope> He.h
17:26:37 <kipple> it could use hexadecimal notation
17:26:38 <Keymaker> perhaps that's the best name
17:26:51 <kipple> and we could call it "all your base 16 are belong to us" ;)
17:27:04 <Keymaker> :D
17:27:18 <kipple> or a more esoteric base perhaps
17:27:20 <ihope> Heh.
17:28:07 <ihope> In A.D. 2101, My Program was beginning. All your base 10 are belong to us. How are you gentleman? I like decimal notation, after all.
17:28:15 <ihope> s/man/men/
17:28:44 <kipple> ideally the original text should be a valid program
17:28:51 <ihope> Yeah...
17:28:55 <Keymaker> yeh
17:29:09 <Keymaker> and preferably a quine :)
17:29:14 <ihope> :-)
17:29:27 <ihope> How are you gentlemen would be the comment starter thing, as it doesn't end with a period.
17:29:54 <ihope> Periods end instructions. I suppose "How are you gentlemen." could be used as a NOP.
17:30:15 <kipple> but about half the sentences end in !!
17:30:16 <Keymaker> yeah, of course we need a NOP too :p
17:30:19 <Keymaker> yeah
17:30:43 <Keymaker> perhaps we should not try to make the original text work as program
17:30:46 <Keymaker> at least entirely
17:31:00 <Keymaker> btw, we need random numbers too
17:31:11 <Keymaker> at least i'd like them :)
17:31:56 <ihope> kipple: that could end them, too,
17:32:18 <ihope> Keymaker: you have no chance to ___ make your ___
17:32:18 <kipple> I think line breaks should end statements
17:32:24 <ihope> ...Okay.
17:32:31 <Keymaker> ah, i forgot that
17:32:38 <Keymaker> kipple: yah
17:32:57 <ihope> But then how would stuff like "you have no chance to subtract make your ___" work?
17:33:13 <kipple> not sure what you mean?
17:33:22 <Keymaker> line break = \n
17:33:29 <kipple> of course
17:33:36 <ihope> Would it generate a random number, or subtrace?
17:33:52 <Keymaker> oh, i thought ihope asked what line break was. never mind!:)
17:33:53 <ihope> s/subtrace/subtract/
17:34:22 <ihope> Why should line break be \n, though?
17:34:54 <ihope> Just make them give their strings in decimal!
17:35:01 <Keymaker> x)
17:44:22 <kipple> Captain: What happen ? => assign random number to variable Captain
17:45:15 <ihope> Yeah...
17:47:13 <kipple> alternative name for the language: Zig
17:47:22 <kipple> (nice for file extensions ;)
17:47:31 <Keymaker> yeah, nice name!
17:47:38 <Keymaker> that's very good
17:48:03 <Keymaker> Zig zig Zig zig.. zig.. zig..zigzigzigzigzigzigzigzigzig.. zig.. ZIG!!
17:48:06 <Keymaker> seems to work
17:48:07 <ihope> Zag?
17:49:39 <Keymaker> should we add work-in-progress page to esowiki?
17:50:50 <ihope> ...Yeah.
17:50:52 <fizzie> I think you might have a bit too much free time.
17:51:11 <Keymaker> :)
17:51:49 <ihope> ...Who?
17:52:20 <kipple> people who make esolangs in general perhaps... ?
17:54:41 <Keymaker> shall we use the name "Zig"?
17:55:03 <Keymaker> it's very good imho
17:55:11 <kipple> I like it
17:55:17 <Keymaker> yeah
17:56:26 <Keymaker> i'll make somekind of w-i-p page for it now, then
17:59:06 <ihope> Mmh, wip.
18:03:02 <Keymaker> perhaps someone else could do it? :D
18:03:18 <Keymaker> what are the decided instructions now+
18:03:21 <Keymaker> *?
18:03:28 <kipple> is anything decided?
18:03:36 <Keymaker> yeah :)
18:03:37 <Keymaker> no idea
18:03:54 <Keymaker> i won't make an article yet, then
18:04:03 <Keymaker> besides, feeling too sleepy for that..
18:04:20 <Keymaker> but anyways, hope to see this language ready sometime
18:04:22 <Keymaker> it's fun
18:08:07 <Keymaker> well, good night
18:08:15 -!- Keymaker has left (?).
18:18:31 <Sgeo> Switching over to Ion3 ;-)
18:20:25 -!- Sgeo has quit (Remote closed the connection).
18:25:49 -!- Sgeo has joined.
18:32:50 -!- Sgeo has quit (Remote closed the connection).
18:34:41 -!- Sgeo has joined.
20:09:53 -!- calamari has joined.
20:09:53 -!- mtve has quit (Read error: 104 (Connection reset by peer)).
20:10:37 <calamari> hi
20:10:39 <calamari> j crypto
20:10:42 <calamari> err hehe
20:44:34 -!- ihope has quit (Read error: 110 (Connection timed out)).
21:02:17 -!- Arrogant has joined.
21:09:02 -!- ihope has joined.
21:19:33 -!- kipple has quit (Read error: 110 (Connection timed out)).
21:31:57 <ihope> How come more letters of "shrdlu" are on the home row of a QWERTY keyboard than letters of "etaoin"?
21:36:56 -!- CXI has quit (Connection reset by peer).
21:40:56 <GregorR> "etaoin" is entirely home-row on Dvorak.
21:41:36 <ihope> Grumble, grumble. Are S, H and R on there too?
21:41:53 <GregorR> S and h, not R.
21:41:59 <ihope> Ah.
21:42:08 <ihope> ...Just what *is* the home row there?
21:42:21 <GregorR> aoeuidhtns
21:42:42 <ihope> I see,
21:42:45 <GregorR> It's a much nicer arrangement in general.
21:42:49 <ihope> s/,/./
21:42:59 <GregorR> And I'll BRB, my X has gone crazy.
21:43:02 -!- GregorR has quit.
21:46:51 -!- GregorR has joined.
21:47:15 <ihope> Yay! You're back!
21:47:59 <GregorR> ...
21:50:04 <ihope> And I'm... the opposite, or something.
21:50:06 -!- ihope has quit ("What the heck is a Beerdigungnachricht?").
21:51:31 -!- Paragon_ has joined.
21:51:40 -!- CXI has joined.
22:13:16 -!- Arrogant has quit (Read error: 113 (No route to host)).
22:16:52 -!- Paragon_ has changed nick to Arrogant.
22:27:19 -!- CXI has quit (Read error: 104 (Connection reset by peer)).
22:28:18 -!- CXI has joined.
22:35:39 -!- CXI has quit (Connection reset by peer).
22:36:28 -!- CXI has joined.
23:00:39 -!- CXI has quit (Connection reset by peer).
23:08:38 -!- puzzlet_ has joined.
23:08:40 -!- puzzlet has quit (Read error: 104 (Connection reset by peer)).
23:09:28 -!- puzzlet_ has changed nick to puzzlet.
23:27:38 <calamari> so typing hahaha is the same on both keyboards.. ;)
←2006-01-30 2006-01-31 2006-02-01→ ↑2006 ↑all