00:22:10 -!- RoboGregorR has joined. 00:22:17 'ello 01:40:58 hi RoboEgo 01:42:06 what's this? a GregorBot to take care of IRC spamming while the real GregorR works on c2bf? 01:50:26 any opinions on what would be a good name for my esoteric BASIC language? Current candidates are SlowBASIC and Occult Basic 01:54:35 Occult Basic... is it secretive? 01:55:03 or mysterious? 01:55:17 occult is the opposite of visual. 01:55:32 I suppose occult is roughly esoteric :) 01:56:26 so yeah.. Occult Basic sounds good :) 01:57:13 * calamari notes that another layer of complexity has now been heaped upon the crypto project 01:58:09 I decided that it wasn't cool to send the passwords in the clear across IRC.. so now I also need to implement a public-key system to securely transport the hash 02:00:36 yeah, that might have been a small security issue... 02:00:52 (though I have no idea what this crypto project is about) 02:01:25 well, its usefulness decreases each time I add onto it :) 02:01:45 but, the way it started 02:02:15 EsoBot doesn't send private messages to anyone except the person that ran the program 02:02:40 but, certain multiplayer games require secret information (what cards you have, for example) 02:03:13 so, the challenge is to be able to play these games inside the channel 02:03:25 ah 02:03:26 I see 02:04:40 right now, it'll work something like: 1) use a local program to get a hash (probably an esolang), 2) securely transfer the hash to the game using public-key crypto, 3) the game sends hash-encoded data to the channel (along with who its for) 4) decrypt locally 02:05:11 I was hoping to use esobot for everything, but its just not secure that way 02:05:49 and yes, of course its overboard :) hehe 02:06:21 afk for a while 02:19:19 lol 02:19:25 I forgot to log out RoboGregorR. 02:19:29 But that's me on the robotics lab computer. 02:21:04 your multiple personality disorder seems to be multiplying... ;) 02:21:11 Indubidably. 02:21:45 so, what's the deal? do each hat come with a different personality? 02:21:45 BTW, does anybody know what this means in C: 02:21:54 struct { int a : (expression); } 02:22:06 Nah, then I'd have 12. 02:22:19 GregorR = my desktop 02:22:24 GregorR-L = my laptop 02:22:27 RoboGregorR = robotics lab 02:47:46 That's a bitfield. 02:48:05 Means the integer "a" is exactly (expression) bits wide. 02:48:33 Or, more exactly, you are to use it as if it were (expression) bits wide. 02:49:11 A single bit-field in a struct does not make sense, but if you have many of them, the compiler can pack them to a single byte/word/dword/qword/whatever-unit-it-prefers. 02:50:44 Arguably "struct { int flag1 : 1, flag2 : 1, flag3 : 1 } ... if(foo.flag1) { foo.flag2 = 1; foo.flag3 = 0; }" is cleaner-looking than "#define FLAG1 0x01 #define FLAG2 0x02 #define FLAG3 0x04 struct { int flags; } ... if(foo.flags & FLAG1) { foo.flags |= FLAG2; foo.flags &= ~FLAG3; }" 02:51:13 Oh, I see. 02:51:25 Obviously there are drawbacks too. You can't really have treat bitfields as groups and have bitmasks with multiple set bits. 02:52:49 That's not going to be supported in C2BF for a LONG time ^_^ 03:04:12 Actually, ever, since we don't even know the bitwidth of a cell *shrugs* 03:05:55 btw, what prompted the insane thought of c2bf? :) 03:06:34 A few days ago is not the first time it's been brought up on c2bf. 03:06:35 Err 03:06:37 *on #esoteric 03:06:49 nope.. I brought it up a long time ago myself 03:06:57 I meant for you to start working on it :) 03:07:01 And I know it's been brought up a few times between then too ;) 03:07:02 why? :) 03:07:11 Well, I'm doing a ridiculously easy compilers class right now. 03:07:14 oic 03:07:19 So, to keep my brain from melting, I'll do a side project. 03:07:21 A real compiler. 03:07:38 Not a pseudocompiler in a crappy programming language for an even crappier programming language written with a crappy compiler-compiler. 03:09:39 OMG, LL(1) compilers rawx0r, they're so awesome I need a program to write them for me even though they're simple, roflcopter! 03:10:57 GregorR: sounds like you're enjoying class ;) 03:11:06 Yeaaaaaaaaaah >_< 03:11:18 I'll be taking that class next semester 03:11:30 * kipple ponders what the guy who came up with the word roflcopter had been smoking 03:11:35 Heh 03:11:43 so then maybe I'll get some bfbasic work done in a similar manner :) 03:38:48 -!- RoboGregorR has quit. 03:45:26 -!- CXI has quit (Connection timed out). 03:50:36 By the way, did the BASIC version of BFBASIC ever compile under BFBASIC? 04:15:18 -!- Sgeo has quit. 04:15:36 -!- kipple has quit (Read error: 110 (Connection timed out)). 05:21:09 I've reduced XTEA to four lines of Linguine :) 05:21:22 GregorG: re: BFBASIC: nope 05:22:29 -G+R heh 05:22:34 lol 05:22:42 My last name is now Gichards. 05:22:45 That's a pretty awful last name. 05:23:07 Or maybe my last name is Gregory ^_^ 05:23:27 Anyway, an ultimate goal of C2BF is to compile C2BF with C2BF :) 05:23:41 To that end, each component is going to be pipe-style except for the wrapper. 05:24:00 that's a good goal 05:24:19 to make your life possiobly easier, you might consider implementing a subset of c 05:24:38 then, using that subset, build a more complete c 05:24:55 That's precisely what I'm doing. 05:25:06 The AST is set up in such a way that certain chunks could be implemented before others. 05:25:28 have you seen the ioccc c compiler? 05:25:36 Hmm, never 'eard of it. 05:25:57 Oh. 05:25:59 http://fabrice.bellard.free.fr/otcc/ 05:26:00 That IOCCC :-P 05:26:05 Oh, that compiler XD 05:26:09 Yeah, I've seen it :-P 05:26:31 although the compiler is hard to understand.. it's probably a good subset to work with 05:26:52 (since it can compile itself) 05:27:33 Right. 05:27:44 Well, I'm starting with a much, much, MUCH smaller subset ;) 05:27:49 lol 05:28:02 The first thing I want to try is: 05:28:11 int main() { asm("{some BF code}"); } 05:28:23 I can think of a subset that directly compiles to bf :P 05:28:57 I don't think you could do a subset of C with no function support ... 05:29:01 while(...) { ... } 05:29:06 It wouldn't be a proper subset. 05:29:08 nope you couldn't 05:29:20 oh well.. hehe 05:29:46 are you using a stack for args? 05:29:58 Yeah 05:30:07 nifty 05:30:15 do you have my 2-cell array routines? 05:30:25 Umm, probably? :-P 05:30:31 I've implemented nothing BF-wise yet. 05:30:34 the only other array routines I've seen are 3-cell 05:30:37 I'm STILL working on the bloody AST. 05:30:57 Oh, well, arrays in C are too different from traditional arrays to use quite any given routine ... 05:31:08 oh.. sorry 05:31:18 Because it is absolutely imperative that they be implemented as a pointer. 05:31:27 So *(a + 1) == a[1] 05:31:28 I'm assuming array = memory 05:31:32 But the pointer math has to work as pointer math. 05:31:33 Yeah. 05:31:53 -!- CXI has joined. 05:31:54 hmm actually, my arrays wouldn't be suited 05:31:56 So to jump through it, you have to find the base location, do some math on that, and then jump to the specified location. 05:32:24 jumping to a specified location in memory isn't trivial with bf 05:32:41 It is when you have a quick way to get to 0 :) 05:33:03 And yes, I do realize that that's disgusting in its own right ;) 05:33:15 omg.. you are going to store bits 05:33:29 ........................? 05:33:31 No? 05:33:34 then I dont follow 05:33:44 because you will need to index into the array 05:33:52 The setup of the tape: 05:34:10 {stack^4} {heap^4} {stack-top} {walk^5} {carry^5} 05:34:11 and the index will need to be >255 05:34:13 (repeated) 05:34:16 Ohhhhhhh 05:34:19 Yeah, there's that problem. 05:34:36 my array routine is able to wall a 255 element array 05:34:41 There are routines for multi-cell math. 05:34:41 err walk 05:34:53 so you will need to define the size of a pointer 05:34:54 I still have a maximum. 05:34:56 But it's 32-bit. 05:34:57 Yes. 05:35:08 That's an absolute requirement for C. 05:35:10 It's unavoidable. 05:35:19 can't be 16 bit ? 05:35:32 err, I suppose not for large programs 05:35:57 * calamari compiles linux on c2bf 05:36:05 It could be 16-bit, but why? :) 05:36:14 because it'd be a lot efaster 05:36:30 unmless your compiler was good at keeping the numbers small 05:36:31 Hmm, certainly true :-P 05:36:47 even [-] on a 32-bit number would be a nightmare, much less walking an array 05:36:48 Well, it always builds up from 0. 05:37:11 [-] on a 32-bit number: [-]>[-]>[-]>[-] 05:37:30 ^_^ 05:37:36 well, that's true 05:37:46 I know what you mean though ;) 05:37:47 but you might as well consider it all in one cell 05:37:59 hmm.. unless 05:38:30 you could have routines that contain a huge amount of >'s 05:38:43 but that would mean huge code bloat 05:38:52 so nevermind hehe 05:39:07 Umm, I don't quite understand your suggestion ... 05:39:14 A chunk of code doesn't know where it is in the stack .. 05:39:46 it's bad anyways 05:40:12 the other way to go with this is using a "nice" bf interpreter 05:40:25 so that it handles 32-bit cells 05:40:52 Yukk ... being interpreter-specific = bad. 05:41:08 Though I could also compile to one-cell stuff then say "If you want it to be 32-bit, you'll need a 32-bit interp" 05:41:09 sounds like you have a plan :) 05:41:33 well.. what about a compiler from 32-bit cells to 8-bit 05:41:43 wonder how hard that'd be 05:42:03 Hmmmmmmmmmmmmmmmmmmmmm 05:42:08 That's very interesting ... 05:42:12 A two-stage process ... 05:42:21 there are already interpreters that do that thing for 16->8 05:42:34 Ironically, that would probably be easier than doing the 32-bit math in the first step ... 05:42:38 Err, 4-cell math 05:42:45 yeah I think it would be 05:42:59 because it's already been done for you ;) 05:43:14 my array routines work fine with arbitrary cell size 05:43:30 No, I don't think it would be acceptable to say "you have to run it through this other BF program" 05:43:39 It would have to be a program that turns one-cell code into two-cell code. 05:43:55 oh, you wouldn't have to do that 05:44:13 Why not? 05:44:16 the part where your program would exit, it instead just runs the 32->8 05:44:27 so it's two step but all in the compiler 05:44:36 Yeah, that's what I'm saying. 05:44:47 But the 16->8 program I thought was just a BF interp in BF ... 05:45:07 yeah, but that's not what is wanted 05:45:24 just similar 05:45:43 I think we're saying the same thing :) 05:45:50 Yes, I'm certain we are ;) 05:46:03 Basically, I need a list of transformations to turn 1-cell math into 2-cell, 4-cell, etc, math. 05:46:18 Or I could run it through 1->2 twice :) 05:46:18 right 05:46:49 well, probably nest to just hardcode one-cell (32)->to 4-8 05:46:53 best even 05:47:08 Oh yeah, definitely. 05:47:09 the others aren't really needed, are they? 05:47:16 or would it be handy for shorts 05:47:19 It would be nice to have different levels supported. 05:47:26 But not necessary. 05:47:26 ok 05:47:57 It'll slightly break the spec for max(unsigned char) != 255 ... 05:48:07 But I don't think it's such a significant issue that I'm worried. 05:48:16 are you relying on cell wrapping? 05:48:24 I don't see how I couldn't. 05:48:31 Given that I don't know how big the cells will be. 05:48:32 because that's implementation dependent as well 05:48:42 But the standard is wrapping. 05:48:43 well, you can assume cells are 8-bit 05:49:05 err bf cells I mean 05:49:18 How many non-wrapping interps are there...? 05:49:25 bfgolf 05:49:30 dunno of any others 05:50:04 I'm pretty sure everything can be done and stay non-wrapping 05:50:13 Woah, WTF, bf-golf requires non-wrapping?!?!?!? 05:50:17 yeah 05:50:22 They go out of their way to make it difficult, don't they XD 05:50:27 I'm sure everything can be done with non-wrapping. 05:50:34 But I'm also sure that it would be far more inefficient. 05:50:53 not denying that at all 05:51:08 of coourse this 32->8 thing is inefficient as well 05:51:18 Yeah. 05:51:26 But sort of more unavoidable .. 05:51:30 always tradeoffs 05:51:40 Humm. 05:51:42 I'd tend to agree with wrapping tho 05:51:59 Err, as in, you'd agree that wrapping is OK/ 05:52:01 *? 05:52:03 but I've always been partial to it :) 05:52:17 (Incidentally, EgoBF does support non-wrapping as an option, of course :) ) 05:52:20 since thats how asm does things 05:52:36 Right 05:52:55 okay wrapping then 05:52:59 yay 05:53:21 that means no one will try to use c2bf to win at bfgolf hehe 05:54:02 Not that they would win. 05:54:06 They would indeed lose horribly. 05:54:14 Unless they were the only entry ^_^ 05:54:46 Darn, there's no 8->16 on "BF algorithms" :P 05:55:02 well, I have > ... it's >>>> ;) 05:55:43 Umm, 8->16 would be >> ;) 05:55:47 it might turn out to need to be more tho, depending on if I need temp cells 05:55:56 I think they're vital. 05:55:57 oh, sorry.. 8->32 05:56:00 Unforunately. 05:56:06 And can we call it 1->2, 1->4, etc? 05:56:16 Since we don't actually know that one cell is eight bits :P 05:56:19 1->4 .. sure 05:56:35 that's one cell to 4 cells? 05:56:39 Yeah 05:56:45 Which I'm working on right now. 05:57:00 oh, so was I 05:57:05 Hah 05:57:09 In that case 05:57:12 You go right ahead :) 05:57:13 you should work on the important parts 05:57:17 this is a detail 05:57:22 OK 05:57:27 * GregorR continues on the AST. 05:58:39 So, can you give me access to the brainfuck.sf.net CVS repo? ^_^ 05:58:48 That is, is that within your power? 05:58:49 write access? 05:59:11 you should already be able to read it 05:59:11 Yeah, so I could put C2BF there. 05:59:20 Of course I can read it :P 05:59:22 let me see if I'm on that project, I think I am 05:59:43 Umm, didn't you post bfbasic there ...? 05:59:55 Or was it somebody else? 06:00:05 there are different admin levels 06:00:13 you can be a developer .. or an admin 06:00:43 Err, I just need the lowest level that'll let me post to CVS - probably "developer" :) 06:00:44 okay cool, I can make you a develeoper 06:00:48 I just want somewhere to put this ;) 06:00:52 what is your sourceforge info 06:00:57 UN: cdgregorr 06:01:06 You may want to tell the project lead why you're doing this :P 06:01:26 that's keymaker, afaik 06:01:33 I'm sure he's cool w/ it 06:01:41 Oh. 06:01:46 So long as it's somebody I know :P 06:02:55 ok, you should be on 06:03:18 be sure to make a new dir for it 06:04:03 Of course :) 06:04:23 :) why is it that I forget that you know all this crap already 06:05:00 I do have several OSS projects on SF :) 06:07:02 btw, do you knwo how to make my delete key function as a delete key in nano (rather than backspace)? 06:07:59 Yeah, use a REAL editor!!! 06:08:00 J/K 06:08:02 Idonno :) 06:08:46 hehehe 06:09:20 As soon as I'm done with the AST, I'll post it. 06:09:34 Only 16 nonterminals left. 06:09:34 some habits die hard.. editing is my weak point 06:09:50 I've used pine/pico as long as I've been online 06:10:02 For programming? 06:10:13 no.. for writing e-mail and shell scripts 06:10:24 and quick edits 06:10:25 In that case, I have no qualm. 06:10:31 I actually like pico/nano. 06:10:34 Just not for programming. 06:10:43 People who use them for programming are missing out on a lot :) 06:10:51 People who don't are using an easy-to-use editor :) 06:10:52 I use gedit for programming usually 06:11:08 I've tried kate but its very slow on this machine 06:11:20 Well, it is _k_ate ;) 06:12:01 my favorite editor was Textpad 06:12:09 Back in Windozeland. 06:12:11 yep 06:12:29 http://armedbear-j.sf.net/ 06:12:32 J is my sinful pleasure. 06:12:44 It's written in Java ... but it's SUCH an excellent editor :'( 06:12:47 java.. evil!~ 06:13:11 Heh 06:13:22 Well, moreover it doesn't work under SableVM :( :( :( 06:13:34 for java, I use eclipse 06:14:01 but that does look very nice 06:14:14 I wasn't referring to editing Java - just as a programmer's editor in general. 06:14:20 I write almost no Java code :P 06:14:21 sure 06:14:37 you have a secret love for Java 06:15:02 everyone does.. just can't admit it ;) 06:15:17 If it wasn't so proprietary, I wouldn't mind it too much. 06:15:21 It's nice to have a wimpmode C++. 06:15:38 But I try to avoid proprietary software at all costs. 06:15:43 hopefully when sun finally dies they'll do the honorable thing 06:15:56 If they do, I'll start writing much more java XD 06:16:39 argh.. can't seem to run java apps 06:16:48 ...? 06:17:07 # An unexpected error has been detected by HotSpot Virtual Machine: 06:17:08 # 06:17:08 # SIGSEGV (0xb) at pc=0xb793528e, pid=7996, tid=3084904672 06:17:08 # 06:17:08 # Java VM: Java HotSpot(TM) Client VM (1.5.0-b64 mixed mode) 06:17:08 # Problematic frame: 06:17:11 # V [libjvm.so+0x28928e] 06:17:42 I think I broke it a while back trying to mix sun java and one of the free javas 06:18:04 Heheh 06:18:13 for graue 06:18:23 ARGH - I've had this song stuck in my head for well over a week now >_< 06:18:32 GO AWAY, SONG! 06:18:33 play some trance 06:18:34 I WILL NOT SING YOU AGAIN! 06:18:35 NOOOOOOOOOO 06:18:39 Even worse :P 06:18:54 I'll take "We'll Meet Again," thank you very much ;) 06:20:18 I've come to dislike music with vocals 06:20:34 I listen to almost no music with vocals. 06:20:37 But of the other variety ;) 06:20:52 instrumental 06:21:13 As opposed to sequenced :) 06:21:37 for me it was mods -> trance 06:21:46 I was looking for something to play quake to 06:22:11 We live in different universes, you and I ;) 06:22:18 I think so 06:22:49 although I'm probably one of very few mormons who listens to trance :) 06:23:12 so I'm quite unusual anyways 06:24:08 in the car it has to be classical tho.. or silence.. that's good too 06:24:25 I listen to a lot of silence ;) 06:24:42 I once had an MP3 player, but I stopped using it, because I'm more comfortable with silence. 06:25:59 I wonder what OSI is going to do when GPLv3 comes out ... 06:25:59 if I had an mp3 player I'd probably try to put linux on it 06:26:00 and then I'd never get any work done :( 06:26:07 whats osi 06:26:15 The Open Source Institute. 06:26:22 Or some equally ridiculous name. 06:26:25 Whatever OSI stands for :P 06:26:59 Maybe Free Software and Open Source won't be compatible anymore ...... OSI is too busy giving rights to everybody to restrict the right to restrict rights :P 06:28:32 Oh, it's Open Source /Initiative/. 06:31:39 Hmm, worse yet, GPLv3 won't even be DFSG-free. 06:31:49 I see a big schism coming, and I don't like the implications. 06:33:05 well, everything GPL is already on board 06:33:15 Yes, everyTHING GPL, but not everyONE. 06:33:33 I don't want to see a Debian gplv3 section >_< 06:34:00 ubuntu is a little more practical .. I think I'm okay :) 06:34:22 Yeah, Ubuntu will probably accept v3 programs, but keep in mind that their source is Debian. 06:34:32 If Debian outright rejects v3 or puts it in non-free, there'll be a problem. 06:34:38 yeah, but they have their own repos 06:35:16 hmm, I wonmder if ubuntu would go outside Debian to get packages 06:36:14 I think if debian did that then people would start making packages for ubuntu and not debian.. then all would be ok 06:36:15 Well, the problem is, if I know the Debian people, they would put all v3 in non-free along with actually non-free stuff. So then there would be a huge headache of sifting through non-free for the things that are actually free, but don't follow some ridiculously strict guidelines. 06:36:31 Hmm, this is true. 06:36:45 what do you run btw 06:36:50 Heheheh 06:36:51 Mandriva 06:36:55 Another sinful pleasure ;) 06:37:17 Simply put, I am yet to find a distro that matches Mandriva in ease of installation or configurability. 06:38:31 the only reason I chose Ubuntu is that it correctly identified and worked will all my hardware 06:39:03 also, I hadn't seen a gnome distro before, and I like GNome 06:39:25 Yeah, Mandriva is sort of KDE-biased, but does come with Gnome - I don't know how well it works though. 06:40:10 I can run most KDE apps fine.. I use K3b for burning 06:40:39 I meant the desktop itself, not just apps thereof. 06:40:45 I know 06:40:51 OK :) 06:41:30 yay, halfway done d/ling java 06:42:46 Yay, 14 nonterminals left ;) 06:43:01 whats a nonterminal.. compiler class lingo? 06:43:41 Err, hmm. Where did I use it before compilers ... 06:43:45 And yes ;) 06:43:50 grammars? 06:43:54 Ah, yes. 06:43:57 For compilers. 06:43:59 :P 06:44:05 But we did grammars in an earlier class, too. 06:44:26 I did some grammar stuff last semester 06:44:31 N -> a b N 06:44:33 -> c 06:44:45 That would be a simple grammar with the nonterminal N, and terminals a, b, and c. 06:44:50 ahh 06:44:59 So in this compiler's parser, I have a bunch of nonterminals. I have 14 left to make a tree out of. 06:45:27 I unfortunately failed most of that part of the course 06:45:32 Heh 06:45:36 so I wouldn't be much help 06:45:40 You'll have some problems in your compilers class ;) 06:46:18 hehe 06:47:03 most of the problem was being in and out of the hospital with my wife 06:47:11 Ohhhhhhhhh, I see. 06:47:13 so I was missing classes, etc 06:47:43 I think I understand the basics of it ok, just missed out on the yummy details 06:47:47 If you still have the book, I'd do a quick review of grammars. 06:47:56 Or if you have access to the internet :P 06:48:08 yeah, I think I'll be fine 06:48:27 Do you know what language you have to implement the compiler in. 06:48:31 With a '?' 06:48:38 C, I think 06:48:46 it's small C 06:49:01 or at least a subset of small c 06:49:11 Err, the compiler itself and the language it will support? 06:49:16 so it should be pretty decent 06:49:36 compiler:c, language supported: small c 06:49:50 what are you guys doing.. 06:50:02 some useless thing, I take it 06:50:37 Basically. 06:50:45 The compiler is in Java, and supports a subset of Java. 06:50:59 Hence my recent upsurge in complaints about Java :) 06:51:07 lol 06:51:18 Worse yet, we're using JavaCC, which is a top-down compiler compiler, so it's ridiculous that it even exists *sigh* 06:51:45 its not LL? 06:51:56 or is the new thing LLRL 06:52:01 Ican't remember :P 06:52:04 LL = top-down 06:52:09 LALR = bottom-up 06:52:13 whats the yacc one 06:52:17 LALR 06:52:17 ahh there we go 06:52:30 Bottom-up is more powerful, supports both left and right recursion, etc. 06:52:31 afaik LALR supports more grammars 06:52:40 or is that wrong? 06:52:45 That is correct. 06:52:54 Mainly because it supports both left- and right- recursion. 06:52:57 So you can have things like: 06:53:00 A -> A ',' b 06:53:02 As well as 06:53:05 A -> b ',' A 06:53:24 Whereas with LL parsers, you can only have the second form, and anything in the first form has to be transformed. 06:54:38 in bfbasic I'm using infix -> RPN translation 06:55:14 which I suppose is really LL 06:55:40 Technically you could do that either way, but, if you wrote the parser from scratch, it's LL :) 06:55:48 NOBODY writes LALR parsers from scratch. 06:55:52 It's doable, but not really :P 06:56:37 basic doesn't require as compilcated a parser really 06:56:52 Yeah 06:57:07 It's all pretty much COMMAND PARAMETER PARAMETER ..., no? :) 06:57:18 yep 06:57:35 Does BFBASIC require 'LET'? 06:57:39 no 06:57:44 Good :) 06:57:45 it's optional 06:58:08 even early versions had that feature) 06:58:26 not really much different 06:59:05 if it doesn't understand the keyword, it assumes its a var, then sees if there is an equal sign 06:59:28 Right 07:01:35 yay done.. afk 07:01:48 Done with ... the 1->4 conversion? ^_^ :P 07:02:56 done d/ling java 07:03:43 haven't even started on that yet 07:03:50 was trying to open bfdebug 07:06:40 lol 07:06:48 I'll just go ahead and write the 1->4 conversions :P 07:06:53 They'll take six cells per cell. 07:06:57 Not too bad *shrugs* 07:07:16 Mostly using "[edit] 07:07:16 if (x == 0) { code }" from the BF algos page :) 07:07:29 got bfdebug loaded 07:09:47 firefox will probably stop crashing now too, I bet 07:11:56 yeah that'll probably do it.. so 1->4(6) hehe 07:12:34 I haven't decide how to handle , and . yet 07:12:45 + -> >>>+[>+>+<<-]>[<+>-]+>[<->[-]]<[-<<+[>>+>+<<<-]>>[<<+>-]+>[<->[-]]<[-<<<+[>>>+>+<<<<-]>>>[<<<+>-]+>[<->[-]]<[-<<<<+>>>>]]]<<<< 07:12:49 That's pretty nasty :P 07:13:11 My thought is just output the least significant cell. 07:13:19 That'll work great for C2BF anyway. 07:13:47 are your temps at the beginning or the end 07:14:08 At the end. 07:14:24 It's more efficient that way, since my least significant cell is also at the end. 07:14:32 Though what I should do is reverse the whole thing ... 07:14:36 To be most efficient :P 07:14:50 Bloody hell. How dare you point out my efficiencly flaws ;) 07:18:29 + -> +[<+<+>>-]<[>+<-]+<[>-<[-]]>[->>+[<<+<+>>>-]<<[>>+<<-]+<[>-<[-]]>[->>>+[<<<+<+>>>>-]<<<[>>>+<<<-]+<[>-<[-]]>[->>>>+]]] 07:18:41 (Now, the whole program has to be prefaced with >>, btw) 07:20:20 Err, rather: 07:20:21 + -> +[<+<+>>-]<[>+<-]+<[>-<[-]]>[->>+[<<+<+>>>-]<<[>>+<<-]+<[>-<[-]]>[->>>+[<<<+<+>>>>-]<<<[>>>+<<<-]+<[>-<[-]]>[->>>>+]]]> 07:21:59 - -> [<+<+>>-]<[>+<-]+<[>-<[-]]>[->>[<<+<+>>>-]<<[>>+<<-]+<[>-<[-]]>[->>>[<<<+<+>>>>-]<<<[>>>+<<<-]+<[>-<[-]]>[->>>>-<<<<]>>>-<<<]>>-<<]>- 07:22:09 > -> >>>>>> 07:22:09 < -> <<<<<< 07:22:16 , -> , 07:22:17 . -> . 07:22:30 Now, for the hardest part :P 07:22:30 not >>. ? 07:22:57 No, I float on the least significant cell. 07:23:01 And the temps are left of it. 07:23:04 oh, yeah that makes sense 07:23:08 -!- nooga has joined. 07:23:22 However, [ and ] are making it look like I'll ultimately need three temps :'( 07:23:48 what? 07:24:01 calamari and I are having a discussion :P 07:24:18 Trying to make an algorithm to turn any BF program into a BF program utilizing four cell cells. 07:24:23 Err ... that phrase made no sense. 07:24:41 nooga: part of his c2bf compiler 07:25:04 so that he can assume that cells are 32-bits wide and translate that to 8-bit bf 07:25:25 Damn, I really do think I'll need three temps for [ and ]. 07:25:27 Bah, so be it. 07:25:49 can you re-use one of the temps? 07:25:58 one of em right now is just to be a 0 value 07:26:33 hrm wait one sec 07:26:37 The problem is, I need somewhere to and them into, and the and algorithm uses two temps. 07:26:55 * calamari checks something out 07:28:15 hrm, my brain is slow right now.. of course you have to and them 07:28:23 was trying to avoid that 07:28:33 Can't really avoid it :P 07:28:39 ERR, not and them. 07:28:41 Or them. 07:28:41 since you only really care if any of the left ones are 0 07:29:18 err backwards 07:29:22 if any are NON-zero 07:29:31 * GregorR 's eyes glaze over ;) 07:29:51 well, you don't really care about which ones are which.. if any aren't zero, its done 07:30:14 Hmmmmmmmmm ........ I'm thinking maybe I can do this with two ....... 07:30:16 Lemme think . 07:30:18 ..... 07:30:29 trying to see if [>] can be used 07:30:47 remember that you have temps on both sides 07:31:18 You'd have to know where you just ended up. 07:31:36 well what I mean is 0 0 x x x x 0 0 07:31:51 so you have 4 temps to work with in the OR 07:31:59 then clean up after 07:32:29 Ohhhhhhhh 07:32:46 does that help? :) 07:32:59 Hmm, I could use that to reduce the number of temps I use in + ... but it would probably be even worse to jump to either end :P 07:33:17 That does help, but I think I figured a way to do it without ;) 07:35:32 that's good, because you might have a problem with [[[[ 07:35:32 depending 07:35:32 so you might only really have 0 0 x x x x 0 07:35:39 if its OR 0 x x x x 0 07:36:26 yeah, that'd work fine 07:36:36 Aha, think I've got it. 07:36:44 with 2? cool 07:37:24 [ -> [<+<+>>-]<[>+<-]<[[-]>>>[<<+<+>>>-]<<[>>+<<-]<[[-]>>>>[<<<+<+>>>>-]<<<[>>>+<<<-]<[[-]>>>>>[<<<<+<+>>>>>-]<<<<[>>>>+<<<<-]<[[-]>+<]]]][-> 07:37:27 ] -> [<+<+>>-]<[>+<-]<[[-]>>>[<<+<+>>>-]<<[>>+<<-]<[[-]>>>>[<<<+<+>>>>-]<<<[>>>+<<<-]<[[-]>>>>>[<<<<+<+>>>>>-]<<<<[>>>>+<<<<-]<[[-]>+<]]]]]-> 07:37:39 Yeah, with 2. 07:37:46 Now, to test :P 07:39:17 * calamari recommends ] -> ] 07:39:49 or however the >>'s are for that 07:40:26 Where's this? 07:40:33 Oh 07:40:36 No, that won't work. 07:40:41 why not 07:40:54 I'd need a third temp to store the value ^_^ 07:41:22 So the question is: Have a more efficient [] at the cost of less space efficiency? 07:43:52 Incidentally, by this technique, I could do ANY number of cells with only two temps, so one way to increase space efficiency would be to increase the number of cells ;) 07:44:24 great 07:45:05 I think you can do both 07:45:19 use three temps.. and end with OR 0 x x x x 0 07:45:31 err two temps between the 4 cells 07:45:44 you're just borrowing the extra cell for the calculation 07:46:12 But I also need two cells for + and - 07:46:13 wait a sec 07:46:38 Well, my algo doesn't work ^_^ 07:46:40 why? isn't it recalculated each time? 07:47:05 Right now I'm just testing + :P 07:47:08 I know that makes no sense.. 07:47:16 + seems to work for me 07:47:56 Hmm ... I somehow landed in the wrong place O_O 07:48:05 OH, hah 07:48:08 Used my broken + from before. 07:48:10 all 255's 07:48:10 Bravo, Gregor. 07:48:25 is that what you mean? 07:48:48 Umm, ? 07:48:49 No 07:48:54 * GregorR is confused by that statement. 07:49:17 if I do four 255's I don't end up in the same cell I started in 07:49:22 (with +) 07:49:40 o.O 07:49:47 Woah, that's odd... 07:49:57 hmm, even one 255 does it 07:50:58 My + and - work fine for me ........... 07:51:06 Oh wait! 07:51:09 + is indeed broken! 07:51:11 And I see how! 07:51:55 bye 07:51:58 + -> +[<+<+>>-]<[>+<-]+<[>-<[-]]>[->>+[<<+<+>>>-]<<[>>+<<-]+<[>-<[-]]>[->>>+[<<<+<+>>>>-]<<<[>>>+<<<-]+<[>-<[-]]>[->>>>+<<<<]]]> 07:52:00 Bye nooga 07:52:02 -!- nooga has quit. 07:55:01 yay, seems to work now 07:55:55 Aha 07:55:57 so a 1->2 07:55:58 Found the prob with [] 07:56:28 Naturally, it had nothing to do with the complicated algorithm. 07:56:34 It was simply that I landed on the wrong cell. 07:57:06 [ -> [<+<+>>-]<[>+<-]<[[-]>>>[<<+<+>>>-]<<[>>+<<-]<[[-]>>>>[<<<+<+>>>>-]<<<[>>>+<<<-]<[[-]>>>>>[<<<<+<+>>>>>-]<<<<[>>>>+<<<<-]<'(msc*)(0)(lsc)(2)(3)(msc)'[[-]>+<]]]]>[-> 07:57:09 ] -> [<+<+>>-]<[>+<-]<[[-]>>>[<<+<+>>>-]<<[>>+<<-]<[[-]>>>>[<<<+<+>>>>-]<<<[>>>+<<<-]<[[-]>>>>>[<<<<+<+>>>>>-]<<<<[>>>>+<<<<-]<'(msc*)(0)(lsc)(2)(3)(msc)'[[-]>+<]]]]>]-> 07:57:18 err.. ? 07:58:04 Ack 07:58:08 I left a comment in there :) 07:58:19 Also, it's still wrong :) 07:58:56 Oh, but I see how. 07:59:02 ] -> [<+<+>>-]<[>+<-]<[[-]>>>[<<+<+>>>-]<<[>>+<<-]<[[-]>>>>[<<<+<+>>>>-]<<<[>>>+<<<-]<[[-]>>>>>[<<<<+<+>>>>>-]<<<<[>>>>+<<<<-]<'(msc*)(0)(lsc)(2)(3)(msc)'[[-]>+<]]]]>]> 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:00:05 you should document these on the wiki 08:00:11 they sound generally useful 08:00:27 I will. 08:00:34 But step one: make them work ;) 08:00:44 OH CRAP - my [ and ] are ands!!! >_< 08:00:55 That's why it doesn't work :'( 08:01:17 Shoot ... I don't think I can do an or without three cells :P 08:03:05 you have 4 cells 08:03:17 Errr, three temps, sorry :) 08:03:27 you have 4 temps 08:04:04 calculations [ clear out right 2 temps CODE ] clear out right 2 temps CODE 08:04:20 Ohhhhhhh 08:04:23 at least that seems right 08:04:25 Yeah, I do have four temps ^_^ 08:04:30 then you can also do ] = ] 08:04:44 err ] = ] and clear 08:04:56 Umm ....... I still don't see how that would work. 08:05:06 oh right, because you'd need to recalc 08:05:08 so yeah 08:05:22 However, yes, I can use the right-side temps. 08:05:24 So I'm back down to two :) 08:05:32 yeah I think so 08:05:41 speaking of that 08:05:51 couldn't you do that with +? 08:06:01 so you'd only have one temp between them? 08:06:39 Well, for [], I still need three temps :) 08:06:43 I'm just borrowing one from the other side. 08:06:54 right, but you'd just borrow two over instead of one over 08:07:01 Hmmmmmmmmmmmmmmmmmmmmm 08:07:11 Yeah, I guess I have infinity temps if I want them. 08:07:15 yeah 08:07:29 so, there you go, 5 cells 08:07:39 I don't know if I like the efficiency implications of using those temps though ^_^ 08:07:44 haha 08:07:55 *sigh* 08:07:55 it's not really that bad on any decent interpreter 08:07:59 But you're right. 08:07:59 Yeah 08:08:06 * GregorR rererewrites + and - 08:11:36 + -> +[<+>>>>>+<<<<-]<[>+<-]+>>>>>[<<<<<->>>>>[-]]<<<<<[>>+[<<+>>>>>+<<<-]<<[>>+<<-]+>>>>>[<<<<<->>>>>[-]]<<<<<[>>>+[<<<+>>>>>+<<-]<<<[>>>+<<<-]+>>>>>[<<<<<->>>>>[-]]<<<<<[>>>>+<<<<]]]> 08:11:55 Oh wait, that's not quite right. 08:12:20 + -> +[<+>>>>>+<<<<-]<[>+<-]+>>>>>[<<<<<->>>>>[-]]<<<<<[->>+[<<+>>>>>+<<<-]<<[>>+<<-]+>>>>>[<<<<<->>>>>[-]]<<<<<[->>>+[<<<+>>>>>+<<-]<<<[>>>+<<<-]+>>>>>[<<<<<->>>>>[-]]<<<<<[->>>>+<<<<]]]> 08:13:35 tests ok 08:14:43 - -> [<+>>>>>+<<<<-]<[>+<-]+>>>>>[<<<<<->>>>>[-]]<<<<<[->>[<<+>>>>>+<<<-]<<[>>+<<-]+>>>>>[<<<<<->>>>>[-]]<<<<<[->>>[<<<+>>>>>+<<-]<<<[>>>+<<<-]+>>>>>[<<<<<->>>>>[-]]<<<<<[->>>>-<<<<]>>>-<<<]>>-<<]>- 08:15:06 > -> >>>>> 08:15:06 < -> <<<<< 08:15:07 , -> , 08:15:07 . -> . 08:16:16 + and - seem good 08:19:29 [ -> [>>>>+>>>>>+<<<<<<<<<-]>>>>>>>>>[<<<<<<<<<+>>>>>>>>>-]<<<<<[[-]<<<<<+>>>>>]<<<[>>>+>>>>>+<<<<<<<<-]>>>>>>>>[<<<<<<<<+>>>>>>>>-]<<<<<[[-]<<<<<+>>>>>]<<[>>+>>>>>+<<<<<<<-]>>>>>>>[<<<<<<<+>>>>>>>-]<<<<<[[-]<<<<<+>>>>>]<[>+>>>>>+<<<<<<-]>>>>>>[<<<<<<+>>>>>>-]<<<<<[[-]<<<<<+>>>>>]<<<<<[[-]> 08:19:45 ] -> [>>>>+>>>>>+<<<<<<<<<-]>>>>>>>>>[<<<<<<<<<+>>>>>>>>>-]<<<<<[[-]<<<<<+>>>>>]<<<[>>>+>>>>>+<<<<<<<<-]>>>>>>>>[<<<<<<<<+>>>>>>>>-]<<<<<[[-]<<<<<+>>>>>]<<[>>+>>>>>+<<<<<<<-]>>>>>>>[<<<<<<<+>>>>>>>-]<<<<<[[-]<<<<<+>>>>>]<[>+>>>>>+<<<<<<-]>>>>>>[<<<<<<+>>>>>>-]<<<<<[[-]<<<<<+>>>>>]<<<<<]> 08:19:48 btw, if you use a trailing +, then you don't have to lead the program with > 08:20:02 err trailing temp 08:20:12 but I'm sure you don't want to redo again hehe 08:20:44 besides it's more efficient this way 08:21:04 If I always used trailing, it would be very, very bad ^_^ 08:21:20 For once I don't agree with your logic enough to change it ;) 08:21:32 ahh I wasn't clear sorry 08:21:37 I'm saying don't change it 08:22:16 I just didn't read enough :P 08:22:19 is that or ? 08:22:24 this time hehe 08:22:56 OR -> [>>>>+>>>>>+<<<<<<<<<-]>>>>>>>>>[<<<<<<<<<+>>>>>>>>>-]<<<<<[[-]<<<<<+>>>>>]<<<[>>>+>>>>>+<<<<<<<<-]>>>>>>>>[<<<<<<<<+>>>>>>>>-]<<<<<[[-]<<<<<+>>>>>]<<[>>+>>>>>+<<<<<<<-]>>>>>>>[<<<<<<<+>>>>>>>-]<<<<<[[-]<<<<<+>>>>>]<[>+>>>>>+<<<<<<-]>>>>>>[<<<<<<+>>>>>>-]<<<<<[[-]<<<<<+>>>>>]<<<<< 08:23:05 fun! 08:23:05 'Or' is included in both [ and ] 08:23:35 oh, I meant you changed from and to or ? 08:23:44 Oh, yes. 08:23:47 Because it should be or :) 08:24:29 YES! 08:24:31 IT WORKS! 08:24:33 I ROCK! 08:24:34 I AM THE KING! 08:24:41 NOBODY CAN DEFEAT MY AMAZING SKILL! 08:24:42 (etc) 08:24:58 Time to post to the wiki 08:25:27 a 1->2 version would be cool too 08:25:49 Actually that'd be pretty easy to write after all that. 08:25:56 yeah 08:26:29 three columns original 1->2 1->4 08:27:12 I hope you don't mind testing these as I paste them through, because I'm not ^_^ 08:27:29 + -> +[<+>>>>>+<<<<-]<[>+<-]+>>>>>[<<<<<->>>>>[-]]<<<<<[->>+<<]> 08:27:52 sure I'll test em 08:27:58 was just running +[+] 08:28:14 currently at 13 :P 08:28:25 - -> [<+>>>>>+<<<<-]<[>+<-]+>>>>>[<<<<<->>>>>[-]]<<<<<[->>-<<]>- 08:28:37 Oh wait XD 08:28:38 Hahahah 08:28:46 I did those wrong, didn't think before I typed. 08:29:01 I did >>>>> where I should have done >>> (there are only two to skip over now ;) ) 08:29:02 ahh 08:29:04 yep 08:29:37 + -> +[<+>>>+<<-]<[>+<-]+>>>[<<<->>>[-]]<<<[->>+<<]> 08:29:41 +[<+>>>+<<-]<[>+<-]+>>>[<<<->>>[-]]<<<[->>+<<]> 08:30:02 - -> [<+>>>+<<-]<[>+<-]+>>>[<<<->>>[-]]<<<[->>-<<]>- 08:30:39 + good 08:31:08 - good 08:31:56 OR -> [>>+>>>+<<<<<-]>>>>>[<<<<<+>>>>>-]<<<[[-]<<<+>>>]<[>+>>>+<<<<-]>>>>[<<<<+>>>>-]<<<[[-]<<<+>>>]<<< 08:32:12 [>>+>>>+<<<<<-]>>>>>[<<<<<+>>>>>-]<<<[[-]<<<+>>>]<[>+>>>+<<<<-]>>>>[<<<<+>>>>-]<<<[[-]<<<+>>>]<<<[[-]> 08:32:15 [ -> [>>+>>>+<<<<<-]>>>>>[<<<<<+>>>>>-]<<<[[-]<<<+>>>]<[>+>>>+<<<<-]>>>>[<<<<+>>>>-]<<<[[-]<<<+>>>]<<<[[-]> 08:32:27 ] -> [>>+>>>+<<<<<-]>>>>>[<<<<<+>>>>>-]<<<[[-]<<<+>>>]<[>+>>>+<<<<-]>>>>[<<<<+>>>>-]<<<[[-]<<<+>>>]<<<]> 08:32:38 And, of course: 08:32:38 > -> >>> 08:32:39 < -> <<< 08:32:39 , -> , 08:32:39 . -> . 08:33:01 Hmmmmmmmm 08:33:08 Should this be under "Brainfuck algorithms" ...? 08:33:57 BF cell size conversion? 08:34:00 dunno 08:36:22 Hmm, how do you put a multiline piece of data in a cell in a table in mediawiki ... 08:36:23 * calamari translates pi16.bfg 08:36:40 -g 08:36:44 dunno, sorry 08:36:47 I hope you wrote a program to do it for you ;) 08:36:57 find & replace ? 08:37:26 I hope you don't inadvertantly overlap ^_^ 08:37:35 oh.. shouldn't 08:37:46 first translating +->< into abcd 08:38:30 Ah 08:39:37 Speaking of us being from different universes :) 08:39:41 Wrote mine in C ;) 08:39:58 I seem to have killed gedit 08:40:17 Found and replaced 10821 occurrences. lol 08:40:51 I should use sed for this 08:41:58 Hah 08:42:12 Incidentally, numwarp.b worked great with my 1->4 converter. 08:42:54 bah! 08:42:58 I forgot [ and ] hahahah 08:43:23 * calamari writes a bf program 08:45:47 http://www.esolangs.org/wiki/Brainfuck_bitwidth_conversions 08:46:08 Whoops 08:46:09 Forgot - :) 08:47:12 it's really 1->3 and 1->5 isn't it :) 08:47:43 No, because the actual cells used by the program are 2 and 4. 08:47:50 The space use is 3 and 5. 08:47:53 But that's not what's important. 08:58:09 OK, now let's take yapi.b, make it 8 cells wide, then run it on egobfi64 >: ) 08:58:56 Wow, that's slow :P 08:59:47 Well, it does increase latency hugely. 08:59:55 Hmmmmmmmmmmmm, here's a crazy thought .................. 09:00:16 What if I compile a 1-cell version, 2-cell version and 4-cell version, and decide what to use at runtime? 09:00:37 It /ought/ to be possible, but might take so much time to decide that it's not worth it ... 09:01:17 a 4-cell version of what? c2bf? 09:01:31 Of whatever program is being compiled. 09:01:50 IE, c2bf produces a 1-cell, then a program takes that and makes 1, 2, and 4 celled versions, and a wrapper to decide which at runtime. 09:02:08 lol 09:02:15 code bloat extreme 09:02:26 I guess doing - 255 times is probably a problem, and doing it 2 billion times is a big problem ^_^ 09:03:10 Hmm, but by doing 6*6*4, then checking if it's 0, you can see if you have an 8-bit one ... 09:03:15 And that's not too bad ... 09:03:33 ? 09:03:39 6*6*4=144 09:04:25 -!- GregorR_ has joined. 09:04:26 8*8*84=256 09:04:31 err 8*8*4 09:04:32 Damn you peeeeeer!!!!!!!!! 09:04:37 Yeah, exactly. 09:04:42 So it would wrap on 8-bit. 09:04:45 Oh, wait. 09:04:49 What was the last line you got from me? 09:04:57 Hmm, but by doing 6*6*4, then checking if it's 0, you can see if you have an 8-bit one ... 09:04:57 And that's not too bad ... 09:05:04 Yeah, I corrected myself :P 09:05:08 But had apparently already been killed. 09:05:16 -!- GregorR has quit (Nick collision from services.). 09:05:20 -!- GregorR_ has changed nick to GregorR. 09:06:00 (6*6*4)*(6*6*4) 09:06:11 lol 09:06:14 it's a virus 09:06:46 actually, don't even need to do that 09:06:58 since the cell already holds 256, just do x*x 09:08:22 Oh, heh :) 09:08:46 of course thats still slow, because * means - 09:09:12 Yeah, that as an add-to is nasty. 09:12:31 ahh, thanks textgen :) 09:15:22 (I'm having it crunch on those nice bf strings) 09:16:29 Heh 09:20:09 ++++++++[>++++++++<-]>[<++++>-]<[>+>+<<-]>[<+>-]+>[[-]<[-]<[>>+>+<<<-]>>>[<[<+<+>>-]<[>+<-]>>-]<<<[>+>+<<-]>[<+>-]+>[<-<[-] 1cell code [-]>[-]>[-]]<[-<[-] 2cell code [-]>[-]]]<[-<[-] 4cell code [-]>[-]] 09:20:16 I think that would work ...? 09:20:19 Maybe ^_^ 09:21:23 if you say so.. too late at night hehe 09:21:44 -!- EgoBot has quit (Read error: 110 (Connection timed out)). 09:22:27 -!- EgoBot has joined. 09:22:34 This is the last thing I do before I go to sleep :P 09:23:45 I officially rock. 09:24:23 You may now praise me as a god. 09:24:35 :P 09:25:50 $ cat yapi.b | wc -c 09:25:51 1167 09:25:55 $ ./c2bf-1toM yapi.b | wc -c 09:25:55 98791 09:26:02 Heh :) 09:29:47 does it work? 09:29:52 Yeah. 09:29:54 Works great. 09:29:57 Even on egobfi8 :) 09:30:00 Well, slowly :) 09:30:07 and it's quick to decide? 09:31:03 Quite. 09:31:13 you converted C to BF????! 09:31:15 Or at least, there was no human-noticeable difference. 09:31:18 cool 09:31:23 lament: Working on it ;) 09:31:24 what did you decide on? 09:31:31 (for the tests) 09:31:38 8*8*4, that times itself. 09:31:41 wow 09:31:52 I figured that'd be slow.. glad I was wrong 09:31:54 Don't ask me why 256*256 didn't take longer. 09:32:04 I guess it's only 65536 *shrugs* 09:32:17 then what .. *256 again? 09:32:28 or are you assuming 24=32 09:33:25 Oh, I'm assuming that if it's still going strong after 65536, it must be 32 bits. 09:33:58 I don't quite understand "are you assuming 24=32" ... 09:34:27 what you just said .. 256*256*256 09:34:31 thats 24 bits 09:34:52 Oh, I see. 09:35:05 No, I just assumed that if it even got to 65536 (17 bits), it's 32. 09:35:14 ahh 09:35:21 sure 09:35:23 I can't imagine an 18-bit, 24-bit or 30-bit interp :) 09:35:36 Or rather, it uses the 1-celled version, not it assumes that it's 32-bit. 09:35:40 I should be more explicit there. 09:36:11 yeah I guess 256*256 is plenty fast 09:36:15 cool then! 09:41:14 $ egobfi8 rpnm.b 09:41:14 256 256 * 09:41:14 65536 09:41:16 :) 09:41:35 Now, DEFINITELY time for sleep. 09:41:40 night 09:41:47 B'bye 10:06:53 -!- CXI has quit (Connection timed out). 10:27:12 -!- sp3tt_ has changed nick to sp3tt. 10:58:46 -!- Keymaker has joined. 10:58:55 hi Keymaker 11:03:25 hi 11:03:47 grhhh. got distracted from my work for a couple of days.. 11:03:56 was designing a web site 11:04:10 but now the site is done.. 11:04:28 and it's entirely unrelated to esolangs :\ 11:05:50 -!- J|x has joined. 11:06:11 hi jix 11:09:08 moin 11:09:38 (mocl kox 11:09:41 -!- J|x has changed nick to jix. 11:09:44 /nick jix 11:09:54 hrh 11:09:57 *heh 11:10:23 wrong finger offset on keyboard :) 11:11:09 krü 11:11:11 jep 11:12:13 bbl 11:12:14 -!- calamari has quit ("Leaving"). 11:42:10 can a normal cd rom drive read playstation 2 discs? 11:42:49 and does anyone know how i could rip musics from a game? is there anything common way they are stored? 11:47:50 probably not :\ 11:51:58 i think ps2 disks are dvds 11:52:10 ah 11:56:20 -!- lightstep has joined. 12:00:09 yah, reading works.. now copying two 400mb music files 12:00:15 no idea about their format, though :\ 12:01:07 Back in the DOS game period the musics used to be in one of the various MOD-like formats. Nowadays PC games usually use mp3 or other such formats, probably in various containers. 12:01:29 yeah 12:01:59 Blaystation 2, games, though. My guess would be a relatively custom format, but who knows. 12:02:25 yeah.. 12:02:46 well, i can't read even mp3 format, so it may take a few decades till i get the sounds out 12:04:38 i guess some "underground" ps2 forum might know 12:08:50 the header of the file has the names of the track files written, like "snowptrl.mpf" 12:08:54 i wonder what's mpf.. 12:09:53 it has the same names as ".mus" too 12:11:03 well, my only hope is to find some program if there is any.. 13:27:18 -!- Sgeo has joined. 13:31:20 * Keymaker tries to concentrate 14:21:15 -!- Sgeo has quit. 14:22:27 -!- nooga has joined. 14:23:01 erm 14:23:22 -!- lightstep has quit (Read error: 110 (Connection timed out)). 14:28:09 anybody here ? 14:33:49 ¢¢ 14:34:23 yes 14:36:42 HAL's response should be: "afirmative" or "true" or maybe lispish "t" 14:43:07 ^^ 14:43:09 but "yes" is also good 14:44:25 hm, iwould like to put myself in Category:People but I wouldn't date 14:51:38 i woder if apache has Haskell-mod 14:56:34 -!- kipple has joined. 14:59:44 hi kipple 15:08:22 hey 15:22:50 i think i found a way to prove minks to be turing complete 15:29:14 but it think its output routines don't allow arbitrary input and output while being turing complete 15:32:18 well 15:32:59 i think about implementing non-esoteric functional language which's syntax will be more Clike 15:34:52 maybe minks is missing an instruction to set a condition without decrementing 15:35:36 but i'm not sure 15:38:26 GregorR: those bitwidth conversions look pretty nifty! 15:41:35 hmm no i'd need such a command 15:41:46 (at least for my current approach) 16:10:43 -!- nooga has quit (Read error: 110 (Connection timed out)). 16:22:22 hmm 16:26:13 i have an idea for a new computational model but i have no idea wether it's turing complete or not 16:27:19 you have one data vector of N fractions 16:27:25 called v 16:28:00 * SimonRC printed out the Befunge _Hunt the Wumpus_ once and drew in all the boundries that the PC never crossed. 16:28:04 It was interesting. 16:28:36 you have three matrices called a C N and D 16:29:43 with every iteration you calculate the dot product of v and C the result is called i... 16:30:11 wait i used N twice 16:30:30 d'oh 16:30:44 but no one listens anyway.... 16:31:57 or does someone? 16:37:22 (note: don't forget pointer arithmetic in bf2c!) 16:37:42 yeah and function pointers 16:37:56 and the gcc lable pointer extension and and and... 16:44:25 oops, c2bf 16:45:14 jix: sorry, tell me more about this matrix thing 16:47:00 i'm going to post something on the wiki as soon as i'm ready with it 17:00:34 my machine is able to compute the gcd of two integers 17:03:02 i need a name for my machine 17:04:21 what machine? 17:04:31 my matrix thing 17:04:44 (machine as in turing machine or register machine.. only a virtual one) 17:06:13 Try writing a NOT function. 17:06:24 NOT? 17:06:31 1 => 0 and 0 => 1? 17:06:44 not just that... 17:06:55 you should avoid using 0 17:06:55 nonzero ==> 0 and 0 ==> 1 17:07:09 because you get divide by 0 errors 17:07:32 I didn;t know it did division. 17:11:16 ok 17:13:00 you start with a vector V0 of j fractions and 4 matrices C N D and R of size j*j 17:13:43 to compute Va+1 you compute i, the dot product of Va and C 17:14:01 -i + Ia 17:14:15 and again i encounter naming problems 17:14:29 yeah.. 17:15:07 nargh i have to write it down on the wiki 17:15:12 does it have latex support activated? 17:17:07 -!- calamari has joined. 17:17:18 hi 17:18:13 it doesn't :( 17:21:27 Keymaker: what does mplayer say about the file? 17:28:53 i want latex on the esolang wiki! 17:31:06 link to this article ;) http://en.wikipedia.org/wiki/Latex 17:31:29 http://en.wikipedia.org/wiki/LaTeX << ! 17:55:15 calamari: no idea, haven't tried 17:55:24 probably it wouldn't open, dunno 17:55:34 it may be that game team's something own mixture 17:59:06 3 1 0 0 0 1 0 0 0 1 1 0 0 0 1 0 0 0 1 0 0 1 0 0 0 1 1 0 0 0 0 1 0 0 0 1 1 << thats my gcd program 17:59:15 what's gcd? 17:59:25 greatest common divisor 17:59:32 ah 18:00:36 that is the size of C N D or R followed by the contents 18:01:09 sorry, i don't understand anything about that (or the things you said in log) :9 18:01:43 btw, since there is no latex, perhaps you could upload stuff as pictures? 18:01:50 or make something pdf document? 18:01:54 yeah but that is annoying 18:01:58 yeah 18:03:46 latex doesn't let you export to a bitmap format? 18:04:08 it does 18:04:50 btw.. when is the lat time graue was in here? seems like its been a while 18:10:43 yeah 18:10:53 haven't seen for a while 18:17:04 -!- nooga has joined. 18:19:04 hi 18:19:17 !seen graue 18:19:21 Huh? 18:19:35 huh 18:19:44 eggdrop feature :) 18:19:54 I was at dentist -.-' 18:23:15 PAIN 18:23:19 yeah 18:23:48 she gave me 2 injections and it was still painfull, i cant talk now because my tongue is paralized 18:23:57 but i can type :D 18:24:00 hehe 18:24:04 it's really annoying 18:24:24 -!- {^Raven^} has quit ("Leaving"). 18:33:36 hm 18:37:26 -!- GregorR_ has joined. 18:38:33 -!- nooga has quit. 18:56:03 -!- EgoBot has quit (Read error: 110 (Connection timed out)). 18:56:45 -!- GregorR has quit (Read error: 113 (No route to host)). 19:24:38 i need a name for my machine! 19:25:03 hmmm 19:25:36 haader machine? 19:25:52 haader? 19:26:07 can't remember your surname correctly, sorry :) 19:26:10 ha>>R< aah 19:26:36 no 19:26:36 harder machine or.. hard machine 19:26:39 ok 19:27:07 Ihnihtct Machine 19:27:19 I have no idea how to call this Machine 19:28:03 (just thought because there are turing and minsky machines that are both named after their inventor (i guess)) 19:28:07 hm 19:28:24 afaik minsky called his machine register machine 19:28:44 program machines 19:29:04 at least that's in esowiki :) 19:29:24 although, i may just as well have misinterpreted the article :) 19:29:35 ah ok 19:29:53 but he didn't called them minsky machines 19:29:56 nope 19:30:18 well, just give something other name and people will start calling it harder machine :p 19:30:35 Weird Fraction Machine 19:30:52 that sounds esotericish enough :) 19:31:21 Blar 19:31:27 -!- GregorR_ has changed nick to GregorR. 19:31:45 moin GregorR 19:31:50 'ello 19:32:02 Apparently I'm doomed to disconnect and reconnect over and over for all eternity. 19:32:04 Damn connection >_< 19:32:42 yay, I broke XTEA 19:35:02 i don't want to write an article about my WFM 19:40:14 Your Windows File Manager? ^_^ 19:40:55 Weird Fraction Machine 19:43:29 way funky mojo? 19:44:03 keymaker: how is your bf program going? 19:44:11 Wild Furry M*****bation? 19:45:08 why did you censor masturbation? 19:45:22 Not sure :P 19:45:25 hehe 19:46:03 hah 19:46:29 :`( RIP EgoBot 19:46:41 calamari: as i said earlier today, i got distracted a bit because of one other project.. but i'm working on it at the moment 19:47:07 the code will be far from anything elegant, perhaps i shouldn't even release it when it's ready :p it's horrible 19:47:13 -!- EgoBot has joined. 19:47:17 I have to find some way to keep EgoBot connected though my connection cuts unexpectedly ... 19:47:35 I thought you had .. guess it didn't work as planned? 19:47:58 I found a way to keep it connected if it crashes ... 19:48:15 btw, how long does it take after you lose your connection before apps start noticing it? 19:48:18 But the thing is, there's no way for it to detect when the connection cuts except to go "Hmm, I haven't gotten a ping in twenty minutes ..." 19:48:30 Depends on the protocol. 19:48:51 I wonder how M$ does it so that apps notice so fast 19:54:35 grhhh.. i hate using pen and paper but just now i'm too tired to think :p 19:54:43 ok good XTEA works again 19:55:58 did I already mention that XTEA is 4 lines of Linguine? 19:56:05 Yes 19:56:07 :P 19:56:09 so it's not too bad 19:56:16 except the Linguine part hehe 19:56:21 hehe 19:56:24 what is xtea? 19:56:43 its an encryption algorithm 19:56:47 ah 20:00:49 I was using bad variable numbers.. needed to change them 20:01:02 was making it hard to call functions from within functions 20:01:18 since everything is global :) 20:01:58 speaking of globals.. have fun with local variables in bf 20:02:18 I guess you'll need to implement some sort of malloc 20:03:17 -!- {^Raven^} has joined. 20:03:46 <{^Raven^}> hullo peeps 20:04:08 hi Raven 20:04:18 Yo dog in dah hizzle wut up wikiwiki et cetera. 20:04:51 <{^Raven^}> rofl 20:05:17 Sorry, the word "peeps" threw me into ebonics mode. 20:05:19 But I'm back now. 20:08:44 -!- ihope has joined. 20:09:00 * {^Raven^} considers hiding somewhere for a bit 20:09:01 Two networks at once. It's extremely confusing. 20:09:25 I can't stand it! /me leaves the other one 20:09:32 * GregorR is on three networks. 20:10:25 Oh yeah? Well... well... 20:10:31 I could be on FOUR if I wanted to! 20:10:48 Clearly you don't want to :P 20:11:13 ihope: I've identified the problem.. ditch Chatzilla and use xchat :) 20:11:21 :-) 20:11:38 It probably wouldn't be so bad if I simply joined all the Freenode servers. 20:11:46 LOL 20:11:47 i wonder if this opera irc client could be in other networks at the same time 20:12:01 Ditch Chatzilla and use LostIRC :) 20:12:30 ihope: i was working on a minks tc proof 20:12:35 nice! 20:12:46 Ditch both and use copy con com! 20:12:54 Or whatever it is. 20:13:07 but i'm missing an instruction to force a condition to be true or false 20:13:09 copy con.. oh boy :) 20:13:36 * calamari mentally presses Ctrl-Z 20:13:40 jix: just increment a register and decrement it again. I think that'll... hmm... 20:13:51 ihope: set a condition to false... 20:14:00 if you make conditions case sensitive 20:14:09 Decrement a register until it's zero. 20:14:15 i loose it's value 20:14:21 and make hELLO == !Hello 20:14:39 then i can set hELLO to true to set Hello to false 20:15:09 and set everything that starts with a lowercase letter to false (as default value) 20:15:16 But that would make it EASIER to use! 20:15:22 GregorR: if you're on multiple servers is there any kind of divison like there is in xchat? 20:15:38 yeah but that would make it tc 20:15:40 No, it's just how I like it :) 20:16:04 xchat is good, even though the author went slightly evil 20:16:27 Let's take all this code copyrighted to other people and relicense it with nobody's permission! 20:16:27 WOOHOO! 20:16:30 is there any command for changing the exit message? 20:16:38 and i think it's impossible to use input and output and make it tc... but i may be wrong (in both cases) 20:16:40 /away 20:16:42 GregorR: why? 20:16:48 like something you write "/stuff "leaving"" or something? 20:16:51 cheers 20:17:19 Hmm. Let's BF-to-Minks. 20:17:34 i'll make a test, be back soon 20:17:39 -!- Keymaker has left (?). 20:17:39 ok! 20:17:39 then let's change it after the fact 20:17:39 and claim nothing is wrong 20:17:45 BF with two infinite registers is Turing-complete, aye? 20:17:57 whoa, I got got 10 lines all at once 20:18:01 just got even 20:18:24 -!- Keymaker has joined. 20:18:33 * calamari checks the torrent.. still going 20:18:37 test 20:18:43 -!- Keymaker has left (?). 20:18:45 more trance in 2 hours! yay 20:18:59 SinceTime to leave - and so, I will leave you with this link: http://www.esolangs.org/wiki/Brainfuck_bitwidth_conversions 20:19:04 *Since it's time 20:19:11 Grr, worst formed sentence ever. 20:19:20 Since it's time to leave, I will leave you with this link: http://www.esolangs.org/wiki/Brainfuck_bitwidth_conversions 20:19:27 oh yeah, I kjeep forgetting to link to that from the bf page 20:19:28 -!- Keymaker has joined. 20:20:03 I linked it from the BF algorithms page. 20:20:18 okay cool.. 20:21:07 grh didn't work :( 20:27:53 -!- Keymaker has quit. 20:30:27 -!- Keymaker has joined. 20:31:06 grh. couldn't get the quit message working with this opera client 20:31:23 -!- nooga has joined. 20:31:31 ha 20:31:35 * nooga is making his new esolang! 20:33:01 -!- CXI has joined. 20:36:23 what was that language based on words? 20:36:44 hmm, i think there have been couple of 20:36:52 one was called something gertrude or something 20:38:00 http://p-nand-q.com/humor/programming_languages/gplz/gplz_gertrude.html 20:38:35 there's a hello world program which is quite crazy.. 20:46:04 hm 20:46:37 i need some cool way to calculate word's 'weight' 20:47:16 perhaps adding every ascii character's value together? 20:47:24 that's what i was planning to use sometime :p 20:47:27 nah 20:47:43 hmm, no idea then 20:47:48 it would bevery hard to program 20:47:50 i mean 20:48:09 programming in that language 20:48:21 nooga: g's are heavier than i's, right? since the loop of the g hangs low, but the i lifts upward.. hehe 20:48:41 oh 20:48:45 something like this 20:49:34 i need something that will connect totally different words, like: "pidgeon", "bread", "defenestrate" 20:49:41 it's just an example 20:50:04 connect them? you mean as a valid sentence? 20:50:12 no no 20:51:07 i mean theres no difference what word will u use, so u can put "bread" for "pidgeon" every time you are bored by "bread" 20:53:05 just thought of something.. 20:53:21 what are those games called, where you fill in the blanks with words, mad-libs 20:53:22 ? 20:54:03 hm 20:54:09 it might be interesting to have various allowed patterns, then words could be grouped to what they are: noun, verb, etc 20:54:42 so then the program would be forced to be at least something like a sentence 20:55:19 then, the form they used could also be a modifier 20:55:27 (not only the wrods they chose) 20:55:40 sounds good 20:55:49 just daydreaming tho hehe 20:55:59 the problem is creating the word lists 20:56:41 hm.. or you could create your own 20:56:59 that'd be even better then it wouldn't be limited to a certain language 20:57:15 although the templates would.. unless they could be changed also 21:01:28 hm 21:01:36 hmm. I wonder how many combinations of 2 words there are where if the letters in both words were mixed together randomly, the two words could be reconstructed given their lengths 21:02:02 omg 21:03:36 i thought i can count vowels in word and add it's length 21:03:49 but it's not good solution 21:04:30 pidgeon, dungeon, nodeGun 21:06:23 hehe, i've got a name for my unfinished language 21:06:25 if you want to account for the ordering, you can multiply by some constant as you go 21:06:50 TSIALFTSAEC 21:07:21 which is: Top Secret Idiotland's Army Language For Top Secret And Evil Calculations 21:12:37 well 21:28:24 -!- ihope_ has joined. 21:28:36 Hmm, test. 21:29:16 Yep. ChatZilla popped into lurkmode again. 21:29:56 -!- ihope has quit (Remote closed the connection). 21:30:34 Some semi-serious lurkage. Not able to do anything but quit entirely. 21:30:40 And lurk. ;-) 21:30:45 -!- ihope_ has changed nick to ihope. 21:39:05 h 21:39:07 hm 21:39:12 still no ideas -.-' 21:40:33 i went to #brainfuck and it didn't exist before.. feel free to come to idle there, as well :p 21:47:29 GOT IT!!! 21:47:30 http://en.wikipedia.org/wiki/Soundex 21:48:49 nice 21:49:13 hehe 21:49:31 Erm, wait. 21:51:42 http://en.wikipedia.org/wiki/Metaphone 21:52:01 mhm 21:52:08 metaphone is much more complex 21:52:35 http://en.wikipedia.org/wiki/Levenshtein 21:58:31 metaphone looks nice 22:18:30 is there any way to un-register the username? 22:18:52 It's /msg nickserv drop 22:19:09 ...followed by username, then password 22:19:47 cheers 22:19:51 i'm free! 22:20:32 So if you leave, we can all pretend to be you? 22:20:33 Cool! 22:20:37 yeah 22:20:49 i couldn't use the registered name stuff 22:20:53 it seems too complex for me 22:21:10 You mean /msg nickserv identify every time you log in? 22:21:24 yeah 22:21:40 i wouldn't remember it 22:21:56 Not even if it were something like "barfoo?? 22:22:04 s/??/"? 22:22:24 the nickserv identify part.. 22:22:32 Oh. 22:22:49 Doesn't NickServ /msg you with a reminder upon connecting? 22:23:02 yeah 22:23:06 -NickServ- This nickname is owned by someone else 22:23:11 Hmm, oops. 22:23:34 or was it chanserv or something. 22:23:41 something at least appears every time 22:24:19 -NickServ- If this is your nickname, type /msg NickServ IDENTIFY 22:29:31 ok, now i registered it again, and tried to add this client to do that /msg nickserv identify stuff automatically 22:29:53 hopefully it'll work 22:33:55 * GregorR reappears. 22:36:21 hi 22:37:43 'ello 22:38:37 Aah! NOOO! 22:38:46 Well, gee, thanks. 22:38:49 Ack. Murble grumble. 22:38:55 Nice to know I get some respect. 22:39:04 "GregorR reappears Aah! NOOO!" 22:39:10 (And no, that wasn't about your "reappearing".) 22:39:27 Heh 22:39:38 := 22:39:42 *:) 22:40:04 GregorR: join #brainfuck! we need more bloo.. eh idlers 22:40:21 ihope: bf with 5 registers 22:40:26 mmh.. blood.. 22:40:32 erh.. idlers 22:41:30 jix: hmm? 22:41:31 what's the point of a separate brainfuck channel? 22:42:00 nothing! 22:42:01 ihope: you need 5 registers for bf to be tc 22:42:04 lament: no idea 22:42:05 just for fun 22:42:12 well, besides that.. 22:51:38 -!- nooga has left (?). 22:52:44 So it's time to write a spec for BF-PR, which is almost the best esoteric programming language. 22:53:01 you mean bf-d? 22:53:32 No. BF-PR. 22:53:59 ok 22:54:02 i got confused 22:54:25 Enumerability time... 22:55:34 * SimonRC get irritated by a webcomic with a slightly blatent Christian message. 22:55:59 which one? 22:56:16 Can't remember now. 22:56:21 Closed the tab. 22:56:23 ah 22:56:31 not that i'd read those anyways 22:56:50 It has a bear with incarnate aspects of his personality. 22:57:25 ...Mmh? 22:58:13 It would be marginaly less irritating without furries. 22:58:28 I only found it because it was linked to from another webcomic that it was doing a cameo of. 22:58:37 ah 23:02:31 what's BF-PR+ 23:02:35 s/+/? 23:03:53 * SimonRC makes dinner. 23:04:37 lament: a language I haven't finished yet 23:19:00 !ps d 23:19:03 1 ihope: ps 23:21:25 AAAH! *bang bang* 23:22:25 jix: 5 registers? 23:22:37 ...Yeah, wouldn't 3 be enough? 23:22:51 Two for the Minsky and one for flow control? 23:23:27 yeah but the proof is for 5 registers 23:23:38 (afaik) 23:24:42 Waah. 23:24:46 He's gone! 23:33:10 -!- jix has quit ("Bitte waehlen Sie eine Beerdigungnachricht"). 23:39:31 ok, now the brainfuck channel is at ##brainfuck 23:39:43 (and owned by gregorr.. beware!) 23:41:29 Buahaha, etc, etc. 23:45:45 !bf_txtgen Like this! 23:46:00 91 +++++++++++++++[>+++++>++>+++++++>+++++++<<<<-]>+.>>.++.>----.<<++.>+++++++++.>+++.+.<-.<+. [594]