00:06:42 -!- BigZaphod has quit. 00:09:24 jix: valgrind reports a couple of errors (use of uninitialized values mostly, but also reads/writes which are out-of-bounds) 00:10:10 yes uninitialized values that is a bug 00:10:23 and that's why mandelbrot.b moves <0 00:10:27 argh 00:10:50 incidentally, that was the bug with bff too 00:11:20 graue: thanks for testing. Have you tried the patch which also replaces n with (n+1)? 00:17:15 no, I didn't know there was a new patch, where can I find it? 00:18:23 it's in the same place, http://www.formauri.es/personal/pgimeno/temp/bff.patch 00:18:37 the first version just added the memset's 00:19:31 then I realized there was a problem at end of program, thus the n+1 00:22:21 s/thus/hence/ 00:28:41 updated a new version 00:29:52 pgimeno: can you test it with valgrind? 00:31:07 sure 00:33:34 things have changed; now uninitialized memory access no longer occurs but the out-of-bounds access is still happening 00:33:52 grmpf 00:34:10 try hello-world 00:34:31 sec, I've just recompiled with -O0 -g 00:35:37 first line is mandelbrot.c:338 00:35:59 m[-7]+=m[29]; 00:36:55 narf 00:37:01 no errors on hello-world 00:37:28 hmm why does it work here and on keymakers computer but not on your 00:37:41 and not on lindi's (with gcc 4 with 2 it works) 00:37:42 it *does* work here, it's just valgrind complaining 00:37:57 pgimeno: mandelbrot does work? 00:38:01 yeah 00:38:20 but it writes in an OOB address, which is dangerous 00:38:30 OOB? 00:38:34 out of bounds 00:38:34 out-of-bounds 00:38:58 probably lindi's libc can make a difference, since the problem can be malloc-related 00:39:15 can you tell me the position of m and m_srt? 00:39:27 I was about to launch the debugger 00:39:40 but expect the same as what lindi reported 00:40:13 (gdb) print m 00:40:13 $1 = (unsigned char *) 0x1ba43026 "" 00:40:13 (gdb) print m_srt 00:40:13 $2 = (unsigned char *) 0x1ba43028 "" 00:40:40 nah 00:40:57 pgimeno, bff still doesn't work for me 00:41:16 but i adjust the m start value for m[-7] 00:41:24 graue: strange; now it works for jix 00:41:44 graue: what setup? 00:42:05 gcc 3.2.3, win32 00:42:08 and if it accesses -7 for m < m_min it's mandebrot.b's fault 00:42:29 if I run it on brquine.b it prints a - and then freezes 00:42:45 if I run it on rot13.b it works until I press Ctrl-Z and Enter (end of file on win32), then it freezes 00:42:53 run on random.b, it seems to work 00:43:05 numwarp.b seems to work, without issue 00:43:16 dquine.b seems to work 00:43:37 <{^Raven^}> pgimeno: i'll have to make mine better 00:43:46 graue: tried mandelbrot? 00:44:05 {^Raven^}: i too 00:44:06 mandelbrot is seemingly working okay 00:44:10 {^Raven^}: guess so, but don't blame me, I'm just doing some timings :) 00:44:23 mandelbrot works fine, and very fast 00:44:28 graue: oh! ok 00:44:48 I misunderstood you since I thought that it also failed 00:45:01 I hadn't tried mandelbrot with it 00:45:43 -!- Aardwolf has quit ("Leaving"). 00:45:55 are these from http://esoteric.sange.fi/brainfuck/bf-source/prog/ ? 00:46:11 -!- kipple__ has quit (Read error: 110 (Connection timed out)). 00:46:35 they're from www.esolangs.org/files/brainfuck/src 00:46:42 ok 00:50:21 yeah, brquine.b fails here too 00:50:36 <{^Raven^}> jix: very nice 00:51:50 jix: btw, valgrind reports an access to a position which is 9 bytes before the allocated block, just as expected 00:51:51 {^Raven^}: wait for stage 3 (not that the output is a lot faster with stage 3..but hey it's more code) 00:52:23 pgimeno: mandelbrot works with it. 00:52:37 so my compiler does only the things mandelbrot says. 00:52:53 and if m jix: if m_srt is the start of memory, then I assure you that mandelbrot.b does not do any OOB access 00:53:26 I've almost got my compile-to-memory interpreter working, loops are a bit screwy right now. 00:53:34 m_srt is start of memory 00:53:53 m_min is the min position of m (only for debug reasons) 00:54:18 my interpreter would report an attempt of <'ing at position 0 and it doesn't happen 00:54:20 and if m>=m_min it will never access OOB memory 00:54:43 yes i don't know what happens 00:55:04 is the output 100% correct? 00:55:19 let me check 00:56:51 i'm running collatz.rb in dbfi 00:57:14 collatz.b 00:58:12 the output is correct 00:59:00 pgimeno: can you check on what line m moves under m_min ? 00:59:08 dbfi in dbfi! 00:59:44 jix: that's harder to do, I don't know gdb that well 01:00:33 hmm 01:01:18 Hmm, my compile-to-memory compiler segfaults for all non-trivial programs. 01:01:21 That's good >_> 01:02:11 nice, now you can say you're not using the wrong algorithm 01:02:52 "If your program works at first attempt, you're probably using the wrong algorithm" 01:03:26 lol 01:04:20 but that doesn't logically imply "If your program fails at first attempt, you're probably not using the wrong algorithm" 01:04:58 is there a way to get the current line number in c? 01:05:03 __LINE__? 01:05:43 I think you can use __LINE__ and the preprocessor will put in the line number for you, but I'm not sure what header file that requires 01:06:06 seems to work without headers 01:06:40 line 50 moves m < m_min 01:07:26 #define REALLOC if(m thats line 49 for you 01:08:45 yeah but it's not troublesome 01:08:52 the loop that starts at 3:11 in mandelbrot.b 01:09:16 I'd say the trouble is caused by line 333 01:09:22 wait 01:09:45 no 01:10:13 line 49 moves m that's not a problem if no access to that address occurs 01:11:14 yes but it's illegal in brainfuck 01:11:24 and your interpreter sais it doesn't move over the end of the tape 01:11:33 but my compiler sais it does. 01:12:02 if your compiler keeps always m in range then yes, it's illegal, but I didn't know if that was the case 01:12:30 oh wait 01:12:33 your compiler might want to keep m temporarily out of range for optimization or something 01:12:36 i'm wrong your right 01:12:53 pgimeno: i only check for read's and write's 01:13:19 that's what valgrind does and it reports a problem on line 338 01:14:31 outch 01:14:33 i've an idea 01:14:35 if that helps, moving line 340 at the top of that while seemed to fix the problem 01:14:52 does it still work? 01:15:03 yes 01:15:18 I haven't checked if the output is exactly the same though 01:15:32 I mean moving line 30 to before line 337 01:15:37 s/30/340/ 01:16:17 ok 01:16:36 now the same problem happens in line 702 01:16:55 (and others) 01:17:01 i think i know how to fix it 01:17:27 i just noticed another bug that slows down(but isn't harmfull) 01:17:31 but i have to sleep now 01:17:46 me too 01:17:56 -!- jix has quit ("Bitte waehlen Sie eine Beerdigungnachricht"). 01:45:42 -!- heatsink has joined. 02:09:57 -!- BigZaphod has joined. 02:10:04 hi BigZaphod 02:10:22 hey 02:12:06 -!- BigZaphod has quit (Client Quit). 02:57:19 That was a thrilling conversation 8-D 03:17:00 AHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH!!!!!!!!!!!!!!!!!!! 03:17:04 YES YES YES YES YES!!!!!!!!!!!!!!!!!!! 03:17:10 egobfc2m just ran mandelbrot!!!!!!!!!!1 03:17:35 Eat my DUST bff!!!! 03:17:36 compiles to machinecode? 03:17:39 Yup 03:18:01 congratulations 03:18:09 now you can make pa-risc and sparc64 versions :) 03:18:21 Actually, I set it up so that it would be relatively easy. 03:18:24 To port that is. 03:18:27 yes 03:18:58 However, my only access to PA-RISC and ULTRASPARC boxes are at work, and I don't think they'd like me comendeering them for Brainfuck :) 03:19:09 Damn, Lost Kingdom segfaults :( 03:20:50 Oh, hehe, I just didn't give it a big enough program buffer ... (/me remakes the resizing stuff) 03:23:08 what is PA-RISC used for? 03:23:51 People who are unwilling to give up their antiquated ways :) 03:24:02 They're on their way out for the most part. 03:24:13 oh, damn 03:24:26 what's a cool non-i386-like architecture that isn't on its way out? 03:24:52 cool implies non-i386-like :) 03:25:09 HPUX moved to IA64. 03:25:14 I disagree, AMD64 is non-i386-like, but somewhat cool 03:25:18 I mean 03:25:20 s/is/isn't/ 03:26:36 Does Lost Kingdom use more than 30000 memory tiles? 03:28:35 probably 03:28:36 who knows? 03:28:53 Unfortunately, setting it to 300000 didn't help, so it's clearly my buggy code. 03:29:07 can't you fathom the idea that it may use more than 300000? 03:29:11 give it 2 GB 03:29:13 just to be safe 03:29:17 lol 03:29:22 Lots o' swapping :) 03:29:31 don't you have 4 GB of RAM? 03:29:37 all the cool kids have at least 4 GB of RAM 03:31:08 XD 03:31:15 Awww, Gregor isn't a cool kid. 03:32:55 Hmm, is it worth it to make the memory expand if it halves the speed :( 03:34:00 will it become that much slower? 03:36:11 Only because I have to call an external function ... if I wrote the code into the machine code, it would be fasssssst. 03:36:14 But also death. 03:39:08 OK, making a release though it's still unstable ... 03:46:58 http://gregorr.homelinux.org/egobf-0.5.tar.bz2 03:48:06 -!- int-e has joined. 04:11:45 Sorry to spam, but: 04:11:45 time ./egobfi/egobfc2m tests/mandelbrot.b > /dev/null 04:11:45 4.81user 0.00system 0:04.82elapsed 99%CPU (0avgtext+0avgdata 0maxresident)k 04:11:45 time ./bfi/bff.bin tests/mandelbrot.b > /dev/null 04:11:45 16.72user 0.01system 0:16.78elapsed 99%CPU (0avgtext+0avgdata 0maxresident)k 04:13:22 hmm, is converting brainfuck to C and then using gcc considered fair? 04:13:44 egobfc2m doesn't do that. 04:13:54 It compiles directly into memory and runs it, like java. 04:14:20 And actually, many bf->C->bin alternatives are slower than interpreters when you consider compilation time. 04:15:19 (Thanks to other members of this channel for pointing that out to me btw :) ) 04:17:10 I know. But I get user 0m2.131s for (my) bf2c then gcc and user 0m19.108s for bff :) 04:17:46 (using mandelbrot.bf. and producing the same output.) 04:19:51 But how much time did it take to compile with gcc? 04:23:02 ok. 5.611s total using -O3. -O1 is fastest and uses 3.821s total (compilation + runtime) 04:23:58 Also, I'm still working on producing optimal machine code. 04:27:33 Yep I didn't want to do that so I decided to use C as my target when I wrote that converter. 04:28:20 Incidentally, BF2C is quite nice. 04:28:30 But not quite insane enough for my taste ;) 04:28:37 (awib is a bit too insane for my taste) 04:33:12 WOOOH! Got mandelbrot down to 3sec! 04:34:03 can you get it down to 0.0 sec? 04:34:28 I'm workin on it ;) 04:34:34 I have one more optimization in the works. 04:35:00 * int-e wonders why bf2c-1.2.3 crashes on mandelbrot.bf. (segfaults) 04:36:30 did you know "chino" was a word? I didn't! 04:36:55 it's a coarse, tough, twilled cotton fabric used for uniforms or sports clothes 04:38:18 That's quite an esoteric bit of knowledge, graue :) 04:39:29 I just learned it thanks to my wonderful word guessing game 04:39:35 which is written in an esoteric language, Perl 04:40:02 heh 04:40:06 perl, the original brainfuck 04:42:07 brb 04:42:15 wait, no I won't 04:42:16 -!- graue has quit ("Donate a manual typewriter to ME for your only hope for a future!"). 04:42:21 Down to 2.86 ... 04:51:32 {^Raven^}: You've foiled EgoBFC2M!!!! I can't get it to run LostKingdomBF :( 05:05:27 OH WAIT!!!!!!!!!!! Does it need 16-bit words? 05:05:37 No, no it doesn't >_< 05:11:36 *sob* 05:14:29 OK, the fastest I can get it (still doesn't run Lost Kingdom) http://gregorr.homelinux.org/egobf-0.6.tar.bz2 05:17:48 jix: m (i know jix isn't here but i said that so that i don't forget) 05:25:52 * int-e wonders 05:27:41 Are jix's speed tests posted? 05:46:56 -!- heatsink has quit ("Leaving"). 06:08:00 hmm. gregor, maybe realloc()ing the program memory area moves it in memory, invalidating the offsets of the call functions. maybe you could just allocate a new chunk and generate a jump at the end of the previous one instead. 06:09:36 If I'm not mistaking, I used offset from the beginning of the array, not an exact pointer. 06:09:45 pptr is an inaccurate name, it's an index into an array. 06:09:59 *mistaken 06:11:01 the problem are the calls to the putchar and getchar wrappers together with the relative addressing of the call routines 06:11:02 OH, wait. 06:11:07 I'm sorry, I see what you're saying. 06:11:10 I was being dumb there. 06:11:13 Indeed you're right. 06:11:27 internal jumps or calls are not an issue. 06:11:43 You are 100% correct, that is broken. 06:11:55 That could very well be the problem with Lost Kingdom :P 06:13:53 well, my to-c-converter has a bug apparantly - if I answer 'y' to the question for long descriptions, the program gets stuck in an infinite loop (as far as I can tell) :/ and the converter is almost 3 years old, I don't think I can find that bug, it's probably easier to write a new one *g* 06:14:24 uhm - that's what happens when I convert the lostkingdomsbf game 06:14:30 Well, watch Lost Kingdom run perfectly! 06:14:41 * GregorR shoots himself in the foot. 06:15:28 (not to mention that the converter's runtime suffers from using O(n^2) algorithms) 06:16:26 Thank you for the suggestion of making them into multiple functions, that is exactly what I'll do. 06:16:31 Err, jumps rather. 06:44:15 YAY! 06:44:26 Thank you very much int-e! I don't know if I would have noticed that bug. 06:45:01 :) 06:57:43 http://gregorr.homelinux.org/egobf-0.7.tar.bz2 06:58:25 There's only one problem ... 06:58:35 Now I can't find a BF program significant enough to challenge it :) 06:58:48 GregorR: mandelbrot.b 06:58:54 Hardly a challenge. 06:59:05 Lemme get a time output, just a sec. 06:59:21 time ./egobfi/egobfc2m ./tests/mandelbrot.b > /dev/null 06:59:21 2.79user 0.00system 0:02.79elapsed 99%CPU (0avgtext+0avgdata 0maxresident)k 06:59:33 For comparison: 07:00:04 bff feels really slow now ... 07:00:15 yeah, but what about BF2C and gcc? 07:00:21 time ./bfi/bff.bin ./tests/mandelbrot.b > /dev/null 07:00:21 16.28user 0.00system 0:16.29elapsed 99%CPU (0avgtext+0avgdata 0maxresident)k 07:00:28 Just a tick. 07:00:38 Plus compilation time? -O1? 07:00:58 yep 07:01:37 One moment. 07:02:26 0.00user 0.00system + 1.59user 0.04system + 2.41user 0.00system 07:02:39 A bit slower than egobfc2m, but not by a lot. 07:02:54 hmm, which bf2c is that? 07:03:16 http://www.esolangs.org/files/brainfuck/impl/BF2C.c\ 07:03:23 Without the \... 07:03:37 oh, another one 07:03:43 http://bf2c.sourceforge.net/ 07:03:48 Aha 07:03:55 (crashes on mandelbrot.b) 07:04:14 http://www.inf.tu-dresden.de/~bf3/brainfxxx/bf2c.hs -- my own one 07:04:15 ;) 07:04:23 argh, somebody should make sure these interpreters are named uniquely 07:04:39 it's not my fault, I chose that name in 2002 ;) 07:04:49 Hmm, a bit difficult to convince it to use -O2 >_> 07:05:52 *whew* 07:05:53 jix: m That's mighty fast. 07:06:06 Oh wait, something borked >_> 07:06:30 ok, BF2C is boring :) 07:06:39 you could optimize mandelbrot.c to just printf("correct output here...."); 07:06:46 right 07:06:55 Hmm, it's segfaulting for me ... 07:08:10 ok, let's say BF2C.c is BF2C.c, the bf2c at sourceforge is bf2c.sf, and mine is bf2c.hs - now which one segfaults? 07:08:15 Yeah, I can't get it to not segfault 07:08:25 bf2c.sf 07:09:03 you can remove one pass from bf2c.cc - pt->convertAbsoluteHeader(); 07:09:08 that's the one that segfaults 07:09:14 And it'll still work? 07:09:16 * int-e couldn't figure out what it does 07:09:18 yes 07:09:24 it 07:09:29 it's an optimization 07:10:44 0.00user 0.00system + 1.01user 0.03system + 2.29user 0.00system 07:10:49 Still slower than egobfc2m :) 07:12:10 MUAHAHAHAHAHA 07:12:18 Oh, sorry, got a little bit zealous there. 07:12:22 http://www.inf.tu-dresden.de/~bf3/mandelbrot.c is what bf2c.hs produces (runtime 0.031s here) 07:12:38 that's the runtime for the conversion 07:12:39 Where's bf2c.hs ? 07:12:50 http://www.inf.tu-dresden.de/~bf3/brainfxxx/bf2c.hs 07:13:29 Not that it helps me without the appropriate compiler :P 07:13:30 OK, lesse. 07:13:31 it's written in haskell, I compiled it using ghc, usage is bf2c < brainfuck-source > c-source. no options. 07:14:17 0.92user 0.04system + 2.52user 0.00system 07:14:21 Still not quite :) 07:14:34 yep, but not too bad either :) 07:14:45 No, it's great. 07:14:54 And the time of the compiled program is better. 07:15:32 Incidentally, does anybody here have any non-i386 system that they can compile a simple file on and send back some results? 07:15:48 hmm 07:15:48 (That isn't incidental at all, is it?) 07:16:43 sun4u sparc SUNW,Ultra-250 07:16:47 could try *g* 07:17:13 In egobf-0.7 there's a PORTING file with instructions on how to make ASM-and-hex output I could perhaps use to port egobfc2m. 07:17:46 It's basically just gcc -O0 -g test.c and objdump -S -t a.out 07:21:46 hmm. now where did they hide objdump. grr. I hate SunOS. 07:21:55 gobjdump perhaps? 07:22:11 It's part of binutils, so it ought to be somewhere XD 07:22:17 (If you have gcc) 07:22:37 gobjdump it is, and it's in /opt/sfw/bin where I also found the gcc. 07:22:46 Makes sense. 07:22:54 (sfw is 'Sun Free Software', IIRC) 07:24:46 Hmm, sleepitime is soon. 07:24:53 http://www.inf.tu-dresden.de/~bf3/dumps.tgz 07:24:58 Wooh :) 07:25:04 -O0, -O1, -O2 07:25:20 --> test0.dump, test1.dump, test2.dump 07:25:41 good luck :) 07:25:50 Ahhhhhhhhh, RISC :) 07:26:07 Sparc is a Risc architecture, right. 07:27:01 and I believe it has delay slots, so beware. 07:27:23 Graa. 07:27:42 Like I said, sleepitime soon - I'll look at this port tomorrow. 07:27:44 Bye. 07:28:14 sleep well 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 11:15:38 -!- int-e has quit ("Bye!"). 11:17:58 -!- kipple__ has joined. 11:39:00 -!- jix has joined. 11:42:45 moin moin 11:43:16 -!- kipple__ has changed nick to kipple. 11:46:14 -!- puzzIet has joined. 11:46:28 -!- puzzIet has quit (Client Quit). 11:47:25 -!- Gs30ng has joined. 12:02:56 hi 12:04:10 i've been interested about Esolang and tried to make one recently 12:05:22 it's a lauguage with bit variables 12:05:57 every characters that you can input are all variables 12:06:09 even space, tab, or newline 12:12:01 so when you type a character, it'll be identified as a variable, which means we cannot assign any instruction to a specific character 12:13:02 and how is it possible to program in it? 12:13:17 in current specification, patterns of characters, especially repeatation of a specific character will be an instruction 12:14:55 all variables are called 'switch', which can be turned on or turned off. 12:15:16 to turn on switch 'A', the source code will be: A 12:16:56 so when you type A, it's like ~A in C/C++. if 'A' is turned off, typing 'A' will turn on it. if it is turned on, typing 'A' will turn off it. 12:18:09 and when you type 'AA', it is meaningless, which mean we don't have any chance to type like that when we are to turn on/off the switch. 12:18:30 so i thought i can assign an instruction to the repeatation of one character. 12:20:17 i'm not sure that people here can understand me, because of my humble English 12:20:49 so please feel free to ask or correct me when you can't get me 12:25:38 the instruction, started by repeatation of a character, will be bitwise NAND operation, i think. 12:26:18 so 'AABC' does NAND between B and C and put the result to A 12:27:01 ......could this be turing-complete? 12:28:58 no because memory is limited to 256bit 12:29:06 well 12:29:14 i think we can use UTF-8 in this language 12:29:57 ...still not infinite switches but i think it's enough 12:30:19 You probably need at least some conditional-control-flow thing (a conditional jump or something). But encoding instructions like that should work. 12:30:55 aha 12:30:59 i agree with you 12:31:35 hmm... OISC is turing complete, right? 12:32:36 how can it do that? i think this language can follow that way 12:33:24 The single instruction in OISC (at least one of them) is subtract-and-branch-if-negative, so you can use it for both arithmetics and control flow. 12:34:21 so that 'branch' does something related to control flow? 12:35:46 It's a jump, basically. 12:36:43 then how about assigning 'NAND-and-branch-if-negative' to 'AABC'? 12:37:12 Uh.. you need to be able to tell it where in code to branch to. 12:37:40 But you could devote some of the registers to serve as the "destination address" field for that instruction. 12:37:54 then i need at least 5 letters to do that 12:38:03 like, 'AABCD' 12:38:16 AA will be instruction, and BCD is operand... 12:40:11 You could have a fixed "memory location" (like registers '0'-'9') indicating where 'AABC' should jump. Then you'd just do 15789AABC to possibly-jump. 12:40:59 (With a single-bit register you can only specify two addresses. That might be a _bit_ too limited. (Gahh, the horrible pun.) 12:41:19 that sounds good too but i don't want to assign a letter to be something special. i want every characters to be impartial. 12:41:59 like, when you make a source code and replace every 'A' to '#' and '#' to 'A', it will still work 12:42:09 Hm. Then you just need to use enough bit-registers as operands for the jump command. 12:42:12 -!- grimace_ has joined. 12:42:44 jumps could be realtive 12:42:57 i like that 12:43:07 there must be some labels 12:43:30 which indicates the place to jump 12:44:09 A definitely sick syntax would be to use AABCD, AAABCDE, AAAABCDEF, ... (with 'D', 'DE', 'DEF' being the relative adddress to jump to) 12:44:27 That way for short jumps the instruction would be shorter. 12:44:36 you end the relative adress with two identical characters 12:44:44 Hm, that works too. 12:45:07 like AABCDEE would A=B nand C if true jump to DE 12:45:34 and why do i need 2 Es? 12:45:47 Gs30ng: because it says that the instruction ends 12:46:00 So you can use AABCDEFGG to jump to DEFG, then. 12:46:13 but i think we don't need that 12:46:24 like AABCD is enough 12:46:45 A=B nand C and if false jump to first D after this instruction 12:47:39 i don't want to assign a instruction-terminating instruction;;; there would be too much repeatation 12:47:42 whatif i want to jump backwards 12:48:20 idea: search the nearest D in both direction 12:48:48 maybe i can make a while() instruction 12:49:21 no if you search bidirectional there is no need for an extra instruction 12:49:52 * Gs30ng thinks 12:51:09 i can make 'if false jump backward and if true jump forward' with it, right? 12:51:18 although the source code will be complicated 12:51:18 Gs30ng: yes 12:51:34 that's true for many esolangs 12:52:02 still i'm considering whether to use AABCD or not 12:52:14 because i think it's too long for an esolang like this 12:52:31 i need more simple way to start an instruction... 12:54:48 hey, we have a space for one more instruction 12:55:22 yes? 12:55:30 when we 'AAAAD', A nand A = A is definitely same with just 'A' 12:55:47 so i think we can assign input/output to AAAA 12:56:39 AAAABCDEFGHI to output BCDEFGHI if A and intput to BCDEFGHI if not A? 12:56:39 at least 8 different switches should follow AAAA 12:56:59 jix, we should not do that 12:57:24 the condition of A is forbidden to affect the instruction 12:57:25 why not? 12:57:50 because it is, the programmer is to... 12:57:57 1. turn off A. 12:58:03 2. start the instruction 12:58:13 the source code will be like AAAAA 12:58:32 but first 4 A's will be identified 12:58:36 as an instruction 12:58:59 so the condition of A must not affect the instruction 12:59:21 Well, the programmed could always do AXAAAA...X, but perhaps it's not elegant. 12:59:36 yes 12:59:40 i don't like that X 12:59:50 it's not minimal 13:00:10 we need one more useless switch to do an operation 13:01:50 pgimeno: are you here? 13:02:42 whoa, anyway, i have a lot more progresses with this language. this is great. the freenode channel #esoteric helps. 13:04:08 thanks for all you guys helped me, and i'll make a prototype specification in english 13:04:12 jix: hey 13:04:24 pgimeno: was a valgrind question 13:04:32 pgimeno: was a file-permission solution 13:05:03 jix: the pointer one? I don't follow 13:05:16 no i had a question 13:05:33 where? 13:05:44 14:02:53pgimeno: are you here? 13:06:11 i didn't ask it because i noticed it was a wrong file permission setting 13:06:20 aah 13:06:58 next time you can note you're not going to ask by saying e.g. "never mind[...]" 13:07:21 k 13:08:13 i don't have much english irc experience;) 13:08:51 sorry if I sounded picky, it was the result of my confusion :) 13:09:29 no you didn't sound picky (whatever picky is) 13:10:44 jix, how can you tell that if you don't know what is picky? 13:11:06 ..or am i misunderstanding a practical joke? 13:11:16 * Gs30ng kills himself 13:11:19 Gs30ng: because in that context it has to be something negative 13:11:27 aha. 13:12:13 like, someone too worried about the details 13:13:00 like being fastidious? 13:13:31 nah i broke mandelbrot.b 13:13:44 then you totally didn't sound picky 13:14:01 ok sorry let's forget about this all picky stuffs 13:18:26 pgimeno: i reduced the REALLOC macro calls about 50% 13:18:37 if i decrement the pointer i don't have to check for overflows 13:20:06 jix: nice 13:20:46 hmm and valgrind doesn't complain anymore 13:20:53 (in the first 6 lines) 13:20:57 7 13:21:05 8.... 13:21:11 my linux box is slow 13:21:16 jix: 09:06:56 < lindi-> jix: m with valgrind really slow 13:21:29 maybe you already fixed this, i was away 13:21:47 i have to move m around 13:21:58 [<] does this 13:22:07 and mandelbrot uses [<<<<<<<<<<] or something like that 13:22:52 jix: I find it strange that now it doesn't complain... is the removal of REALLOC the only change? 13:23:13 pgimeno: no that's just a speedup because i had to work on that code anyway 13:23:50 i just added the maximum move-up+1 and maximum move-down+1 to the border space of the memory 13:24:42 is there a befunge mandelbrot? 13:25:47 I have the feeling that there's something wrong with address (bottom - 9) being accessed anyway... 13:25:50 jix: i have a question 13:26:18 what if 'AAB' is 'A nand B and put the result to A'? 13:26:21 pgimeno: but i just do what mandelbrot.b tells 13:26:31 Gs30ng: that's shorter 13:26:43 the code will be shorter, but i'm not sure that still can do every operation 13:26:53 jix: i used the befunge fibonacci program in my benchmarks 13:27:22 jix: google says there's a bef93 mandelbrot, yes 13:27:43 http://quadium.net/funge/downloads/bef93src/mandel.bf 13:27:56 :( 13:28:11 i want to write a mandelbrot for some esolang 13:28:58 "When Benoit is to iterate..." 13:29:06 lol 13:29:21 hey i have floats in ORK 13:30:02 well, that was an idea 13:30:52 btw, that bef93 mandelbrot uses g and p quite a lot 13:32:06 i can't decide the name of this esolang. 13:32:19 AAB 13:32:53 i'm looking up my hometown language dictionary, but there's no proper word refers to 'switch'.. 13:33:58 AAB programming language... that code does nothing 13:35:10 A and AAB does same thing 13:35:14 :( 13:37:28 jix and fizzie helped me a lot so i could put those names into the name 13:37:32 ...this is not a good idea 13:37:51 ...Fizjix programming language? 13:38:06 lol 13:38:14 /away 13:39:27 how about 'jiffy' ? 13:39:51 Jiffy programming language. 13:40:09 anyway, it sounds interesting, but I don't really understand it 13:40:47 your language I mean 13:40:57 kipple, i'll show you the prototype of specification in english ASAP. 13:41:38 i'm writing it now 14:31:58 Well 14:32:11 Gee, this is too difficult to read 14:32:19 I'm not a good english writer 14:32:38 writing specs is hard 14:32:38 somebody correct this article to be read easily 14:32:42 http://gs30ng.exca.net/usg/CodenameSwitch 14:36:00 feel free to create an account since it's really easy 14:36:36 how about using the Esolang wiki instead? 14:36:37 http://www.esolangs.org/wiki/Main_Page 14:37:19 i'm a little bit nervous to do that... 14:37:33 this langauge is, right now, like stub 14:37:53 that's not a problem 14:37:56 -!- int-e has joined. 14:39:25 anyway, I think I get the language now. looks nice 14:39:35 but storage is, of course, rather limited :) 14:41:35 thanks 14:41:50 of course we need UTF-8 charset to do something with this language 14:43:21 http://www.esolangs.org/wiki/Switch 14:45:11 -!- Aardwolf has joined. 14:47:16 ok. I can probably correct it a bit later. But now I have to eat... 14:48:28 -!- GregorR has quit (Read error: 110 (Connection timed out)). 14:50:31 -!- tokigun has joined. 14:51:35 hello 14:52:37 -!- int-e has quit ("Bye!"). 14:52:40 -!- int-e has joined. 14:54:11 tokigun here 14:54:22 Gs30ng: ... 15:02:56 i didn't expected anyone i know at here 15:03:18 lol 15:03:23 you are truly esoteric, tokigun. 15:03:35 Gs30ng: ... 15:05:02 my notebook computer didn't work 15:05:41 and you work instead? 15:06:00 ...whatever 15:06:20 ... 15:06:21 did you see the spec of my new language? 15:06:30 didn't. 15:06:51 i'm writing input/output operation part and it sucks 15:08:36 bf2a version 0.2 is online at www.harderweb.de/jix/langs/brainfuck/bf2a.rb 15:13:47 i completed it 15:13:50 http://www.esolangs.org/wiki/Switch 15:15:18 good 15:16:00 now i'm gonna cook a ramen 15:17:29 after eating that, i'll try to make a Switch code which prints "Hello Wolrd!" 15:18:03 ...i think it'll be easier, compared to Aheui 15:18:24 Gs30ng: is there Switch interpreter? 15:20:23 tokigun: ...do we need it? 15:21:16 there's no Switch interpreter yet 15:21:42 hmm 15:53:34 -!- Keymaker has joined. 15:53:37 i love it! 15:53:41 i love it! 15:53:45 SWITCH!!!!!!!!!!! 15:54:08 please, someone make interpreter, quick! 15:54:54 ...excuse me but would you tell me who you are? where did you got info about Switch? 15:55:32 well, my name is keymaker 15:55:39 and i read #esoteric logs sometimes ;) 15:56:01 i feel pretty good that someone is interested of a langauge i suggested 15:56:02 and check 'recent changes' in esolangs.org wiki daily 15:56:07 :) 15:56:11 yeah, it's really cool language 15:56:19 i liked it immediately 15:56:25 but i didn't expected thing like this;; 15:56:45 like, fanatical response 15:56:54 heh 15:57:12 tokigun, would you make an interpreter for him? 15:57:39 hmm 15:58:07 the spec is not settled so i think it's too fast to make an interpreter 15:58:16 but there's demand about it 15:58:25 ok 15:58:34 good -- i was just going to ask 15:58:39 why UTF-8? 15:58:49 is there any mention about UTF-8? 15:58:53 yes 15:58:58 well, if ASCII 15:59:03 "Input/output operation takes 16 characters after it. If all 16 characters are turned off, then input operation will be performed. If not, it will print the UTF-8 character by that 16bit number." 15:59:03 we have 256bit of memory 15:59:23 hmm 15:59:45 so i think we must use UTF-8 system to guarantee enough memory space 15:59:55 hmm 16:00:09 it uses unicode... but it doesn't need to use utf-8 encoding 16:00:32 then i'll edit it to unicode 16:00:37 i always confuse 16:00:40 unicode and UTF-8. 16:00:41 yeah 16:01:50 hm. limited 256bit lang would be better. but that's just me.. 16:02:39 i agree with you but i also want it to be turing tarpit 16:02:52 would unicode make it turing tarpit? 16:02:57 not yet 16:03:33 but there will be a system that enables to store infinite characters 16:03:45 hmm, has a certain feeling of SMETANA to it, in that every used variable has to be explicitely mentioned in the code. 16:03:47 then Switch will be turing complete. :( 16:03:53 Aardwolf: ah, hello! :) 16:03:57 hmm 16:04:09 Gs30ng: hmm... 16:04:11 hi there 16:04:13 sup? :) 16:04:16 in the current state, without infinite storage devices. 16:04:17 hello 16:04:28 Aardwolf: are you an inventor of Gammaplex? :) 16:04:41 yes I am :) 16:04:59 i'm interested in it but its spec is somewhat... eh... anyway. 16:05:09 Gs30ng:no even with unlimited amount of switches switch is still not turing complete 16:05:33 then what more we need? 16:05:33 i couldn't understand some instructions. 16:05:44 a way to address switches or a way to extend the program 16:05:51 Which one don't you understand? 16:05:57 then I can try to improve it 16:05:59 Aardwolf: hmm... eh... 16:06:03 because in a progrm of size n you can only use n switches 16:06:19 i got it 16:06:59 ...but is that a problem? 16:07:16 Gs30ng: if you wanna make turing tarpit. 16:07:28 Aardwolf: sorry, please wait a moment :) 16:07:31 tokigun: um... heh... :) 16:07:47 well, since OISC is turing complete, i thought i can mimic it... 16:07:58 tokigun: i think i'll try to write mandelbrot for versert 16:08:41 Aardwolf: i couldn't understand stack program. 16:08:57 surprised. there's people tries to make something in Versert. 16:09:12 Gs30ng: ... 16:09:16 good job, tokigun 16:09:34 tokigun: oh yes, stack programs aren't that important actually, I wonder why I included it 16:10:29 Aardwolf: if source code of interpreter were in public, i could make some code in Gammaplex and so on... :( 16:10:45 jix: do you have any idea to fix that problem? 16:11:19 and how does OISC overcome that kind of problem? 16:11:19 Gs30ng: another instruction 16:11:36 Gs30ng: oisc has adresses for memory access 16:11:46 tokigun: the source code is public, and someone managed to compile it for macintosh 16:11:58 eh? 16:12:04 -!- cmeme has joined. 16:12:14 where is the source code? :S 16:12:15 it's in the zip file in the folder "src" 16:12:23 -!- cmeme has quit (Remote closed the connection). 16:12:39 in this file: http://www.student.kuleuven.ac.be/~m0216922/gammaplex/gammaplex.zip 16:12:48 nearest C - what happens if there is no nearest C? 16:12:57 Aardwolf: /me managed it 16:12:58 terminates 16:13:09 that's the way to terminate the program 16:13:13 oops i missed it 16:13:15 -!- cmeme has joined. 16:13:21 Aardwolf: oops... why i couldn't see it? 16:13:21 i'll add that on wiki 16:13:24 i see. 16:13:26 jix: yes indeed 16:13:48 tokigun: it's only in there for a few weeks, maybe you had an older version? 16:14:06 tokigun: I also updated the spec when I added the src, maybe the new one is a bit clearer? :) 16:14:16 ah... 16:14:29 i downloaded it months ago. 16:14:41 all the colors and stuff are now gone from the page :) 16:14:47 ;) 16:15:48 I don't know why, but I feel like writing a mandelbrot program in gammaplex :) 16:15:51 me gonna try it :) 16:16:19 in Switch we have addresses of each switch... isn't that enough? this obfuscates me... 16:18:34 and I/O needs to specify which bit is the LSB 16:19:03 Gs30ng: yes but in oisc you can always adress another switch by incrementing the adress of an instrucion 16:19:33 int-e: i'm sorry but what is LSB? 16:19:46 least significant bit 16:20:31 ...i should look up wikipedia 16:20:35 I suppose your Q has value 1 and the A has value 32768 16:21:02 but it's not really clear from your specification 16:22:25 well you mean the order of bits? 16:22:28 yes 16:22:32 which one do you prefer to be LSB? 16:22:39 first one? last one? 16:22:50 I'd take the last one. 16:23:17 Gs30ng: would you mind if I make an esolang based on the idea of switch? i'll naturally credit you 16:23:34 Aardwolf: i'm looking your interpreter. maybe i can make obfuscated Gammaplex interpreter now :) 16:24:24 hehe, and it's not specified what the input operation does (although it's easy to guess the intention) 16:24:43 Keymaker: why don't you just do it in Switch? the language is opened for every opinion 16:25:06 well, i'll write down the ideas/plan i have 16:25:14 i'll let you see it when it's done 16:25:37 int-e: actually a GUI window will appear and force user to turn on or off 16 switches manually 16:25:43 :( 16:26:26 Keymaker: i really appreciate it 16:27:20 tokigun: hehe make one in bf :) 16:27:26 Aardwolf: ;) 16:27:30 int-e: i'm gonna make an example code that prints 'A'. then things will be clear, i think 16:28:18 i've make several obfuscated interpreter of whitespace and whirl in c... i like esoteric programming, but also obfuscated programming. 16:28:38 I find there are a lot of weird things about gammaplex because when I started on it I didn't yet know all the features I wanted to add, maybe I should make a successor that's more logical, or do you think it's fine the way it is? :) 16:28:47 http://www.inf.tu-dresden.de/~bf3/switch.c ... quick and very dirty hack for posix systems, and it does not do unicode, just ascii, so it's very limited. but it should be good enough for some experiments. 16:29:06 I hope there are no bugs (untested code, yay!) 16:29:53 Aardwolf: that's Gammaplex2? or... why not Deltaplex? :) 16:30:00 Deltaplex indeed :) 16:30:00 i have nothing to do but make specification... Jesus, how is it possible that interpreter is already made? 16:30:51 is there anyone make a Switch interpreter in python? i have no C interpreter 16:31:05 hmm. funny 16:31:34 Gs30ng: how about using Dev-C++? 16:32:23 tokigun: give me that 16:32:26 BAAAAAAAAAAABAAAAAB prints a single A :) 16:32:41 Gs30ng: http://www.bloodshed.net/devcpp.html 16:34:07 int-e: it is forbidden to use same characters in one i/o operation 16:34:22 think about input operation and all characters are A 16:34:44 so? undefined result, what's the problem? 16:34:49 * int-e shrugs 16:35:05 well... 16:35:13 even 'serious' languages like C++ have no problem with undefined results :P 16:35:28 Aardwolf: how about many surfaces? 16:36:07 do you mean SDL surfaces? 16:36:10 yes 16:36:17 why? 16:36:28 hmm 16:36:46 i don't like 8 by 8 font :) 16:37:04 it's better than dull console output :) 16:37:08 int-e: would there be no problem? are you sure? ok then i'll allow it 16:38:14 i thought how not to use font... and i thought bliting surface. 16:38:18 well, the problem is maybe that you'll get programs that work on one implementation and not on another because they exploit that fact, but from the point of view of a specification I see no problem with simply stating that the result is undefined. 16:38:32 s/thought/found/ 16:39:25 ? 16:39:34 eh... 16:40:15 i want it to be turing complete! is there no way to do that without adding an instruction? 16:40:38 i mean if we didn't use internal font, we have to blit in order to print some string. 16:40:41 allow infinte programs and use an infinite character set. 16:40:53 then it is turing complete? 16:41:11 I'd expect it would be, but it wouldn't be practical. 16:41:17 in my recent projects I use opengl to draw bitmap fonts :) 16:41:29 int-e: btw, nice to see another fellow brainfuck fan here. ;) 16:41:34 Aardwolf: hmm... 16:42:06 imagine, Deltaplex, allowing you to draw 3D opengl shapes... 16:42:14 woah 16:42:22 sounds good... :) 16:42:40 maybe I should give it a go :) 16:42:44 i can see shapes.. 16:42:49 yes 16:42:53 you must go!!!! 16:43:02 i mean 16:43:05 give it a go 16:43:08 ok *leaves* 16:43:12 :) 16:43:12 :) 16:43:16 :) 16:43:45 that'd be something never seen before.. 16:43:48 -!- GregorR-W has joined. 16:43:53 My home network is down >_< 16:43:56 like esolang that uses 3d shapes as "output" 16:44:01 :( 16:44:06 then where are you? 16:44:09 "work"? 16:44:10 At work. 16:44:11 Yeah 16:44:17 :) 16:44:29 piet 3D? 16:44:31 And unfortunately, since my home network is down, I can't send you egobf-0.7 :( 16:44:35 Keymaker: still writin' things down? i'm really interested 16:44:40 yeah 16:44:43 wait a bit 16:44:45 piet is the best :D 16:44:50 :p 16:45:04 Umm, wouldn't Piet 3D take 3D /input/? 16:45:05 hmm, it suffers from underspecification at one point. 16:45:14 so there are incompatible interpreters :( 16:45:24 what's that 16:46:12 what's what? 16:46:40 tell me more about it 16:46:47 that underspecification thing 16:47:23 Aardwolf: is there an instruction for accessing the nth stack item? 16:47:31 well, it means that some behaviour is not well-defined (but in that case it's not obvious that this is indeed the case) 16:48:18 i'm aware of only one problem 16:48:26 about nearest C 16:48:36 there are basically three ways to deal with that: a) forbid the situation b) allow the situation but say its behaviour is undefined c) refine the specification so it fixes the behaviour. 16:48:49 you said the next nearest C takes precedence 16:48:52 or wrote 16:49:06 no i mean 16:49:16 when a control is transfered to C 16:49:17 int-e: that's why is there no division instruction in Versert. 16:49:31 should we 'switch' C? 16:50:02 or not, considering it as a label? 16:50:38 Gs30ng: takes a bit more time, i'll thing some stuff again. 16:50:44 *think 16:50:52 Keymaker: take your time 16:51:07 ok.. see you in 30 years :) 16:51:41 * Gs30ng walks into the refridgerator 16:51:42 right now my implementation would toggle C (assuming it's not actually part of a NAND or I/O instruction) 16:51:49 does anyone here now how to do an intersection test on a 4 dimensional fractal ? 16:51:59 but yes, that's not really clear either and should be specified. 16:52:53 grhh. i can't concentrate when listening trance. better listen some schranz. 16:53:07 i think we should not switch it... it's a label. 16:53:17 jix: BTW, are your benchmarking results posted somewhere? 16:54:10 but the backward C must be toggle at least once... 16:54:14 s/toggle/toggled 16:54:29 it really obfuscates me 16:56:26 it's your language. try '[...] will jump to the operation immediately following the nearest C' 16:57:47 it collides with my design goal of Switch 16:58:07 i want all switches be impartial 16:58:20 like, you write a code 16:58:31 and replace all A to B and B to A 16:58:35 it'll still work 16:59:03 * int-e does not see why that's a problem here. 16:59:26 sorry i think i misread you 17:00:08 i thought [...] is a specific character 17:00:28 * Gs30ng bumps his head against the wall 17:01:30 * int-e sees the wall crumble to dust. 17:02:06 :( 17:03:09 I clearly joined this conversation too late, the logs are completely not helping me understand this language. 17:03:35 and wiki isn't, either? 17:03:55 Sorry! The wiki is experiencing some technical difficulties, and cannot contact the database server. 17:03:56 Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) 17:04:03 oh i see that too 17:04:13 So no, it isn't helping much ;) 17:04:46 Hmm ... chatzilla has a really strange ;) icon .... is that his eyebrow or a tiny beret? 17:05:56 well... can you point the thing that you can't understand or you don't get the language wholly? 17:06:22 I just wholly don't understand the language, but then again I'm not devoting my attention to it, what with the being at work :P 17:07:05 then you can re-check the wiki later 17:07:10 GregorR-W: yes on http://www.harderweb.de/jix/langs/brainfuck/result2.txt but they are 2 days old 17:07:49 Heheh, need to add egobfc2m, it will rox0r their s0x0rzzzz. 17:08:14 hehe but i have bf2a 17:08:26 actually i'm too tired to explain the spec 17:08:37 However, I find it a bit strange that my times for egobfi-vs-everybody-else are significantly different ... 17:08:46 you gotta chill out gregor! "all work and no play makes Gregor a dull boy" 17:08:54 lol 17:09:01 * GregorR-W drinks more coffee. 17:09:04 -!- graue has joined. 17:09:06 :) 17:09:06 NO CHILL FOR GREGOR!!!! 17:09:56 GregorR-W: its 0.2 not 0.3 in the test 17:10:05 Ohhhhhhhhhhhhhhhhhh 17:10:09 jix: appearantly not, there's one to roll down the nth value, but then it's removed form it's position 17:10:28 ok 17:10:47 I will think about this if I ever make deltaplex :) 17:12:05 ok here's the problem 17:12:11 a program like this 17:12:20 user inputs values 17:12:29 computer records it 17:12:31 user inputs values again 17:12:34 computer records it again 17:12:42 repeat until user inputs 0 17:13:40 ...this is impossible in Switch, unless infinite switches are wrote in the code 17:13:57 Switch? 17:13:59 right. 17:14:08 and maybe this is related to the problem that jix told me 17:14:48 having unlimited storage is a weaker requirement than turing completeness. 17:15:11 well... 17:15:38 you're right 17:15:42 and necessary to achieve turing completeness, so that's part of the problem. 17:16:18 i thought some solutions but no good and minmal one is among them 17:18:00 graue, it's an esolang being developed my me and people here 17:18:17 s/my/by 17:19:54 cool 17:20:05 hmm. associate a stack (initially filled with infinitely many zeroes) with each switch and add an ABAB operator which pops one item off A and pushes it on B 17:20:07 like, just today? 17:20:59 well i thought about it alone for about 2 weeks 17:21:17 and told people here about it today 17:21:28 that's an idea but I admit that it changes the language in a fundamental way. 17:21:39 so I'm not sure if I like it. 17:22:21 you're right 17:22:29 and i don't want any stack or something 17:22:38 the infinite stack idea isn't new either, it was used in ... hmm ... what's that reversible calculation language again, kayak? 17:22:57 i want only switches to be the storage 17:23:25 but you need a way to access arbitrarily many switches. :( 17:23:29 Sorry! The wiki is experiencing some technical difficulties, and cannot contact the database server. 17:23:48 if it's not, it's not the Switch programming language that i invented. it'll be like... Switchoid or something 17:24:45 what about this 17:24:46 well, you need that way to allow one to write interesting programs without limitations - a finite program that reverses its input, say. 17:25:03 * int-e wonders how that 'way' got there. 17:25:30 * GregorR-W sneaks off with his bag full of misplaced words snickering. 17:25:44 each character has a numeric value in unicode, right? 17:26:04 yes 17:26:09 and we can make that value by toggling or NANDing the switches 17:26:17 * int-e glares at GregorR-W 17:26:34 * GregorR-W laughs maniacally the at int-e :) 17:27:05 I'll remember that, GregorR-W. 17:27:12 Gs30ng: yes 17:27:26 so adding instruction that takes several letters(probably 8 or 16 letters) and toggling the switch that 16 letters point 17:27:35 will solve this problem... 17:27:37 ...right? 17:29:11 s/toggling/toggles 17:29:35 hmm, just toggling it won't be enough, you need a way to test it, too. and 16 letters give you 2^16 addresses, you'll probably want more (32 should be enough for most 'practical' purposes. for theoretical purposes, this still isn't enough - it's still a (big!) finite state machine) 17:30:19 (keep in mind that from a theoretical point of view, every existing computer is basically a very big finite state machine) 17:31:05 unless you're a theoretical physicist. hehe ... 17:33:04 i remember that to be turing complete FSM needs 2 stacks 17:33:31 yes 17:33:33 or one queue, if it has the proper facilities to handle it 17:33:42 or that 17:33:47 and there's one more way.... 2 something enables FSM to be turing complete... 17:33:59 unlimited integers 17:34:03 two memory cells with bignums 17:34:14 although that construction is quite evil 17:34:36 It would be mind-bogglingly difficult to actually DO anything, but yeah, that's turing complete XD 17:34:55 you can have a Turing-complete machine with one register of unlimited integers 17:34:56 use a bignum to represent 3 bignums in the form 2^a*3^b*5^c ... 17:35:02 graue: one memory cell with bugnum und mul + div + divtest 17:35:06 yes 17:35:31 well, the usual computational basis is inc and dec+test 17:35:45 wiki works now 17:35:52 then you need 2 bignums to implement div+divtest+mul on top of that 17:35:55 graue, http://www.esolangs.org/wiki/Switch 17:36:46 oh 17:37:01 you're already participating 17:37:02 thx 17:41:27 with maintaining the concept that 'no specific character' thing, it's too hard to accomplish the turing completeness with minimal spec/instructions/operations. 17:42:26 * tokigun go to sleep 17:42:36 -!- tokigun has quit ("zzz"). 17:55:16 int-e, your interpreter in C takes 8 letters when I/O? 17:55:29 no, 16 17:55:39 I was faithful to the specification in that respect 17:55:57 but it just truncates the characters to 8 bit for output 17:56:23 and LSB is still last one of 16 letters? 17:56:26 or 8th letter? 17:56:27 yes 17:56:29 16 17:56:32 ok 17:56:48 then first 8 letters are ignored? 17:56:53 indeed 17:56:57 i got it 17:57:15 well, almost 17:57:44 I test the whole 16 bits for 0 to check for the input operation 17:58:03 and the input operation sets the corresponding switches to 0 (well, ok, that's a no-op) 17:59:46 i don't understand it 18:00:21 Gee, my humble english... :( 18:01:22 My code converts the whole 16 bits to a number 18:01:40 decimal? 18:01:46 checks this number for zero. if it's not equal to zero, it truncates the top 8 bits and outputs that character 18:02:00 and if zero? 18:02:18 if it is zero, it inputs a (8 bit) character and converts its value back to 16 bits 18:02:58 still we don't have unicode here but useful enough to test 18:03:08 yes, that was the idea 18:03:29 shoot me that A-priting-switch-code again 18:03:34 it wasn't meant to be a full-fledged implementation 18:03:56 s/priting/printing 18:04:14 BAAAAAAAAAAABAAAAAB 18:06:09 well 18:06:21 that code receives only 15 characters 18:06:33 16 characters after AAA is needed 18:10:39 oh, didn't count correctly. my thought was that A could as well serve as the first of those 16 bits 18:12:06 so AAABCDEFGHIJKLMNOP would print character ABCDEFGHIJKLMNOP (read as a binary number) ... anyway I can change my program easily 18:12:22 yeah, but that kind of operation is something forbidden in Switch. suppose this: 18:12:51 1. A affects the result of operation, so the programmer want to do this before starting operation: turing on A. 18:13:12 2. Now the programmer tries to start input operation: AAA and something 18:13:22 the code will be like AAAA and something 18:13:31 well, insert a dummy character 18:13:33 A AAA 18:13:49 that's an idea but i don't want there a trash characters in source code 18:14:28 anyway I really counted the letters on that line wrong, I'll change my program 18:14:38 i appreciate that 18:15:04 i haven't followed your discussions, but the version i'm thinking will be probably a lot different 18:15:06 done :) 18:16:29 I 18:16:31 and you know what i'm saying, when the operation is started with AAA or something, the value of A should not affect the operation, because then programmer will try to write A before AAA and it collides and we need some trash characters 18:16:51 I'll be idle for a bit, I'll read and answer that in a few minutes 18:17:23 ...OMG 18:17:45 in AA(nandnp) the value of A affects the operation! 18:17:50 i should change it 18:17:55 AABC -> AABCD 18:18:01 A=B nand C 18:18:17 and D is the target place to jump when 0 18:22:25 ...or like this 18:22:28 AABCD 18:22:36 AA -> just starts nandnp 18:22:44 BC -> B=B nand C. 18:22:54 D -> if B nand C is 0 then jump to D. 18:27:10 ...this is too major change 18:29:47 -!- grimace_ has left (?). 18:30:54 int-e, i'm sorry to bother you but you should change your code 18:31:06 there's a major change in spec 18:33:32 -!- kipple_ has joined. 18:33:35 hey kipple_ 18:33:57 'ello 18:34:30 -!- kipple has quit (Read error: 104 (Connection reset by peer)). 18:44:31 and i still cannot decide the name of this language 18:44:43 i don't like the name Switch 18:49:30 toggle :P 18:50:31 yeag 18:50:35 *yeah 18:50:38 toggle is a lot better 18:50:44 i don't like 'switch' either 18:51:08 i selected 'trigger' for my language 18:51:08 i like switch more than toggle. :( 18:51:14 :\ 18:51:40 Gs30ng: i'll make it a new language.. 18:51:42 flip 18:52:21 Keymaker: Sure you can, but can't you still show me about it? 18:52:28 yeah 18:52:34 flip is an idea 18:52:41 i'll naturally make it public when it's ready :) 18:52:46 yeah, flip's fine 18:52:57 but i'd rather use my hometown language 18:56:34 there is a flip lang afaik 18:56:53 http://esolangs.org/wiki/Flip 18:57:29 ah, didn't know that 18:59:04 Call it BreinFuck 18:59:08 That won't confuse anybody. 19:02:28 it doesn't f*ck brein. :( 19:04:15 Sure it does, Brein isn't a real word, so it can mean whatever you want it to. 19:04:22 ok i decided it 19:06:30 any changes besides the NAND one? 19:07:00 input 19:07:07 i mean, I/O 19:07:12 starts with AAAA 19:07:15 not AAA 19:07:40 oh 19:08:11 One thing I'm confused about, by "AAAA" do you mean "any four of the same letter", or does it actually have to be "AAAA"? 19:08:24 former 19:08:37 Same with nearest-C? 19:08:56 any four of the same letter 19:08:57 if a letter repeated for 4 times 19:09:13 I/O operation will be started 19:09:53 I updated my switch interpreter and fixed a bug as well. 19:11:16 thx 19:11:28 the name of this language is now Udage. 19:11:53 i think you'll wonder what's that 19:11:56 see http://esoteric.voxelperfect.net/wiki/Udage#Udage 19:17:05 new code that prints single A is like BAAAAAAAAAAAAABAAAAAB 19:17:29 add commas to read easy: B,AAAA,AAAA,AAAA,ABAA,AAAB 19:17:38 B turns on the switch 19:17:45 AAAA starts the I/O operation 19:17:49 and... so on 19:17:53 right? 19:17:59 yes 19:18:34 XYYYYYYYYYYYYYXYYYYYX works too :) 19:21:46 before trying to make a code prints "Hello, World!", we need an interpreter with unicode 19:22:01 why? 19:22:31 ...unicode "Hello, World!" and ascii "Hello, World!" have same numeric value? 19:22:48 these are all ascii characters 19:23:16 and the first 128 Unicode values are mapped to ASCII 19:23:46 really? 19:23:59 Yes, Unicode is 100% backwards-compatible to ASCII 19:24:14 really. that's no accident, it's designed that way 19:24:22 ...why have i been thought they aren't? :( 19:24:32 and UTF8 was designed in a way that allows to use ASCII without modifications. 19:24:51 then i'll try hello world 19:25:26 ...or there one among you guys is already trying? 19:25:53 no. I'm not sure how to feed perl's unpack() to generate that code. 19:25:55 ;) 19:26:09 Pff, just write a quick C hack to do it. 19:26:16 no way 19:26:55 for (i = 7; i >= 0; i--) if (inp & (1 << i)) putchar("A") else putchar("B"); 19:27:15 no, you need to start at 15 19:27:19 Whoops, putchar('A') and putchar('B') 19:27:25 This is assuming you just outputted "BBBBBBBB" 19:27:29 What with the ASCII :P 19:27:36 AKA I'm cheating. 19:27:51 actually putchar("A") and putchar("B") are very likely to produce a program that does what you want ;) 19:31:38 BAAAAAAAAAAAAABAABAAAAAAAAAAAAAAAABBAABABAAAAAAAAAAAAABBABBAAAAAAAAAAAAAAABBABBAAAAAAAAAAAAAAABBABBBBAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAABABABBBAAAAAAAAAAAAABBABBBBAAAAAAAAAAAAABBBAABAAAAAAAAAAAAAABBABBAAAAAAAAAAAAAAABBAABAAAAAAAAAAAAAAAABAAAABAAAAAAAAAAAAAAAABABA 19:31:45 May or may not be correct *shrugs* 19:32:13 works 19:32:48 it just seems like a whirl code 19:32:55 well it's missing a comma ;) 19:33:21 here's hello world in Trigger: 19:33:22 HHHeeellllllooo wwwooorrrlllddd!!! 19:33:31 oops 19:33:37 HHHeeelll lllooo wwwooorrrlllddd!!! 19:33:55 Three flips = putchar? 19:33:59 yes 19:34:26 `r`.!`.d`.l`.r`.o`.w`. `.,`.o`.l`.l`.e`.Hi 19:34:27 if there's three same character in row, then putchar(that character) 19:35:10 what do you say: 19:35:29 should the instruction pointer be able to go left and right 19:35:33 or only right 19:36:03 it must be possible to make a loop 19:36:08 it is 19:36:20 this uses the way original switch used (iirc) 19:36:22 aab 19:36:26 -!- BigZaphod has joined. 19:36:56 if there's two same characters in a row (aa) then search the nearest character that is the same than the one after aa (b) 19:36:58 if you have a while() thing, it's ok for instruction poiter to go just right 19:37:19 no, not while() 19:37:27 jumps 19:38:14 if you don't have anything like while(), you need the pointer to jump backward 19:38:15 While = if-jump-back, so if that jump is conditional, then it is while() ;) 19:38:58 doh 19:39:03 well, then there's while :) 19:39:18 Keymaker, i don't get your lang :( 19:39:32 well, i'll tell it shortly: 19:39:50 A = NOT(A) the 'A' trigger 19:40:11 AAB = if A is 1 then search for nearest B left or right 19:40:22 if A is 0 then just go on and do nothing 19:40:45 So how do you do binary (that is, two operands) logical operations? 19:40:48 after jumping from some place to another, the trigger isn't flipped 19:41:02 wait 19:41:05 -!- fungebob has quit ("Today is a good day to chat."). 19:41:16 and when there's three same, like EEE, then print 'E' 19:41:25 If today is such a good day to chat, why are you leaving? 19:41:32 GregorR-W, late 19:41:32 and if there's four same, like BBBB then make it remove BBBB from code when executed 19:41:35 AACBC <- toggle B if not A 19:41:48 yeah 19:41:59 i was just going to say something like that 19:42:10 Hmmmmmm ......... 19:42:17 i don't get your language 19:42:19 and there is it 19:42:19 I don't think toggle-b-if-not-a is powerful enough ... 19:42:20 :) 19:42:27 well, who cares 19:42:32 this isn't a tar-pit 19:42:34 Turing, that's who! 19:42:35 :P 19:42:38 when AAB 19:42:42 hmm. it 19:42:47 the value of A affects the operation 19:42:48 :) 19:42:49 it's basically an xor, right 19:42:52 cheers int-e 19:43:12 the value of A affects to AAB operation 19:43:21 if A is 0 that thing will be skipped 19:43:33 spaces are ignored? 19:43:37 no 19:43:41 or identified? 19:43:45 then... 19:43:46 yes 19:43:47 but AAXBBYCXY basically toggles C if not A and not B ... we need a way to set some value to 0 19:43:53 space is just another trigger 19:43:57 AAXAXA ... like this 19:44:36 the programmer will try to set A before trying AAB, because it affects the operation 19:44:43 then the code will be like AAAB 19:44:52 that would print 'A' 19:44:58 that's the problem 19:44:59 you need to do A.AAB 19:45:01 for example 19:45:06 that dot is trash 19:45:08 add some other character between 19:45:09 yes 19:45:17 we need a lot of trash in this language 19:45:20 it's just another trigger that isn't used in the code 19:45:21 yes 19:45:34 no, one trash character is enough, and a few for labels 19:45:45 ah 19:45:49 labels are the real issue actually 19:45:50 int-e, that one trash character will appear a lot 19:46:01 who cares? 19:46:05 i like this :) 19:46:19 and besides, you can use new-line as a trash character 19:46:25 it doesn't make the code look too bad 19:46:37 A 19:46:38 AAC 19:46:41 etc.. 19:46:42 i don't thinks so 19:47:16 s/thinks/think 19:47:17 you can just comment your code, I like that 19:47:30 > ./a.out hello.sw 19:47:31 Hello World! 19:47:31 > cat hello.sw 19:47:31 Hello, world! 19:47:31 BAAAAAAAAAAAAABAABAAAAAAAAAAAAAAAABBAABABAAAAAAAAAAAAABBABBAAAAAAAAAAAAAAABBABBAAAAAAAAAAAAAAABBABBBBAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAABABABBBAAAAAAAAAAAAABBABBBBAAAAAAAAAAAAABBBAABAAAAAAAAAAAAAABBABBAAAAAAAAAAAAAAABBAABAAAAAAAAAAAAAAAABAAAABAAAAAAAAAAAAAAAABABA 19:47:38 some operations that deeply related to each other will be divided in 2 line 19:47:45 (ignore the missing ,) 19:47:49 hmm. 19:47:58 didn't get your commenting stuff int-e 19:48:06 and another operations that has no relation will be stuck 19:48:12 just add some comment in the middle of your code 19:48:21 like the Hello, world! line at the start of hello.sw 19:48:22 ;) 19:48:24 you mean like a.aa# This code is written by me. # 19:48:46 That's something same with Udage 19:49:18 int-e: do you think self-removing sequence FFFF is necessary? 19:49:26 should i keep it there? 19:49:32 what's that 19:49:42 it's like... 19:49:46 AAB operation? 19:49:49 here's example: 19:50:10 (wait, takes a bit time to make it up) 19:50:16 FFFF, then do an operation between F and F, then the result is always 0 19:50:27 then it goes to F 19:50:29 no 19:50:34 this language doesn't work that way 19:50:52 if there is only one character F, it does the flip 19:51:01 then why do we need self-removing FFFF 19:51:05 before that the interpreter checks if there's two F's in a row 19:51:10 or perhaps three or fours 19:51:25 i think it's handy 19:51:41 but that's why i asked int-e if he thinks it's necessary 19:51:51 why do we need self-removing FFFF? 19:51:54 wait 19:52:01 i'll write an example :) 19:52:03 i need a quick summary. F toggles, FFL is a conditional jump, what else was there? 19:52:19 DDD prints 'D' 19:52:26 ah. 19:52:33 and EEEE would remove 'EEEE' from the program 19:52:34 Keymaker, what about input 19:52:38 none yet 19:52:48 that's a question i was going to ask here soon 19:52:49 * int-e thinks 19:52:57 good, saves me from thinkin' ;) 19:53:00 * Gs30ng thinks 19:53:04 :) 19:53:08 I don't see why you'd need that 19:53:13 yeah 19:53:15 me too 19:53:22 i've thought that as option as well 19:53:39 in fact, when i started working on the language i thought i'll make it non-input one 19:53:59 perhaps that's what i'll do, i can't find any elegant way storing input 19:54:16 you can always introduce a special switch that reads a bit from input 19:54:19 if you really need it 19:54:23 no 19:55:00 one way could be to make for example EEEEE to store a bit from input to E 19:55:26 or that 19:55:32 i can't like this language because of trash letters, but it could be more handy than Udage 19:55:51 well, everyone's got their own opinions :) 19:55:56 i have never heard of udage 19:56:04 well, you have trash letters anyway in the moment that you introduced labels. 19:56:11 new name of Switch 19:56:13 Udage is 19:56:16 ah 19:56:40 int-e: me? 19:56:50 Keymaker: no, Gs30ng 19:56:51 ah 19:57:00 you can get more info about the name at http://www.esolangs.org/wiki/Udage#Udage 19:57:11 ok 19:57:22 I'm not worried about trash letters 19:57:43 me neither 19:57:52 then aren't trash yet 19:58:17 but in real coding in Udage they probably would be trash 19:58:27 well, leave eliminating trash letters as an exercise to the coder then. 19:58:54 noone codes in esolangs because it's simple. 19:58:56 instead of trash letters, what about this 19:58:56 int-e: so, do you think FFFF would be useful? 19:59:17 no. it's weird, and it's not reversible. 19:59:21 interpreter interprets 4 letters in a time 19:59:22 yes 19:59:26 ok 19:59:28 or 3 letters or something 19:59:42 int-e: do you think that should be replaced by "get one bit from input"? 19:59:43 I think not being reversible is the real issue. it won't be useful in a loop. 20:00:00 that would certainly be more useful 20:00:04 ok 20:00:12 the language is done, then 20:00:26 it's not done 20:00:33 since Udage isn't done 20:00:39 it's not Udage 20:00:41 well, this is done 20:00:43 yeah 20:00:44 suppose this 20:00:45 it's Trigger 20:00:48 it's more like brother-of-Udage. 20:00:52 user inputs 20:00:55 computer records 20:01:03 repeat until user inputs 0 20:01:21 not many esolangs can access hard drive (thanks heaven) 20:01:27 this won't be able to do that either 20:01:35 this has user inputs and repeat until user inputs 0.. 20:01:36 i haven't mentioned hard drive 20:01:39 ok 20:01:41 Trigger is not supposed to support infinite storage or be turing complete 20:01:45 I think 20:01:46 yes 20:01:49 you're right 20:02:11 if you are to repeat 20:02:28 you need a switch(right? or trigger) for a time 20:02:43 32 times repeat, 32 triggers are needed 20:03:00 yes, probably 20:03:51 but notice, this language is not meant to be a turing-complete 20:03:59 of course it isn't 20:04:10 therefore i don't really care if repeating needs so much work 20:04:13 etc.. 20:04:36 but with a little addition it can do that, i think, although i don't know how 20:05:41 i think it would require changes in the data storage stuff 20:05:42 not sure 20:06:26 oh, what i forgot to say that when searching the nearest trigger, and if there's two triggers, one on left and one on right, then it will be random which one to choose 20:06:41 so, there's small in-built randomness if user wants that 20:06:42 whoa 20:06:52 that's an idea 20:07:12 what i meant to say there as well, is that 20:07:24 that only happens if both the triggers are as far from 20:07:37 the instruction sequence (for example "AAB") 20:07:42 it can be adopted into Udage 20:07:49 random choice 20:07:53 feel free 20:07:59 i like random in languages 20:08:12 Keymaker, how can you get that kind of splendid idea? 20:08:23 well, no idea 20:08:34 probably because i was thinking "should it go left or right" 20:08:54 then "i can't decide".. "hey, i'll just make it random so i don't need to decide!" 20:09:13 well i'm thinking 20:09:29 [although deciding it to be random was itself a decision] 20:09:59 i can apply that to nearest D toggle problem 20:10:19 yes 20:10:26 yeah 20:10:44 and esolang wiki's dead again 20:10:44 :( 20:10:48 :( 20:10:59 int-e: you have time to write an interpreter..? ;) 20:11:28 i would do that myself but i can't really 20:11:40 Keymaker, before that why don't you confirm a specification and unveil it 20:11:53 yeah, that's what i should do 20:12:02 I was going to say: Gimme a spec. :) 20:12:05 ok 20:12:10 i'll write the spec first 20:12:13 :o) 20:15:17 Udage will take a lot more time to decide the spec, because of my desire to be turing complete 20:15:23 but Trigger doesn't, right? 20:15:58 so Trigger will make it's spec earlier than Udage 20:16:06 this is fun 20:17:46 original comes after one originated from it 20:17:58 :) 20:18:05 yes 20:18:07 :) 20:18:25 oops 20:18:29 do you want the name 'Gs30ng' to be credited or want me to use some other name? 20:18:55 as you wish 20:18:59 sorry i gotta go 20:19:00 ok 20:19:04 bye 20:19:19 it was amazing conversation 20:19:25 all you guys really helped me 20:19:25 bye Gs30ng 20:19:32 thanks a lot again 20:19:34 glad to help :) 20:19:44 -!- Gs30ng has quit ("quits"). 20:41:17 -!- graue has quit ("Donate a manual typewriter to ME for your only hope for a future!"). 21:25:52 If you write an interpreter in BF, you can use egobfi32 -unicode on to run it and get your unicode 8-D 21:26:20 (Then the only hard part is ... well, writing the interpreter in BF) 21:26:56 right 21:27:28 But heck, compared to s/char/wchar/, that's easy :P 21:30:11 Oh hey! int-e, do you happen to still have egobf-0.7.tar.bz2? I want to upload it elsewhere since my network at home is screwy. 21:31:10 I think I do 21:31:34 Could you email it to AKAQuinn@hotmail.com ? 21:32:18 get it at http://www.inf.tu-dresden.de/~bf3/egobf-0.7.tar.bz2 21:32:29 I'll remove it afterwards 21:32:30 Ah, that works - rescue #3, you rock :) 21:32:54 Got it. 21:35:34 http://www.codu.org/egobf-0.7.tar.bz2 21:41:00 -!- calamari has joined. 21:41:14 hi 21:42:22 Hoi calamari 21:43:31 how's it going hat-fiend? :) 21:43:54 11 now. 21:44:01 Oh, I still haven't posted a picture of me in the fez. 21:44:07 Thank you for reminding me ;) 21:44:12 haha 21:44:28 My randomizer told me to wear the fez tomorrow, so I'll have the opportunity. 21:46:09 :) 21:46:18 yeah, i noted you about that in your guestbook 21:46:29 (that you should update your hat gallery) 21:46:42 Not that I ever read my guestbook :P 21:47:46 I also need to update the music page, and update the ORK page. I'm really just not much for updating my web pages :P 21:48:17 yeah, I need to overhaul my webpages too.. not standard compliant 21:48:49 My main page is actually finally 100% compliant, just fixed it recently. 21:48:57 I keep waiting until I write a program that will build the pages for me.. 21:49:07 hehe 21:49:13 other projects always seem like more fun than that ;) 21:49:48 The lazier I get the more pages I make run Giki. 21:50:18 Even if I don't let other people edit, it's still quicker than muddling with the HTML/PHP/CSS/etc. 21:58:30 that's actaully not a bad idea 21:58:54 perhaps a giki where the editing isn't visible without a special tag 21:59:44 one of the things I've wanted is an auto site-map builder 22:07:58 * GregorR-W smells a GikiPlugin ;) 22:16:52 plugins must be very powerful if such a thing is possible via a plugin 22:17:17 -!- Aardwolf has quit ("Leaving"). 22:17:34 It is. 22:17:39 GikiPlugins are super-powerful. 22:17:43 RecentChanges is a plugin. 22:17:59 Plugins switch between HTML, WikiSyntax and BBCode ... 22:18:45 FCKeditor is in a plugin. 22:18:55 * GregorR-W is searching for all the particularly powerful plugins :P 22:21:24 http://giki.sourceforge.net/edit.php?title=Downloads# 22:22:11 Yes, the SourceForge element is a plugin too, but not particularly powerful :P 22:22:17 clicking WikiSyntax shows a help page, but it doesn't seem to render correctly.. is this a bug? 22:22:34 Yes it is, however it's a known bug. 22:22:47 I switched the page to CSS instead of tables, and that got screwy. 22:23:09 oic.. 22:23:44 However, I switched the default template too, so the default template is broken 8-D 22:26:02 (Only if you have the Subwindow rendering plugin) 22:41:51 phew.. i'm almost ready with trigger specs 22:41:52 i think 22:44:32 o_O 22:47:22 :) 22:47:32 now i'm trying to find some good quote 22:47:42 Come ooooooooooooon, write an interpreter in BF :) 22:47:54 All the cool kids write their interpreters in BF. 22:47:59 yes 22:48:04 but i never was kool kid 22:48:10 lol 22:48:31 :) 22:48:51 actually bf interpreter for this language wouldn't be that hard 22:53:08 * Keymaker goes to brush teeth 22:57:18 I'll go to bed, see you tomorrow. I'll take a look at those specs then (if I can find them) 22:58:35 ok 22:58:39 i'll post the link here 22:58:45 nite 22:59:04 bye 22:59:05 -!- int-e has left (?). 23:02:49 -!- graue has joined. 23:21:00 TRIGGER SPECS (capitalized so int-e can notice them more easily) 23:21:01 http://koti.mbnet.fi/yiap/trigger/trigger.html 23:21:10 Trigger? 23:21:15 feel free to ask questions and point out the flaws 23:21:20 a new esolangs 23:21:33 read 23:33:13 graue: read? 23:34:08 Ahhh, tense. Wouldn't it make sense if English conjugated tense? It makes me tense, the fence that isn't in the tense in Engl...ense. 23:35:33 ? 23:39:38 well, time to quit if i want to get up tomorrow.. arrgh. when i get home i'm staying up hours later.. 23:39:42 'nite 23:39:48 bye 23:39:55 bye 23:39:57 -!- Keymaker has quit ("Funkadelic!"). 23:42:35 * pgimeno catches up with the backlog and goes phewwww! 23:43:35 the backlog is smelly? 23:43:59 like: phew! I did it 23:44:16 maybe I should have used a different exclamation 23:47:34 whew! 23:48:49 thought I had the item logic worked out for my game.. not good enough tho! 23:50:04 game? what game? are we talking about a game written in an esolang here? :) 23:50:14 -!- kipple_ has changed nick to kipple. 23:50:20 no :( 23:50:47 working on my 2k adventure game entry 23:50:47 too bad ;) 23:50:51 ah yes 23:51:11 kipple would be a fun language for programming games in IF ONLY it had interactive I/O 23:51:29 well, in time it will 23:51:41 or, alternately, if a program could call itself again 23:51:53 with the current o stack as the program's i stack next time 23:52:04 wait, that wouldn't work 23:52:10 now THAT is an interesting suggestion... 23:52:11 I don't know, something like that 23:52:21 why wouldn't it work? 23:52:28 how would you do actual output to the user? or get actual input from the user? 23:52:41 if you could, say, preserve the r stack between executions, that might be something 23:52:48 hmm 23:53:15 anyway, it will all be solved with the next version of Kipple (whenever that will be done.....) 23:54:29 so, calamari, what are you coding the game in? assembler? 23:54:41 yeah 8088 asm 23:54:59 using ms-dos int calls 23:55:14 is the 2k limit on the source code or the binary or both? 23:56:04 for interpreted languages there is a different limit, I think it's 2899 bytes of source 23:56:18 the source doesn't matter for compiled/assembled languages 23:56:42 I can't remember the max binary size, but iirc more than 2048 bytes (which makes no sense) 23:57:17 and you also get an 8k data file 23:58:19 ahh here is the binary number, 2799 bytes 23:59:21 then also, if you really want, you can use 2929 bytes for an interpreted source :) 23:59:45 the rules of the contest are esoteric, at least.. hehe