00:00:39 -!- moozilla has quit (Read error: 104 (Connection reset by peer)). 00:00:51 -!- moozilla has joined. 00:08:47 -!- Corun has quit ("This computer has gone to sleep"). 00:12:04 -!- Corun has joined. 00:12:18 -!- metazilla has joined. 00:12:19 -!- moozilla has quit (Read error: 104 (Connection reset by peer)). 00:12:29 -!- metazilla has changed nick to moozilla. 00:14:27 -!- moozilla has quit (Read error: 104 (Connection reset by peer)). 00:14:32 -!- moozilla has joined. 00:28:16 -!- moozilla has quit (Read error: 54 (Connection reset by peer)). 00:28:16 -!- metazilla has joined. 00:28:26 -!- metazilla has changed nick to moozilla. 00:30:23 -!- pikhq has quit (Read error: 60 (Operation timed out)). 00:30:43 -!- metazilla has joined. 00:30:50 -!- moozilla has quit (Nick collision from services.). 00:30:52 -!- metazilla has changed nick to moozilla. 00:45:58 -!- ehird has quit ("Caught sigterm, terminating..."). 00:46:03 -!- ehird has joined. 00:46:42 -!- metazilla has joined. 00:46:50 -!- moozilla has quit (Nick collision from services.). 00:46:52 -!- metazilla has changed nick to moozilla. 00:47:53 -!- ehird has quit (Client Quit). 00:47:58 -!- ehird has joined. 00:49:05 -!- ehird has quit (Client Quit). 00:49:11 -!- ehird has joined. 00:49:14 -!- moozilla has quit (Connection reset by peer). 00:49:19 -!- metazilla has joined. 01:19:27 -!- alex89ru has quit ("Verlassend"). 01:22:00 -!- oerjan has joined. 01:27:51 AnMaster: do you like the composition "Leck mich im Arsch" by Mozart? (http://en.wikipedia.org/wiki/Leck_mich_im_Arsch) 01:27:55 O_O 01:27:59 MY INNOCENCE! 01:36:17 ehird: good point, i guess i should've mentioned that in my explanation 01:36:26 yes. those swedes can be a little dense. 01:37:57 ouch, so that's the new google favicon you were talking about 01:39:17 i think it is time to resurrect the old term "sildesalat", used by norwegians to dis the mashup in the corner of the norwegian/swedish union flag 01:40:02 (means "herring salad") 01:57:21 "Leck mir den Arsch fein recht schön sauber" ("Lick my arse nice and clean", K233; K382d in the revised numbering) 01:57:34 mozart++ 01:58:06 mozart is the weirdest great composer 01:59:30 not only he was a clown and a jackass 01:59:34 but his music often sucks 02:03:36 -!- GreaseMonkey has joined. 02:05:24 I'm not the only one hating googles new favicon? 02:07:10 "hating" may be a bit strong 02:07:27 but it looks like something that belongs in a kindergarten, not a search engine 02:07:37 Well, to me it looks like the old blue one, but inverted and with odd colors 02:07:44 At first I didn't spot the g :\ 02:07:56 Looked like a jigsaw puzzle to me 02:18:06 I liked the old one because it wasn't terribly different from the blank tab icon 02:46:02 -!- Corun has quit (Remote closed the connection). 02:46:17 -!- Corun has joined. 02:50:36 -!- BeholdMyGlory has left (?). 02:50:48 -!- FireFly has quit ("Later"). 03:25:50 -!- sebbu2 has joined. 03:33:05 -!- Corun has quit ("This computer has gone to sleep"). 03:43:16 -!- sebbu has quit (Read error: 110 (Connection timed out)). 03:54:13 -!- oerjan has quit ("leaving"). 05:38:17 -!- pikhq has joined. 07:15:42 -!- dbc has joined. 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:18:50 but it looks like something that belongs in a kindergarten, not a search engine <-- perfect summary 08:19:18 Heh. 08:23:31 i want the original back:( 08:23:37 i dunno wtf they think they are doing 08:23:44 the are completely ruining their image 08:24:51 Yeah, that will totally stop you from using it 08:38:49 -!- GreaseMonkey has quit ("e disasterous."). 08:38:57 what are crampons 08:38:57 the spikes ? 08:38:59 i wonder what the slovene word is 08:39:01 They are vaginal inserts that help female and transsexual mountaineers gain an additional foothold while climbing in tricky spots. 08:40:17 psygnisfive. 08:40:22 "Transsexual" 08:40:27 Are you on a tranny chat? 08:40:40 I'm pretty sure no one else would bother to make the addition. 08:40:55 It's like how only hackers differentiate hacker from cracker. 08:41:14 actually 08:41:18 that was in #linguistics 08:41:18 XD 09:08:09 ehird, I committed the more portable fuzz testing script, it is in last trunk. 09:08:18 ehird, hopefully it should work on OS X too 09:25:37 o 09:29:02 fungot: o 09:29:02 oklopol: ut austin too, not surprisingly though. ;p fnord/ fnord/ posse/ fnord/ esoteric not found 09:50:14 -!- metazilla has changed nick to moozilla. 10:01:25 -!- Mony has joined. 10:16:29 guys 10:16:32 we should totally do that 10:17:00 Your mom? 10:17:16 no no 10:17:31 a Miranda-family language with deep pattern matching/unification 10:17:47 consider the fuctional palindrome function: 10:18:31 palindrome [] = True 10:18:31 palindrome [x] = True 10:18:33 palindrome [x] ++ xs ++ [x] = palindrome xs 10:18:35 palindrome _ = False 10:31:07 -!- metazilla has joined. 10:31:07 -!- moozilla has quit (Connection reset by peer). 10:31:14 -!- metazilla has changed nick to moozilla. 10:32:04 -!- moozilla has quit (Read error: 104 (Connection reset by peer)). 10:32:11 -!- moozilla has joined. 10:59:30 only instead of doing it like haskell does it 10:59:33 do it more like thue 11:20:54 -!- moozilla has quit (Read error: 104 (Connection reset by peer)). 11:20:57 -!- moozilla has joined. 11:30:59 -!- moozilla has quit (Read error: 104 (Connection reset by peer)). 11:31:02 -!- moozilla has joined. 11:31:40 -!- moozilla has quit (Read error: 54 (Connection reset by peer)). 11:31:41 -!- metazilla has joined. 11:41:57 -!- metazilla has quit (Read error: 104 (Connection reset by peer)). 11:42:01 -!- moozilla has joined. 11:47:51 psygnisfive, "Miranda-family"? 11:57:40 psygnisfive, can't find it on the esolang wiki 11:58:10 http://en.wikipedia.org/wiki/Miranda_(programming_language) 11:58:21 ah not an esolang? 11:59:11 -!- sebbu2 has changed nick to sebbu. 11:59:31 anyone know if it is possible to get the esolang wiki in the search box in firefox? Like you can get wikipedia there 11:59:55 * AnMaster don't know how those plugin things for search actually work 12:00:47 -!- Slereah has set topic: eat your face | man | http://tunes.org/~nef/logs/esoteric/. 12:01:06 Slereah, what was the old topic? 12:01:19 AnMaster : Click on the icon of the search box while you're on the esowiki 12:01:26 Click on "add esowiki" something 12:01:53 huh ok 12:02:00 so how does it know how to search on it? 12:02:29 I mean, there must be some tag in the html code or something 12:02:31 * AnMaster looks 12:02:39 well mediawiki code is messy 12:02:56 12:02:58 hm probably that 12:03:39 A winner is you 12:40:20 -!- Hiato has joined. 12:41:05 * Hiato wonders if anyone knows any NASM 12:44:52 -!- metazilla has joined. 12:44:57 -!- moozilla has quit (Read error: 104 (Connection reset by peer)). 12:45:01 -!- metazilla has changed nick to moozilla. 12:47:20 yug, okay, let me be more straight forwards: I'm struggling with an int to str routine for my kernel in nasm, can anyone possibly lend a hand 13:09:44 write one in C, compile it with gcc -S, and copy it over? :-P 13:12:40 Hiato: yes! 13:12:53 i wrote a very neat algorithm for that a while ago 13:13:02 cbw 13:13:02 sahf 13:13:02 aaa 13:13:02 aad 0x31 13:13:02 adc al, 0x30 13:13:10 have fun figuring it out 13:13:31 (that "aad 0x31" is that undefined opcode thingie, but it works fine) 13:14:10 this routine (obviously) converts the low nibble in AL to an ascii character in AL, hexadecimal 13:14:44 the #asm people told me that was the worst abuse of the x86 ISA they'd ever seen 13:14:49 i'm rather proud of it 13:14:56 it's 1 byte shorter than the trivial version too 13:15:45 oh and i rely on some undocumented flag behaviour too 13:15:53 but i tested it on a couple of different cpus 13:15:59 so no problem 13:16:45 note that in 32bit code you'll need to 32bit-prefix that cbw, which results in more one byte - no gain there, but it still works 13:17:21 unless you can ensure that AH is zeroed out - in that case you'll even be two (yes, TWO!) bytes shorter than the trivial algorithm 13:17:54 if you know that AF is geing to be cleared on entry you can also leave the SAHF 13:18:25 which makes this a 3-opcode algorithm, containing all mnemonics starting with an "a" 13:18:29 personally, i like that 13:19:00 it's even alphabetically sorted 13:19:11 this is so beautiful code 13:19:14 i could cry 13:20:40 the mnemonics also contain only hexadecimal digits 13:20:51 which kinda documents the purpose of that code 13:21:02 oh my god. i'm so good. 13:23:12 er 13:23:17 okay, where were we 13:23:33 i just answered your question 13:23:55 I have a sort of algorithm, I just have no idea how to continually add to a string/pointer thingy 13:24:11 oh 13:24:14 Well, thing is, this is in 16bit (for starters) 13:24:18 can't help you there 13:24:29 i only know how to convert a nibble to hexadecimal 13:24:44 hrmm.. 13:25:21 alright 13:25:27 i've a suggestion to make 13:25:30 i stop trolling 13:25:35 and you describe your problem? 13:25:43 Sounds fair 13:25:44 deal 13:26:09 Okay, I can (like any fool) divide and mod a number by ten to receive it's digits in reverse order. 13:26:21 I can easily reverse them with push and pop 13:26:29 But, the thing is, I can only handle them one at a time 13:26:32 http://rafb.net/p/5kF2ie38.html 13:26:40 here is the procedure to print an int 13:27:07 well.. what's the problem with that? 13:27:15 the idea would be to mees with mov [.variable],dx so as to store them 13:27:28 In summary, how does one work a running buffer 13:27:34 like s=s+'asd' 13:27:47 by.. dereferencing? 13:28:05 by keeping a counter of the length? 13:28:05 er? I am, regrettably, totally self taught here 13:28:10 Well, that 13:28:15 i'm not sure what you mean.. 13:28:24 unless you are talking about where you get the actual memory for the buffer 13:28:26 would work, but the thing is, I have no idea how. Okay, let me show you what I had 13:29:04 http://rafb.net/p/rlJpoG44.html 13:29:27 it's ok(ish) until 25 13:29:37 where I would normally print it, I try to somehow store it 13:29:45 what is this .t? 13:29:52 ah 13:29:54 it's down there 13:30:04 yea well 13:30:07 ofcourse this doesn't work 13:30:12 :P 13:30:34 you only reserved 4 bytes of memory - even if the code would work, where would you store the digits? 13:30:46 Well, I have no idea 13:30:56 Thing is, I work in psuedo-code, and then try and translate 13:30:59 ".t" becomes the address of that word 13:31:02 please, forgive my ignorance 13:31:18 mov [.t], ... stores something at that address - in that word 13:31:33 yeah, that's the idea there. So at least the concept is right 13:31:36 and "inc .t" should really not assemble, because .t is a constant. can't increment that. 13:31:46 -!- moozilla has quit (Read error: 104 (Connection reset by peer)). 13:31:48 yaeh, it doesn't :P 13:31:49 -!- metazilla has joined. 13:31:58 just use a register 13:32:07 I figured that if I had a pointer, say .t, I could then increase it and store bytes along that addres chain 13:32:11 mov edi, .t 13:32:17 -!- moozilla has joined. 13:32:18 .l1: mov [edi], whatw 13:32:20 *whatever 13:32:23 -!- metazilla has quit (Read error: 104 (Connection reset by peer)). 13:32:24 inc edi 13:32:25 -!- moozilla has changed nick to metazilla. 13:32:26 jmp .l1 13:32:38 okay, lets see :P 13:33:18 ofcourse your buffer needs to be larger 13:33:25 yeah, using db now 13:33:27 because a 32-bit integer can span more than 4 digits 13:33:39 uhm.. using db won't make a difference.. 13:34:03 oh? Well, there we are, another of my consiparcy theories out the window. Double word vs Double byte, no? 13:34:16 uhm no 13:34:22 define word, define byte 13:34:29 aaah 13:34:32 ok, thanks 13:34:39 dec cx 13:34:39 cmp cx,0 13:34:39 jg .pop 13:34:50 cmp is unnecessary, dec sets ZF 13:34:56 cmpax,0 ;is quotient zero? 13:34:56 jnz.push ;if not, get one more number 13:35:03 do "test ax, ax" instead of the cmp. it's more cool. 13:35:09 als shorter 13:35:16 mov cx,0 13:35:17 Ok, thanks, and lol, will do :P 13:35:21 that'd be xor cx, cx ofcourse 13:35:33 yaeh, it started that way, but I got worried (don't know why) 13:35:34 (watch out, you need to reorder the cmpm) 13:35:41 no need to worry 13:36:00 jmp .push 13:36:00 .push: 13:36:02 this is a nop.. 13:36:24 no need for the jmp 13:36:32 -!- puzzlet has quit (Remote closed the connection). 13:36:39 -!- puzzlet has joined. 13:36:56 jl .neg 13:36:57 .neg: 13:37:01 same here ofcourse 13:37:30 Hrmm, okay, thanks 13:37:35 uhm 13:37:36 also 13:37:40 let's press the big button now :P 13:37:42 i'm not so sure that cmp works even, the way you do it 13:37:43 yeah? 13:37:58 ah well. nevermind. should work. still it's... 13:38:02 cmpax,0 ;is quotient zero? 13:38:02 jnz.push ;if not, get one more number 13:38:25 you do "if (ax - 0 == 0)" 13:38:25 that's kinda redundant 13:38:26 just do test ax, ax 13:38:32 yeah, roger that 13:39:00 http://rafb.net/p/Fb3MGr38.html 13:39:09 I think that covered all of what you suggested 13:39:20 that mov edi,.t 13:39:34 should move out of the loop bode 13:39:35 body 13:39:42 you don't want to reset your pointer each iteration 13:39:48 also "db 0" will give you just 1 byte 13:39:49 aha, ok, so to prepop 13:40:00 okay, so what should I set? 13:40:03 jge .push 13:40:03 .neg: 13:40:07 erx 13:40:08 nevermind 13:40:09 :) 13:40:11 14:32 < Hiato> okay, so what should I set? 13:40:19 i don't know, how many digits can a 32bit integer have? 13:40:40 :P 13:40:49 times 64 db 0 13:40:58 replace 64 by.. some number 13:41:50 well, signed, it can only have 2^63/3.xx I think (log10/log2) 13:42:14 er, log2 13:42:20 blag 13:42:31 uhm. 13:42:33 * Hiato blushes 13:42:37 2^64-1 = 18446744073709552000 ... 10 13:42:44 wait 13:42:47 this is 16 bit code 13:42:50 yeah 13:42:58 that means 5 digits. 13:43:34 okay ... and so in asm we write? 13:43:46 times 5 db 0 13:44:01 ok, awesome 13:44:20 Oh yeah :D, it compiled :D 13:44:29 assembled, actually 13:44:38 no idea if it's going to do the right thing, but let's see 13:45:39 dec cx 13:45:39 jg .pop 13:45:41 thats wrong 13:45:47 should be jnz 13:45:57 hrmm.. well spotted 13:46:25 http://rafb.net/p/B80qat21.html 13:46:33 is this what I'm looking for then? 13:46:51 (hell, I really need to learn some asm) 13:47:16 cmp dx,0 13:47:16 jge .push 13:47:40 test dx, dx 13:47:58 jns 13:47:59 okay 13:48:09 should work. i think :) 13:48:34 again, it's somewhat shorter 13:48:39 because there is no "0" immediate to encode 13:49:29 push 2Dh ;- in ASCII 13:49:36 ^ you also need to increment the counter there 13:49:47 -!- Corun has joined. 13:49:56 or it won't print/store the sign 13:50:00 and mess up your stack 13:51:07 Okay, well, thank you very much so far, been a great help (this would have taken me days if not weeks) 13:51:26 hey hey.. does it work? ;) 13:51:32 THing is, I have no idea what it's now returning, seems to assemble just fine, and runs, but I don't print anything 13:51:47 I've confused myself, what's this: mov word bx,[.t] 13:52:04 i don't know 13:52:04 it's moving the address of .t to bx, right? 13:52:07 no 13:52:08 lol 13:52:19 it moves the first word stores there 13:52:26 hrmm 13:52:32 also you should really (really) use ax to return values 13:52:45 so that'd be mov ax, .t 13:52:47 *and* 13:52:52 you need to nul-terminate that string 13:52:57 unless you won't know where it ends 13:53:00 *otherwise 13:53:11 aha, thank you, probably why he print proc doesn't like it 13:53:43 that "mov word" looks strange too 13:53:47 (besides being wrong) 13:53:51 http://rafb.net/p/IOuNyM17.html 13:53:51 mov word bx,[.t] 13:53:58 this "word" there is redundant 13:54:04 okay, this should be alright, right? 13:54:05 nasm always defaults to the register size 13:54:09 okay, noted, thanks :) 13:54:14 you only need to specify the type if you do something like 13:54:20 mov ax, byte [bp] 13:54:29 in which case you'd put it on the right side 13:54:31 ooooh, I see I see 13:55:03 push 2Dh ;- in ASCII 13:55:03 inc edi 13:55:04 ^ no 13:55:05 the counter 13:55:08 cx 13:55:16 arg blarg, ok, thanks 13:55:19 *and* 13:55:27 it won't work that way 13:55:27 :) 13:55:33 because the order is reversedf 13:55:34 -f 13:55:54 so actually 13:55:59 you *should* increase edi 13:56:02 put don't push 13:56:14 mov byte [.t], 0x2d 13:56:23 oh, ok 13:56:26 also you can just specify '-' instead of 0x2d 13:56:28 easier to read 13:56:52 done and done 13:57:00 so 13:57:09 now build a small loop going over the characters and print 13:57:12 i wanna know if it works too ;) 13:57:38 Unfortunately, no, it didn't.. Oh, wait, still haven't zero terminated it 13:58:01 well, in that case you should get some messed up output after the number 13:58:05 it should still work though 13:58:40 nope, no output at all 13:58:52 how unfortunate 13:58:57 okay 13:58:59 let's see. give it me. 13:58:59 anything wrong here? mov dx,123 13:58:59 call k_int_tostr 13:58:59 mov si,ax 13:58:59 call k_scr_sprint 13:59:18 i don't know? 13:59:26 i don't know if k_scr_sprint works? ;) 13:59:31 but show me that int_tostr again 14:00:30 http://rafb.net/p/w7PgD996.html 14:00:42 that's all of the relevant code 14:00:54 int 10h 14:00:56 whats that? 14:01:02 oh 14:01:03 nevermind 14:01:03 heh 14:01:07 interrupt for printing :) 14:01:21 okay, give me a minute 14:01:27 sure thing 14:01:38 mov ax,[.t] 14:01:40 that should be 14:01:42 mov ax, .t 14:01:49 because you need to return the address 14:01:58 oh, not the byte itself... aha 14:02:10 the word, actually 14:02:12 and i don't see you zero-terminating the string? 14:02:23 add dl,30h ;Make it ASCII 14:02:31 using '0' instead of the comment would be more useful :) 14:02:43 mov dx,0 14:02:46 roger that 14:02:50 that's .. no. it's not. nevermind. 14:02:59 is it? 14:03:00 hmh 14:03:12 Unsigned divide DX:AX by r/m 14:03:15 ah yes. nevermind. 14:03:17 okay. try again. 14:03:19 could do xor dx,dx 14:03:21 yes 14:03:25 you should, too 14:03:31 it's a very common idiom 14:03:35 everyone does it 14:03:42 and cpus are optimized for it 14:03:43 roger wilko 14:04:14 something unrelated: you are aware of the fact that you are writing 16bit code there, yes? 14:04:14 meh, still no output 14:04:17 damnit 14:04:20 yes 14:05:15 okay. let's see. 14:05:29 test dx,dx 14:05:29 jns .push 14:05:29 mov edi,.t 14:05:34 there's your problem. 14:05:45 oh? 14:05:57 yes. 14:06:21 er, edi mov thingy before the jump 14:06:23 right? 14:06:35 i'd put it before the test to make things more clear, but yes 14:07:05 I believe it's actually hanging 14:07:07 mov [edi],dx 14:07:09 that's wrong 14:07:10 should be 14:07:15 mov [edi], byte dl 14:07:26 well err 14:07:29 you can leave the byte 14:07:35 nasm knows that dl is a byte ofcourse 14:08:02 and no, without that fix it won't work 14:08:11 dh will be zero, you get a zero-terminated string, no output 14:08:15 er 14:08:18 Ok, well, it still appeas to be hanging 14:08:18 an empty string i mean 14:08:30 hm. 14:08:33 you fixed that too? 14:09:03 the zero termination? no 14:09:09 well do it then ;) 14:09:17 er. 14:09:19 no i mean 14:09:21 14:59 < flexo> mov [edi],dx 14:09:24 should be dl 14:09:26 you fixed that? 14:09:30 ah, righ, yeah, fixed that 14:09:35 add dl,'0' 14:09:36 mov [edi],dl 14:09:46 okay 14:09:47 (seeing as we are in 16bit mode, and dl is a byte) 14:09:49 let's see the new version 14:09:57 way 14:09:58 wait 14:10:01 what's all that edi mess 14:10:06 you are in 16 bit code 14:10:12 it should be "di" and "si" everywhere 14:10:24 do a quick replace, but that's not a problem. it should still work. 14:10:47 http://rafb.net/p/fZ53Oc16.html 14:10:57 oh, ok 14:11:19 i really think this should work now. 14:11:21 give me a minute. 14:12:03 uhm 14:12:14 dx is your input register? 14:12:18 you clear it before the divide.. 14:12:43 damn it 14:12:51 should have been dh, methinks 14:12:58 no 14:13:10 the dividend is stored in dx:ax 14:13:16 so just put the number in ax 14:13:33 roger 14:13:53 i still think this is not the last problem as you should still have gotten *some* output.. 14:14:04 anyway. let's see the new version 14:14:50 http://rafb.net/p/ivrpE876.html 14:15:18 I LOVE YOU 14:15:20 :D 14:15:23 it works 14:15:39 Wow, that was hell, damn, thank you so very very very very very much 14:15:55 it does? 14:15:59 (note: I don't actually *love* you, but for the lack of a better word, I appreciate your help) 14:16:07 lol, why, shouldn't it? 14:16:24 didn't really expect it to. had given up hope 14:16:45 this is embarassing 14:16:50 i'm supposed to be good in this 14:17:00 :P 14:17:06 You are though, fixed it 14:17:07 anyway 14:17:10 you are writing 16-bit code 14:17:11 why? 14:17:18 Simplest OS I could do 14:17:25 32bit is.. well, I don't know 14:17:28 never tried 14:17:30 hm 14:17:31 okay 14:17:43 wanna see my puts/putc/putn routines? 14:17:50 yes please 14:17:57 and perhaps I could steal them too 14:19:19 http://rafb.net/p/RjhxBx56.html 14:19:28 no decimal stuff though 14:20:12 yeah, but, it helps either way, gonna save a copy for future 'reference' 14:20:14 hanks :) 14:20:33 well 14:20:36 you may want the version 14:20:37 -!- FireFly has joined. 14:20:39 which is 1 byte longer 14:20:41 instead of the 14:20:44 cbw 14:20:44 sahf 14:20:44 aaa 14:20:44 aad 0x31 14:20:46 adc al, 0x30 14:20:48 just do 14:20:53 add al, '0' 14:20:53 cmp al, '9' 14:20:53 jng putc 14:20:53 add al, 'a' - '0' - 10 14:21:00 does the same thing - in a clean way ;) 14:21:47 roger that, thanks 14:21:53 ofcourse this code is... you know 14:21:56 "really sexy" 14:22:03 size-optimized to the last byte 14:22:13 i don't think it's possible to trim anything more 14:22:24 I gotta learn assembler 14:22:25 wrote it for a 512-byte bootloader 14:22:41 do you follow osdev.org forums? 14:22:42 which loads the linux kernel in high memory along with a ramdisk 14:22:47 provides a commandline 14:22:52 does keyboard mapping 14:22:59 and prints error messages 14:23:04 wait, in 512 bytes? 14:23:07 yea 14:23:14 damn.... 14:23:19 well, I've got a way to go 14:23:28 http://flexotec.eu/~flexo/p2/tinyldr.asm 14:23:34 it's more like 450 or so 14:23:39 hopefully I'll learn asm at some point 14:23:40 still have 50 bytes to spend :) 14:24:35 heh, I cheated to 512: times 510-($-$$) db 0 14:24:54 this was fun 14:25:00 and the reason for doing it 14:25:02 was even better 14:25:10 Indeed, though, it seems inevitable, fix one thing, break another 14:25:14 as has just happened 14:25:19 wanted to play doom with a couple of guys 14:25:25 we were really drunk at the time 14:25:36 and we were missing a third pc 14:25:39 lol, as only drunk people play that game :P 14:25:49 so i dug up a really old box 14:25:58 some 486 i think 14:26:07 turned out the pci controller on the motherboard was fried 14:26:13 so.. no ide controller 14:26:15 means no harddrive 14:26:22 but that's not a problem, right? 14:26:32 no pci slots too, but the board had two isa slots 14:26:39 heh 14:26:42 you're brave 14:26:45 i had a isa vga adapter 14:26:50 and some 10mbit ethernet adapter too 14:27:02 now the problem was, how to get doom to run on it 14:27:15 as it needs much more space than fits on a floppy 14:27:22 god's truth, most people throw away "garbage" 14:27:23 ... and i only had exactly one floppy drive 14:27:27 and exactly one floppy 14:27:48 right, so what did you do? PAQ8? 14:27:54 so i figured, i needed a very small linux kernel 14:28:01 downloaded some 2.6 kernel 14:28:08 stripped it of all drivers i didn't need 14:28:16 ended up with 1.1mb, which was fine 14:28:21 (all while being drunk) 14:28:29 yea, took me a couple of hours :) 14:28:37 i remembered that you don't need a boatloder, dd'ed it on the disk, tried to boot it but no go 14:28:50 they removed the bootloader from the linux kernel in the 2.6 version 14:28:59 so instead of doing the smart thing and using a 2.4 kernel 14:29:03 i wrote that tinyldr 14:29:09 ofcourse at the time it wasn't as sexy 14:29:21 lots of hardcoded stuff, no command prompt 14:29:25 lol, genius :P 14:29:44 put together busybox 14:29:48 nfs-mounted a directory 14:29:53 played doom for 10 minutes or so 14:29:54 it was fun 14:29:55 :) 14:30:07 * Hiato wonders whether flexo deserves to be shot or idoloized, or both 14:30:22 hehe 14:30:50 talk about disproportionate effort. Why didn't you just write doom from scratch, in binary? Would've been way more worth those then minutes 14:31:19 i'm just no the graphics guy 14:31:21 *not 14:31:29 ;) 14:31:39 no rules about using pre-made .wad's :P 14:32:01 actually i started redoing wolf3d once 14:32:17 (with a software renderer. the old-fashioned way. no opengl-crap) 14:32:37 i think i was 15 at the time 14:32:41 -!- comex has quit (Read error: 60 (Operation timed out)). 14:32:50 was my first "real" project 14:33:10 it could load the levels, you could run around 14:33:21 never got to implement sprites though 14:34:24 damn 14:34:42 hell, I struggled to put together a simple ray-caster in the easiest of all languages 14:34:58 did you manage? 14:35:05 sort of 14:35:07 otherwise i suggest the pxdtut .. tutorials :) 14:35:29 except the way I worked it, it could only draw one wall 14:35:37 TELEMACHOS proudly presents : | 14:35:37 | | 14:35:37 | Part 7 of the PXD trainers - | 14:35:37 | | 14:35:37 | RAYCASTING - WOLFENSTEIN | 14:35:39 | STYLE 14:35:42 those were the days.. 14:35:48 -!- comex has joined. 14:36:05 I didn't use a gird, rather objects with coords etc 14:36:12 heh 14:36:54 i've made a 2d raytracer once 14:37:09 oklopol: have you seen my "al-nibble-to-hex" sequence..? 14:37:10 Ok, now is discouragement time. There is so much left to do, even comparing my kernel to MikeOS v2... 14:37:38 oklopol, not the so called '2.5D'? 14:37:45 Hiato: what's that? 14:37:55 oklopol: as your nickname starts with an 'o' you should be able to appriciate it 14:38:01 *appreciate 14:38:29 Well, it's what we'd like to call three dimensional, as in wolfenstien, duke3d etc, but things can only be rotated in two dimensions, hence 2.5d 14:38:30 well color was also given as width in the result, and it wasn't really raytracing, i don't know the term, follow rays from eyes to objects. 14:38:38 Hiato: umm no. less than that 14:38:41 more like 2.1D 14:38:45 heh 14:38:53 but things can only be rotated in two dimensions, hence 2.5d 14:38:56 i mean it was a 2d arcade flying game. 14:39:07 wait. right. 14:39:10 2d rotation. 14:39:12 just eyecam view 14:39:13 duke3d does that 14:39:34 oh, I see 14:41:21 okay, I need a break. Thanks flexo for all the advice/work, I'm that much closer to something or other. 14:41:59 yea, you're welcome 14:43:54 i really want to get back into the fun area of coding :( 14:44:09 no more crappy win32 c++ or irix c 14:44:34 this is not fun. not really anyway. 15:01:17 -!- Corun has quit ("This computer has gone to sleep"). 15:14:00 -!- Arcanis` has joined. 15:20:06 -!- nono212 has joined. 15:20:08 hi ! 15:20:17 hi ! 15:20:21 how are you ? 15:20:26 fine, thank you 15:20:31 me too 15:20:36 that's cool 15:20:42 yea 15:20:46 more than cool 15:20:56 incredible 15:21:01 ... 15:21:48 i like SPL 15:22:42 ... 15:26:13 super porn language? 15:26:21 LOL 15:26:22 yes 15:26:24 :) 15:26:25 no 15:26:28 yeah that's pretty awesome 15:26:31 oh 15:26:31 ^^ 15:26:35 what then 15:26:41 shakespear i think 15:26:43 super porn xD 15:26:52 huge 15:27:15 KPL, you write with kamasutra positions... 15:27:26 if i create it i will be famous :) 15:27:28 haha 15:27:36 -!- puzzlet has quit (Remote closed the connection). 15:27:43 -!- puzzlet has joined. 15:27:53 BSL, you write with boobs sizes 15:28:00 :) 15:32:40 -!- nono212 has quit ("Bon chat sur Uni-IRC"). 15:37:54 -!- Arcanis` has left (?). 15:44:21 -!- Corun has joined. 16:02:01 BSL: A..L, could mean either statements or values depending on context. "AAGAAIFAJAAJAAJDACIAHDAJDAJGAJAAIEAAA" could be read as "print 'Hello World'" :) 16:02:41 flexo, still there? 16:03:04 'A' begins print statement (or a string?), and then each group of thee characters is a base-12 encoding of ascii-codes, null-terminated. 16:03:09 Hiato: sure 16:03:27 Another brief mystery? (Though this one probably has an obvious solution) 16:03:33 go ahead 16:04:20 http://rafb.net/p/I5Tzfa77.html 16:04:49 Why does this insist of giving me 0FFFF when I call it with 65535, but with 255, it correctly gives 00FF 16:05:54 erk, 3->4, but still same problem 16:05:59 that was a mistake of mine earlier 16:06:13 curious, what do you get with 0xffff-1? 16:06:19 (I know it's vastly unoptimised etc) 16:06:23 let's see 16:06:50 It always gives at least one zero 16:06:51 0FFFE 16:06:58 oh? 16:07:10 Why so, MizardX? 16:07:26 line 34 jumps to format 16:07:34 oh. 16:07:39 yea. didnt see that. 16:08:03 only if cx<4 16:08:07 (note 3->4) 16:08:07 Hiato: you *really* dont wanna do it that way. 16:08:19 in hexadecimal each byte always corresponds to two digits 16:08:19 But I like cheap hacks :P 16:08:25 it's not a cheap hack 16:08:32 it's way more complicated than it should be 16:08:33 longer too 16:08:36 oh? 16:08:52 just go through the number, output the nibble and shift? 16:09:04 meh, you're right.. 16:09:05 heh 16:09:09 see my code 16:09:19 I like to overcomplicate things :P 16:09:27 http://rafb.net/p/RjhxBx56.html 16:09:36 at the bottom there is a putw 16:09:48 which outputs a 16bit word in hexadecimal - 4 digits 16:10:09 you know, that snippet includes routines for everything 16:10:23 putchar(), puts(), and stuff to output a nibble, a byte, and a word in hex 16:10:56 yeah, I suppose. Thing was, I was going to modify this routine to output in any base (one routine for base 10,16,8,2 etc) 16:11:04 flexo: oklopol: have you seen my "al-nibble-to-hex" sequence..? <<< no, is it worth seeing? 16:11:09 oklopol: yes! 16:11:16 cbw 16:11:16 sahf 16:11:16 aaa 16:11:16 aad 0x31 16:11:16 adc al, 0x30 16:11:22 beautiful, isn't it? 16:11:29 :D 16:11:33 now 16:11:35 the best thing is 16:11:42 if you happen to know that AF=0 and AH=0 16:11:46 you can skip the first two instructions 16:11:46 err 16:11:48 so you just have 16:11:50 aaa 16:11:50 aad 0x31 16:11:50 adc al, 0x30 16:12:05 note that the mnemonics are alphabetically sorted :) 16:12:12 heh 16:12:17 and contain only hexadecimal digits 16:12:19 it's just beautiful 16:12:32 and in 3 instructions, which i all abuse 16:12:37 umm 16:12:40 i manage to use both an undefined opcode and undefined flag behaviour 16:12:53 this is just great 16:12:54 are those used for... what's it umm bdc? 16:13:00 binary.. decimal... something 16:13:03 yes 16:13:15 but you don't have to use them for that 16:13:16 the trick is 16:13:24 yeah they need to have nibble stuff 16:13:25 when converting a nibble to hex you usually need to branch 16:13:29 based on a comparision with 10 16:13:34 that's where i got the BCD idea 16:13:52 the first AAA does that (well, it doesn't branch, but internally it does stuff differently when the number is >=10) 16:14:01 and "aad 0x31" is the undefined opcode 16:14:10 it's defined for "aad 10", i use "base 0x31" there 16:14:36 because 0x30 is '0' 16:14:38 well, that looks pretty awesome. 16:14:42 and 0x30+0x31 is 'a' 16:14:44 :) 16:15:00 i understand the general idea 16:15:02 it's really short too 16:15:19 but i don't know what a[ad][dc] do. 16:15:24 or don't remember 16:15:45 http://www.ecsl.cs.sunysb.edu/~srikant/386/AAA.htm 16:15:52 there is a pascal-like description 16:15:59 http://www.ecsl.cs.sunysb.edu/~srikant/386/AAD.htm 16:16:02 it's really simple 16:16:10 in the AAD just replace the 10 for my 0x31 16:16:45 AAA is 1 byte, AAD and ADC both 2 bytes. that's 5 bytes. :) 16:19:57 (and ADC is just add with carry ofcrouse) 16:20:19 oooo 16:20:24 Abusing those BCD arithmetic instructions like that is very nice. 16:20:33 thanks :) 16:20:58 Although I'm not sure I like the "ascii adjust" names of the instructions; there's not really that much "ascii" about them. 16:21:19 for me the initial A means 10, as in bcd. 16:21:20 in my code there isd 16:21:37 i suppose i figured out the true purpose 16:21:44 Z80 instruction set calls it "DAA" (decimal adjust accumulator) which makes more sensity. 16:21:45 the x86 isa is an esolang after all 16:23:15 unfortunatly x86_64 dropped the AAD instruction i think :( 16:23:36 or AAA? one of the two.. 16:24:12 o 16:25:03 i need to publish this crap for the world to see and USE (mwuahaha) 16:27:11 http://rafb.net/p/JLwZz179.html Fixed. It may not be as compact as your solution, but it is elegant in the sense that I can print however much I need 16:29:30 break time 16:31:05 yea 16:31:06 well 16:31:11 you don't have a 512 byte restriction 16:32:58 Random bit of trivia: the TI-86 calculator uses 9-byte BCD floats, with a seven-byte mantissa (14 decimal digits of precision) and two bytes for the exponent. 16:33:29 ... 16:33:43 fizzie: what the fuck? :D 16:33:54 ah well 16:34:05 Hrm, maybe I should learn asm some day 16:34:21 I got into an argument about this in one of our university courses, because the lecturer refused to believe me. 16:34:46 well i wonder why... 16:36:16 She was all "no, no, it might be converted to decimal for displaying, but internally all computatators that do floating-point maths use a binary format". I had to provide proof in the format of some TI-86 databook. 16:38:13 i think the next POWER arch will feature native decimal FP 16:40:17 -!- KingOfKarlsruhe has joined. 17:01:29 http://en.wikipedia.org/wiki/Blind_spot_(vision) 17:01:34 fun! 17:29:44 -!- landeguy has joined. 17:30:12 -!- landeguy has quit (Client Quit). 17:31:11 -!- Corun has quit ("This computer has gone to sleep"). 17:34:11 -!- Corun has joined. 17:35:55 flexo: is a word signed, by default? 17:37:03 rather, how, if possible, can one debug nasm code? 17:38:44 but BCD *is* a binary format, right? 17:40:25 uhm.. 17:45:58 Hiato: you don't really know what you are talking about 17:47:07 nope, I can safely say 17:47:38 which is why I figured stuff it and let's just make it for unsigned 17:48:02 there is such thing as signed words. 17:48:06 there are just words 17:48:20 add/sub work the same for signed and unsigned numbers 17:48:41 and für division and multiplicaation there is div/idiv and mul/imul 17:49:20 the signflag tells you if a signed number is negative, but if it is a signed number at all (and if you choose to interpret the signflat) is your choice 17:49:35 and about debugging... 17:49:43 "nasm code". what's that? 17:49:47 nasm is just an assembler 17:49:58 -!- kar8nga has joined. 17:50:43 Okay, thanks for clearing that up. What I meant was is there a NASM-IDE type thing that will let you trace asm? 17:51:16 uhm. no. 17:51:31 but any debugger lets you step on the instruction level. 17:51:35 you should know that 17:52:06 (that "aad 0x31" is that undefined opcode thingie, but it works fine) <-- huh? I don't know x86 asm well enough to know what you are talking about there 17:52:44 AnMaster: the mnemonic AAD really has no operand 17:52:53 it's binary encoding is 0xd5 0x0a 17:53:06 but people figured out that that 0x0a is actually an operand after all 17:53:14 and you can put in different bases instead of 10 17:53:39 didn't work on certain 8086 clones (notably the nec v20 and v30) but has been silently (undocumented) supported ever since 17:54:33 hm 17:55:22 flexo, Isn't AAD for BCD? 17:55:30 yes :) 17:55:47 flexo, it is invalid in long mode 17:55:50 i know :( 17:55:51 that is on x86_64 17:56:07 i've already written that in the dialog above 17:56:11 ah 17:56:13 missed that 17:56:59 but protected mode (or long mode for that matter) assembler is boring anyway 17:57:27 well 17:57:28 what i mean is 17:57:44 if you do 32bit/64bit assembly you are usually using a proper operating system 17:57:50 using boring system services 17:58:00 also I wouldn't write much asm manually in a kernel, I would only write what is needed in asm, the rest in C, and only if there were performance issues, I would rewrite parts in asm if that would help. I would profile before of course 17:58:05 using elaborate sane APIs 17:58:23 assembler isn't much fun these days 17:58:27 RISC took it all away 17:58:27 flexo, yes I'm the type of person who end up writing sane APIs if there are none 17:58:38 also, x86 is CSIC 17:58:52 flexo: http://en.wikipedia.org/wiki/Blind_spot_(vision) <<< you haven't noticed that yourself? 17:58:59 it is the most bloated CISCy I ever seen 17:59:04 yea.. but if you want to write performant code you have to reduce the instruction set. 17:59:09 (on modern cpus that is) 17:59:37 writing speedy application-level 32bit x86 assembly isn't so much different from handcrafting RISC assembly 17:59:56 except the fact that you don't always have to explicitly load/store 18:00:03 still, it's boring 18:00:33 flexo, you need to calculate on instruction cycle count on x86 18:00:39 on RISC that is much less of an issue 18:00:44 not really 18:01:11 I mean, usually most n cycles, with a few, maybe call and similar, takes more 18:01:15 but on x86 it varies a lot 18:01:19 not anymore 18:01:29 the only exception being mul/div 18:01:56 flexo, really? It varies a lot according to the AMD64 optimising guide. 18:01:57 besides that all instructions you *should* be using execute in n "cycles" (where n is constant) 18:02:27 flexo, depends, what about SYSENTER/SYSEXIT 18:02:27 okay, i admin, i've been out of the loop for a while 18:02:35 iirc they vary a bit 18:03:06 but up until the athlon XP AMD (and intel too) tried to bring the compiler generated instructions all down to n cycles 18:03:15 where n was 1/3 für the athlon xp 18:03:17 yep, but that may be because that is the Intel one and this is AMD docs 18:03:27 optimizing code is about so much more than fiddling with the cycle counts 18:03:39 yea 18:03:41 flexo, well most take integer cycles 18:03:41 it's inserting nops 18:03:49 if you check latency table 18:03:52 so your instructions are aligned with a cacheline 18:04:14 AnMaster: seriously, what about those instructions? 18:04:22 flexo, what about which ones? 18:04:29 if you wanna multiple, you have to use the multiply instruction (except for those shift cases, yes) 18:04:39 even the LEA tricks are not really worthwhile anymore 18:04:52 sometimes they are faster, usually they just clog address generation 18:04:58 flexo, I read about reducing that too, it was quite an interesting research paper 18:05:13 about strength reducing modulo by using addition and shift 18:05:19 to work for "not power of 2 cases" 18:05:21 yes 18:05:24 been there 18:05:25 it talked about division and so on too 18:05:26 done that 18:05:35 for multiplication it's *slightly* faster 18:05:40 yo. 18:05:48 but only very slightly 18:05:59 flexo, personally I write C and watches happily, and *without* a headache while it does that strength reduction for me :P 18:06:05 s/it/gcc/ 18:06:06 yea 18:06:11 my brainfuck compiler actually does that 18:06:13 actually 18:06:24 a large part of the compiler consists of that multiplication-optimization 18:06:25 because it was fun 18:06:26 ;) 18:07:15 i suppose not as sophisticated as your research paper though :) 18:07:17 flexo, hm my bf compiler compiles to C (with some optimising of course, like converting balanced loops with no IO to polynoms and such) 18:07:36 AnMaster: you should try outputting assembler instead 18:07:38 flexo, anyway I'm looking for the link to that paper 18:07:51 flexo, well, sure, but I use several different arches daily 18:07:55 when i make my compiler output c and use gcc -O3 to compile the resulting binary is actually slower 18:08:03 I have no interest in writing ppc, x86 and x86_64 versions 18:08:08 of an user space program 18:08:09 (and takes like 100 times more time) 18:08:23 flexo, what I might do in that case would be output LLVM code 18:08:45 (with some optimising 18:08:45 of course, like converting balanced loops with no IO to 18:08:45 polynoms and such) 18:09:01 ^ was that erlang thingie yours? 18:09:41 flexo, er? I use Erlang sometimes, but what has that got to do with a compiler to C? 18:09:50 no wait 18:09:51 haskell 18:09:57 anyway the bf compiler was written in C too 18:10:04 oh okay 18:10:06 flexo, found it: http://www.cag.lcs.mit.edu/commit/papers/99/mdopt-TM.ps 18:10:10 there is a haskell bf2c compiler floating around 18:10:25 flexo, and I said I was *learning* haskell, but maybe you were drunk then, don't know 18:10:27 does some good optimization. not as good as mine though ;) 18:10:42 flexo, link to source code of yours? 18:10:44 no, the one i got really is written in haskell 18:10:47 well 18:10:52 i could upload it 18:10:54 but i warn you 18:10:56 flexo, I'm afraid my optimiser and constant propagator is rather a mess 18:10:58 it's unmaintainble mess 18:11:04 oh you too? 18:11:04 and needs a complete rewrite 18:11:04 :) 18:11:15 it produces *very* efficient code though 18:11:33 give me a second, i'll upload it 18:12:02 flexo, same goes for mine, constant propagation (after a [-] it tries to track that memory cell so [-] -> "set 0" (special cased), [-]++ -> "set 3") 18:12:12 yes 18:12:13 mine too 18:12:16 (and it reorders when possible) 18:12:20 i also do "while" => "if" optimization 18:12:22 reordering 18:12:26 "mac" => "mul" 18:12:35 flexo, what about turning +++[>++++<-] into a single polynom? 18:12:37 did you do that 18:12:44 sure? 18:12:48 ok 18:12:50 well actually 18:12:54 "mac" => "mul" <-- what would that be? 18:12:55 that one will become a single add 18:12:56 ;) 18:13:01 well 18:13:02 flexo, yes it would in the end 18:13:17 "multiply and accumulate" becomes just "multiply" when adding to a zero ofcourse 18:13:33 strips out more dependencies, often leads to other optimization passes further striping out code 18:14:08 flexo, but point is you can turn any balanced loop (even nested ones, though that is messy) with no IO into a polynom 18:14:18 i do 18:14:24 no wait 18:14:25 i don't 18:14:32 not nested ones 18:14:35 but yea, ofcourse you can 18:14:38 flexo, hm I'm not sure about this "multiply and accumulate", example bf code? 18:14:47 your example is an example 18:15:01 it's multiplication and adding the result to a cell 18:15:07 that's MAC in assembler 18:15:32 flexo, only issue is GCC bails out with ICE when compiling the generated file for lostkingdom... Since I put all the generated code in main() 18:15:43 lostkingdom, whats that? 18:16:08 I guess I should split the tree up 18:16:08 flexo, a huge text adventure in bf 18:16:13 flexo, considered somewhat like "acid test for bf implementations" 18:16:21 http://jonripley.com/i-fiction/games/LostKingdomBF.html 18:16:34 2.08 MB bf file :D 18:16:34 http://flexotec.eu/~flexo/pinky.tar.gz 18:16:37 thats my implementation 18:16:38 beware 18:16:45 just copied my dev directory 18:16:48 might be seriously broken 18:16:53 seems to be working though 18:17:01 "beware of the brainfuck interpreter", nice idea 18:17:08 instead of "beware of the dog" 18:17:36 flexo, is it 64-bit clean :D 18:17:38 ;P 18:17:39 (linux / x86 "ofcourse") 18:17:42 no idea 18:17:52 give it a try. curious. otherwise do -m32 18:17:56 oh, and you'll need nasm 18:18:04 oh. and it will definitly generate 32bit code 18:18:08 flexo, I don't have nasm, I have yasm though 18:18:18 won't do i think 18:18:23 flexo, personally I prefer AT&T syntax 18:18:29 i hate at&t 18:18:40 at&t syntax is what gnu as uses right? 18:18:43 flexo, well everyone arch except x86 seems to use it 18:18:46 yea so? 18:18:48 if so, AnMaster, you suck even more 18:18:48 it still sucks 18:18:56 flexo, I'm used to it 18:19:03 AnMaster: yes, you can get used to it 18:19:03 from ppc and so on 18:19:07 i used it too for a while 18:19:12 i just don't like it ;) 18:19:17 you're wasting your time flexo 18:19:36 flexo, well someone used to vi will find emacs hard and someone used to emacs will find vi hard 18:19:43 so 18:19:44 lets see 18:19:48 how many cells does LK need? 18:19:56 flexo, no clue 18:19:58 a lot iirc 18:20:16 is it okay with 32bit cells?= 18:20:22 looks so 18:20:31 You can see: some matches (2) 18:20:31 >get matches 18:20:31 I didn't understand that. 18:20:31 > 18:20:32 !? 18:20:41 perfectly fast 18:20:43 flexo, I get lots of warnings 18:20:45 feels like a normal c program 18:20:49 and compiled in 3 seconds 18:20:52 from compiling pinky 18:21:04 flexo, want me to pastebin? 18:21:11 stop being such a compiler warning nazi 18:21:12 sure 18:21:13 :| 18:21:13 I did make clean before 18:21:18 ehird, standard cflags... 18:21:23 it shouldn't do that 18:21:31 http://rafb.net/p/ECxMtZ83.html 18:21:31 there 18:21:31 oh wait 18:21:37 i'm not exactly sure what "standard cflags" are to AnMaster but I'm worried 18:21:50 ehird, CFLAGS='-pipe -march=k8' 18:21:53 no warings 18:21:55 warnings* 18:21:57 no -O 18:22:02 AnMaster: yea, it's cool 18:22:06 are you going through rehabilitation or something 18:22:06 anyway it ignored my cflags 18:22:09 i get most of them too 18:22:10 src/opnode.c:222: warning: format ‘%p’ expects type ‘void *’, but argument 3 has type ‘struct OpNode *’ 18:22:15 well that's idiotic. 18:22:20 indeed 18:22:21 ehird, no I just use -Wall and so on for my own projects 18:22:23 and I still do 18:22:58 anyway, it should work. 18:23:09 don't know about these warnings 18:23:15 i think most of them creeped in by a gcc update 18:23:15 ld: i386 architecture of input file `LostKng.o' is incompatible with i386:x86-64 output 18:23:17 hah 18:23:27 $ file LostKng.o 18:23:27 LostKng.o: ELF 32-bit LSB relocatable, Intel 80386, version 1 (SYSV) 18:23:36 yea well 18:23:37 flexo, well apart from your call to ld not working 18:23:43 what did you expect 18:23:59 that's what you get for using 64bit :p 18:24:00 ld -m elf_i386 LostKng.o 18:24:01 that works 18:24:11 >t matches 18:24:11 You need to specify an item. 18:24:11 >t some matches 18:24:11 You need to specify an item. 18:24:11 >t2 18:24:13 Taken. 18:24:15 > 18:24:18 lame 18:24:22 flexo, eh? 18:24:22 AnMaster: i compiled with -f1000000 18:24:33 flexo, and what does -f1000000 do 18:24:33 ? 18:24:38 fieldsize 1000000 18:24:42 ah 18:24:45 flexo: of course it's lame 18:24:47 it's brainfuck :P 18:24:50 well, highly retarded basic 18:24:51 flexo, well 18:24:52 compiled to brainfuck 18:24:52 $ ./pinky 18:24:52 Usage: pinky FILE 18:24:59 default is 66553... well... actually it's 665530 because i messed around with the hardcoded stuff 18:25:15 flexo, don't you grow on demand? 18:25:18 AnMaster: yea.. see pinky.c 18:25:20 mine does 18:25:21 nope 18:25:28 would be easily doable though ofcourse 18:25:28 flexo: why not just use the main RAM 18:25:31 which means it is slower but more robust 18:25:34 no 18:25:35 not slower 18:25:41 and trap segfaults 18:25:41 just mmap and mprotect a page at the end 18:25:44 trap the signal 18:25:46 :DD 18:25:47 flexo, well since I need to check for out of bounds in mine 18:25:48 flexo: WE THINK ALIKE. 18:25:52 I don't trap segfault 18:25:54 but you could 18:25:59 out of bounds checking is for losers 18:26:04 AnMaster: interesting option is -d 18:26:10 which dumps the optimized IL 18:26:16 flexo, you found mine? 18:26:24 mine? yours? what? 18:26:38 he's talking about his. 18:26:42 flexo, iirc mine dumps optimised parser tree with -d too... 18:26:46 so you confused me there 18:26:48 oh. 18:26:54 flexo, iirc fizzie traps segfault in jitfunge 18:26:54 no. talking about mine. 18:27:13 anyway about trapping segfaults and messing with stuff in the registers, is this even documented? 18:27:21 I mean, of course it isn't portable 18:27:29 between different cpus 18:27:34 ofcourse it's documented 18:27:41 flexo, what man page? 18:27:43 should even be portable 18:27:49 man mmap, man mprotect, man signal 18:27:51 flexo, to freebsd and so on? 18:28:00 i think so 18:28:03 should be POSIX 18:28:20 flexo, I mean about trapping segfaults, what if you segfault for something else 18:28:23 like a bug 18:28:31 sigh 18:28:42 SBCL traps segfault to handle allocation. 18:28:46 I'm pretty sure it's not an issue. 18:28:55 ehird, SBCL uses an 8 GB static array 18:28:56 AnMaster: you enter non-portable areas there 18:29:05 you can check the instruction pointer and check what instructions caused the sefault 18:29:05 AnMaster: ... 18:29:06 you have no idea what you're talkinga bout 18:29:09 but that's obviousl not portable 18:29:27 ehird, well I know it uses a huge static array and depends on linux overcommiting memory 18:29:32 er 18:29:34 on x86_64 it is 8 GB, on x86 less 18:29:36 actually it's sigaction() 18:29:37 sbcl works on non-linux. 18:29:38 not signal(), sorry 18:30:05 CONFORMING TO POSIX.1-2001, SVr4. 18:31:20 AnMaster: so. the compiled program worked? 18:31:25 flexo, yes 18:31:39 ehird, http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=474402 18:31:55 yes 18:32:02 but sbcl _does_ trap segfault 18:32:05 ok not static, it was mmap() 18:32:10 that's a fact 18:32:10 ehird, why would it need to do that? 18:32:17 -!- kar8nga has quit (Connection timed out). 18:32:22 if it uses a huge area that it depends on is allocated as needed 18:32:23 AnMaster: ask the sbcl devs. 18:33:05 uhm. 18:33:13 mhm 18:33:34 muhm 18:33:35 if you want to implement an on-demand growing blob of memory 18:33:39 you have to use mmap()? 18:33:47 well yeah 18:33:48 flexo, is there any -h or --help for pinky? 18:33:50 then trap segfault 18:33:55 AnMaster: can't you read c? 18:34:03 AnMaster: yes, it's $ vi src/pinky.c 18:34:11 see main() 18:34:17 bash: vi: command not found 18:34:17 Did you mean: emacs? 18:34:17 flexo: careful 18:34:19 ;P 18:34:20 no 18:34:20 AnMaster is about to start 18:34:21 yeah. 18:34:22 i meant vi 18:34:30 as it's guaranteed to be there 18:34:36 as specified by the single unix spefication 18:34:47 AnMaster probably uninstalled it manually because he hates vi and everyone who uses it and is objectively right and wants to prove a point. 18:34:48 (yea, not exactly true, but close enough) 18:34:56 flexo, well, many linux distros use nano by default these days 18:35:05 not when you run vi(1). 18:35:06 vi was not default, nor was emacs 18:35:09 only nano was 18:35:14 that is utterly irrelevant 18:35:18 which is an interesting way around the editor war 18:35:20 AnMaster: didn't you just babble about portability? 18:35:36 flexo, yes, and in practise vi isn't portable 18:35:42 yes it is. 18:36:14 flexo: you're asking for consistency out of AnMaster 18:36:23 ehird: yea, i'm slowly getting it 18:36:34 yes, until he dodges the question with a bad joke 18:36:46 yea 18:36:51 also what I asked was: is this documented, and well defined, to trap sigsegv and then jump back to continue exection after calling mmap() 18:36:55 yes. 18:37:00 why don't you read the standard 18:37:04 instead of getting everyone else to. 18:37:26 ehird, iirc some standard, C or POSIX say it is undefined to touch anything but volatile variables in signal handlers 18:37:29 i know that's what you asked, and that's why i already had given you an answer to that question 18:37:43 i doubt posix says that 18:37:54 flexo, I'm quite sure C99 does 18:37:58 perhaps you could declare the mmaped stuff volatile then 18:37:58 so? 18:38:01 your point being...? 18:38:02 OMG CRAZY 18:38:58 According to POSIX, the behavior of a process is undefined after it 18:38:58 ignores a SIGFPE, SIGILL, or SIGSEGV signal that was not generated by 18:38:59 kill(2) or raise(3). 18:39:00 oh well 18:39:11 see? 18:39:14 I was right :P 18:39:22 you're right only going by a tedious, broken standard 18:39:30 here's a challenge: find a system it breakso n 18:39:35 ehird, one which you suggested I should read just above 18:39:36 that more than 3 people use 18:39:37 I'll wait here 18:39:39 why don't you read the standard 18:39:43 AnMaster: yes, because you were the one asking about it./ 18:39:44 you referred to it as well 18:39:50 ... 18:40:23 flexo: link to pinky? 18:40:26 ehird, that you can never admit that you lost in a discussion... 18:40:31 http://flexotec.eu/~flexo/pinky.tar.gz 18:40:31 a character flaw 18:40:36 again 18:40:38 beware 18:40:40 AnMaster: umm, that's because I didn't 18:40:42 moron 18:40:43 this is ugly unmaintanble code 18:40:45 none of you can, I imagine 18:41:02 Badger: unlike AnMaster i don't react with a joke in that situation, at least 18:41:04 complex, ugly, unmaintanble code 18:41:07 ehird, yes, but you then pretend you said something else all the time, even when the scrollback shows you didn't 18:41:12 what 18:41:21 (this happens when people who don't finish highschool end up writing compilers) 18:41:22 you're an idiot. I told you to read the standard because YOU ASKED IF IT WAS STANDARD 18:41:36 that is ABSOLUTELY not inconsistent with calling the standard stupid 18:41:36 ehird, and I said I was pretty sure it wasn't 18:41:40 then you said it was 18:41:41 that is also irrelveant 18:42:02 but i plan on doing a new pinky 18:42:09 what's pinky? 18:42:14 along with a proper CFG and SSA optimization 18:42:18 Badger: http://flexotec.eu/~flexo/pinky.tar.gz 18:42:26 my highly optimizing brainfuck compiler 18:42:31 (x86, linux) 18:42:32 o_O 18:42:38 oh, linux only 18:42:38 :< 18:42:44 ehird: should be 18:42:46 you wrote a bf compiler 18:42:47 oh wells 18:42:48 very easy to port 18:42:51 bsd? 18:42:57 ehird, also I was waiting for the pdf with POSIX to load, for some reason it hasn't yet finished opening 18:42:57 flexo: err, you could say bsd :-) 18:43:00 darwin? 18:43:03 :x 18:43:03 * Badger shudders 18:43:04 maybe 18:43:05 :-) 18:43:13 alright 18:43:25 Badger, I agree 18:43:30 just look into x86.c 18:43:33 about the shudder for darwin 18:43:39 hah 18:43:44 see the GETC/SETC case 18:43:44 I meant for a brainfuck compiler :P 18:43:52 Badger: ssh, don't ruin his ideological associations 18:43:58 and replace by a syscall on your system 18:43:59 Badger, well what is so odd with that? Many people have written that 18:44:08 Badger, some to asm, some to machine code, some to C 18:44:12 and so on 18:44:44 esoteric languages are inherently evil :P 18:44:46 ehird: i could also give you a ruby script which converts the IL to C 18:44:55 Badger, what on earth are you doing here then? :P 18:45:02 but as i said, gcc -O3 produces worse code than pinky directly 18:45:06 flexo, cool 18:45:11 * ehird peeks at x86 18:45:17 and takes ages to compile 18:45:20 #ifdef __STRICT_ANSI__ 18:45:20 # undef __STRICT_ANSI__ 18:45:21 #endif 18:45:23 :D 18:45:25 hehe 18:45:39 #if defined(DJGPP) 18:45:39 #error djgpp 18:45:41 #include 18:45:43 #error posix 18:45:45 #elif defined(POSIX) 18:45:47 is that meant to make sense? 18:45:55 nope 18:45:57 don't remember 18:45:59 ha 18:46:01 i did a djgpp port 18:46:11 but i suppose this "branch" doesnt include that code 18:46:14 lost it :) 18:46:50 Hm 18:47:19 the compiler actually gets faster with more optimization passes 18:47:27 because the real bottleneck is all the sprintf() outputting the assembler 18:48:15 ehird: oh, and you need to adjust the program epilogue too at the end of the file 18:48:19 to terminate the process 18:48:22 but on the other hand 18:48:26 it will die anyway 18:48:33 hehe 18:48:43 18:43 CTCP-query VERSION from flexo 18:48:44 oh sneaky 18:49:34 just spotted a buf 18:49:35 bug 18:49:39 if(curr->type == MUL && curr->val == -1) 18:49:46 i'm fairly certain that should be val < 0 18:49:47 i spot bufs all the time 18:50:51 I noticed quite a few open source projects with a section titled "Executive Summary" recently on their websites, in their README or such. One example is the README of valgrind. Hm, maybe I should add one to cfunge ;) 18:50:54 ~ 18:50:57 -!- Corun has quit ("This computer has gone to sleep"). 18:51:07 ehird: oh, and see pinky.h 18:51:15 you should probably add a new target 18:51:17 "Executive summary: this program has no use whatsoever." 18:51:23 feel free to do it and send me a patch ;) 18:51:29 :) 18:51:50 -!- Corun has joined. 18:52:05 olsner, well it would end up very strange for a esolang interpreter 18:52:21 * AnMaster wonders if Java2K has one... It would fit perfectly with it 18:53:38 pinky needs a register allocator too 18:55:27 and i'm not optimizing nested ifs to compare less/greater 18:56:17 flexo, in the optimiser are you working on the program in the form of a tree or? 18:56:23 yes 18:56:36 flexo, which file is the optimiser in? 18:56:39 pinky.c 18:56:52 optimize() 18:57:34 * AnMaster looks for how the OPTIMIZATION macro is defined 18:57:38 omg my leg is numb 18:57:43 evil preprocessor magic 18:58:01 it's just for debugging purposes 18:58:11 flexo, so what parameter is relevant then? 18:58:19 what do you mean? 18:58:32 oh wait 18:58:35 just ignore the OPTIMIZATION() itself 18:58:37 it is just a debug macro? 18:58:38 ah ok 18:59:11 it dumps the cell contents on entry along with the performed optimization (code line) when done 18:59:17 err 18:59:25 the opnode, not the cell 18:59:26 OPTIMIZATION(curr) {\n ... \n} <-- to me that looks like a macro that does something stupid, like a condition with nothing after, since there was a { on the same line 18:59:30 and no ; after 19:00:46 OpNode *scope; ? 19:00:54 what is the scope? 19:01:01 read the code 19:01:11 ehird, what do you think I am doing? 19:01:18 asking flexo to read the code for you 19:01:19 I'm reading the data structure definition 19:01:36 there is no documentation, thus the data structure is undocumented 19:01:41 so? 19:01:42 there's code. 19:01:43 read the code. 19:01:49 that's surprisingly common in programming. 19:02:01 so 19:02:29 OPTIMIZATION() turns to a for() loop 19:02:47 19:53 < AnMaster> what is the scope? <= the parent node in the tree ofcourse 19:03:04 flexo, then why is there a OpNode *parent; member as well 19:03:05 (my internet connection is somewhat fleky right now) 19:03:32 i don't know, what line are you talking about? 19:03:50 opnode.h 19:03:54 struct OpNode 19:04:00 I'm talking about it's members 19:04:08 -!- Corun has quit ("This computer has gone to sleep"). 19:04:15 ah 19:04:40 you know 19:04:43 yes? 19:04:45 that's a good question 19:05:00 i think i remember 19:05:18 i added that for the LOAD/MUL 19:05:29 a MUL is inside a LOAD in the tree 19:05:38 but it's scope is actually the LOAD's parent 19:05:48 LOAD() is "set constant"? 19:06:06 well.. LOAD loads a bf cell into the accumulator 19:06:22 hm ok 19:06:41 MUL multiplies it with a constant and stors the result in a cell 19:06:50 MAC adds the result 19:07:12 copying is done by MUL 1 19:07:19 my internet connection is really breaking down here 19:07:23 i need my own line 19:07:33 WEP WLANs just don't do the job 19:08:15 i spent the last 10 minutes shifting my laptop over the table 19:08:33 flexo, hm how would you optimise this +++[>++<<--<[-]+>>-] 19:08:42 I assume to a few set constants 19:09:00 at least if it was know the "iterator" cell was 0 before +++ 19:09:24 trying to find the optimal position to get in reach of the house on the other side of the street 19:09:35 yes 19:09:41 ssh, AnMaster will rant to you about how that's illegal 19:09:47 in case you weren't aware or something 19:09:56 ehird, why would I do that? 19:10:00 you always do 19:10:22 ehird, when did I "rant" about using wlan without permission? 19:10:24 hm. 19:10:27 I don't remember ever doing it 19:10:29 actually i kinda fail to optimize that. 19:10:30 oh well. 19:10:33 you rant about X for all X where illegal(X) 19:10:56 no, it's cool 19:11:01 i do MAC spoofing and all 19:11:14 -!- asiekierk has joined. 19:11:23 ehird, well I want a specific example of this please for WLAN. Otherwise it is just spreading lies 19:11:31 http://www.youtube.com/watch?v=9ymGAujZAaY - ...wtf 19:11:35 all traffic is routed to a server in the netherlands 19:11:36 no, it's based on past behaviour 19:11:52 encrypted with XTEA 19:12:01 i'm kinda paranoid when it comes to WEP 19:12:03 for obvious reasons 19:12:04 flexo, hm? 19:12:05 :) 19:12:16 hm hm? 19:12:18 " all traffic is routed to a server in the netherlands" <-- what? 19:12:27 ...is anyone watching my animation!? 19:12:29 sounds like an China... 19:12:36 if they route everything to a server 19:12:53 yea.. when i break in other peoples WLANs i never just use their router 19:12:59 hacked together a simple VPN 19:13:05 well, not really a VPN 19:13:09 it's very specific for my purposes 19:13:11 flexo, also I never heard of such stuff in the Netherlands, I thought they were democratic and didn't reroute peoples traffic 19:13:29 also, it sends all packets 5 times 19:13:39 because my wireless links tend to be somewhat.. unstable 19:13:44 oh you mean you route through a server in the netherlands 19:13:44 AnMaster: huh? 19:13:47 yes 19:13:58 signal-to-noise ratio: +6 dB 19:13:59 not that the gov in netherlands route traffic strangely 19:14:04 typing via ssh is kinda hard right now 19:14:06 right 19:14:16 asiekierk: that was awesome 19:14:26 ...seriously? 19:14:41 Do I have such a talent to make puppet toons? 19:14:45 no 19:14:45 ;) 19:14:46 :D 19:14:51 hopefully! 19:14:53 well it was... unexpected. 19:14:58 I thought that was really awesome :/ 19:14:58 i have no own internet connection for 2 years now 19:15:00 but i just moved 19:15:07 and the WLANs here just suck 19:15:11 getting ADSL again.. 19:15:16 asiekierk, question, since I don't often use youtube, how do you rate 0 stars? 19:15:17 flexo i have a wlan you could use. 19:15:24 thanks very much 19:15:24 AnMaster: don't be a jerk 19:15:26 I mean the lowest possible seems to be 1 star 19:15:28 AnMaster: You can't. 19:15:35 You can rate 0 stars by not voting at all though 19:15:38 :D 19:15:38 ehird, no I was wondering in general 19:15:48 if the lowest you can rate is 1 star 19:15:52 then maybe you can't rate 0 stars 19:15:54 ehird, because if he posts to youtube he must obviously know it 19:15:56 omfgbbq 19:16:14 ehird, I thought it was a case of PEBKAC 19:16:15 ... 19:17:18 boring! 19:18:10 Wait, did anyone really watch my movie, cuz i see 3 views 19:18:19 -!- ehird has quit ("Caught sigterm, terminating..."). 19:18:23 -!- ehird has joined. 19:18:23 and 2 people other than you watched it 19:18:24 i didn't 19:18:29 asiekierk: just assume no one cares about anything anyone else does. desperately wanting people to give an opinion when they aren't interested, that is, pretty much every time you don't get a spontaneous answer from anyone, just forces them to try to find a nice way to tell you they don't care. 19:18:29 because i can't 19:18:35 i get only like 30 kb/s.. 19:18:43 asiekierk, I did, but not using youtube, I don't have flash 19:18:56 I use another way to use mplayer directly on the video 19:18:56 AnMaster: what happened at the end? 19:19:12 asiekierk, I'm still waiting for the cache to fill 19:19:12 if you watched it, you should know 19:19:22 oh-kay 19:19:25 Going to wait 19:19:28 it is 2 seconds in and report "speed: 0.0" 19:19:33 * AnMaster think connection broke 19:19:37 and asiekierk's infinite patience shows again 19:20:06 you mean n'tfinite 19:20:12 i mean 19:20:12 finite 19:20:19 :) 19:21:11 well now it worked, but I aborted after half a minute, can't stand that high pitched voice when I have a headache 19:21:35 :P 19:21:39 Low it down 19:21:42 the volume 19:21:52 asiekierk, well that doesn't help for the high pitched sound 19:21:58 or maybe you could use audacity or something to lower the pitch 19:22:01 unless I go to 0 19:22:08 go to 0 then 19:23:52 ^bool 19:23:52 No. 19:23:57 another ep? 19:23:58 ^bool 19:23:58 No. 19:24:01 asiekierk, well at the end the screen goes black 19:24:02 sure? 19:24:04 ^bool 19:24:04 No. 19:24:05 there is the answer 19:24:06 k 19:24:14 then reanswer, another ep? 19:24:16 ^bool 19:24:16 Yes. 19:24:17 k 19:24:20 AnMaster: What is the puppet playing during ~1:15 - ~1:30 19:24:25 is it doing anything 19:24:34 ^help 19:24:34 ^ ; ^def ; ^show [command]; lang=bf/ul, code=text/str:N; ^str 0-9 get/set/add [text]; ^style [style]; ^bool 19:24:35 asiekierk, something behind a logo saying asie 09 19:24:38 ^show bool 19:24:45 Oh, the volume is 0 :/ 19:24:46 asiekierk, it seems to be using a ciggarette in some strange way, 19:24:50 and then falls down 19:24:54 AnMaster: It's a Stylophone 19:24:57 could be a pen? 19:24:59 a stylus-based instrument 19:25:03 ok 19:25:06 ^show bf bool 19:25:07 stylophones are awesome 19:25:18 ehird: Don't tell me you like have one 19:25:19 you people are weird 19:25:21 -!- nice has joined. 19:25:25 asiekierk: yes, I do. 19:25:31 woohoo! 19:25:44 -!- nice has changed nick to nice_ka. 19:27:53 -!- bsmntbombdood has quit (Read error: 110 (Connection timed out)). 19:28:21 -!- KingOfKarlsruhe has quit (Nick collision from services.). 19:28:26 -!- nice_ka has changed nick to KingOfKarlsruhe. 19:28:38 -!- bsmntbombdood has joined. 19:29:00 asiekierk, well I don't really like electronic sounding music 19:29:06 no offence meant 19:29:13 it's just a matter of taste 19:29:29 ok 19:29:35 I finally got white socks 19:29:43 mhm? 19:29:46 So I can start my Sock Puppet Video Blog! 19:29:48 about as much as a matter of taste as when AnMaster spend ages whining about how much 'rock' sucked 19:29:55 [.....] 19:30:01 ehird, I said that I disliked it 19:30:05 asiekierk: could you have more violence, obscure jokes, swearing and sex in your next vid? 19:30:07 no you didn't 19:30:07 I didn't say this was true for everyone 19:30:15 oklopol: I'm only a kid 19:30:15 you know. sox park 19:30:17 obviously taste differs 19:30:21 oklopol, hehe 19:30:27 more like The Sockshit Stream 19:30:34 asiekierk: i'm barely older than you and i support oklopol's suggestion 19:30:39 i do not 19:30:50 I want to make it a vlog, and a game-reviewing series 19:30:50 :) 19:30:55 sox park would be an awesome name 19:30:55 then you suck. :| 19:31:09 southocks park 19:31:11 you too 19:31:19 how old are you? 19:31:21 ehird, well I'm not sure what that would *mean* 19:31:26 flexo: asiekierk is like 12. 19:31:29 i'm 13. 19:31:29 asiekierk: make a programming show 19:31:41 oklopol: C64 programming show 19:31:44 ehird, and yes there is a large difference there, you have gotten much better since then 19:31:49 Lol 19:31:54 moron 19:31:56 :) 19:32:22 it's actually just that I try to be nice to you occasionally just in case, always end up remembering you're an idiot th 19:32:23 tho 19:32:24 ehird: if that's an obscure joke you have to tell me, because, you know, no reason not to believe it 19:32:32 ehird, also maturity(sp?) it is individual, so not only that 19:32:34 flexo: maybe it's a joke _and_ serious 19:32:45 maybe 19:33:08 ehird, err, I thought it was the reverse :P 19:33:11 flexo: you'd get on with oklopol 19:33:15 or maybe it's all three 19:33:26 oklopol, which is the third option? 19:33:30 AnMaster: both 19:33:49 -!- seveninchbread has joined. 19:34:55 maybe i should get me a cuba libre 19:35:08 opinions? 19:35:24 yes 19:35:26 do it 19:35:30 alright 19:35:55 ".eu", what does that mean 19:36:09 europe, i suppose 19:37:03 i see i see. which city? 19:37:46 what XD 19:37:59 ehird: exactly 19:40:40 munich 19:41:13 -!- CakeProphet has quit (Read error: 145 (Connection timed out)). 19:41:43 flexo: ah. i live in the slums. 19:42:01 what slums? 19:42:34 northern europe, you know, at the docks. 19:42:51 i see 19:44:09 this cuba libre tastes a little much to .. rummy 19:44:44 i'm always too greedy 19:51:18 -!- kar8nga has joined. 19:54:11 later 19:54:33 -!- Mony has quit ("Quit"). 20:09:48 -!- CakeProphet has joined. 20:22:16 -!- Slereah_ has joined. 20:24:44 -!- seveninchbread has quit (Read error: 104 (Connection reset by peer)). 20:29:07 -!- Slereah has quit (Read error: 60 (Operation timed out)). 20:34:54 -!- KingOfKarlsruhe has quit (Remote closed the connection). 20:37:56 -!- asiekierk has quit (Read error: 60 (Operation timed out)). 20:43:11 -!- Hiato has quit ("Leaving."). 20:53:59 anmaster 20:54:09 psygnisfive, ? 20:54:28 hey 20:54:39 miranda family languages arent eso.. as such 20:54:47 haskell is pretty esoteric 20:54:55 but its not the same kind of eso i guess 20:54:57 psygnisfive, as someone else already answered 20:54:58 ... 20:55:02 afk 20:55:04 slereah did i know 20:55:17 im just explaining more what _i_ was thinking :P 21:02:42 im bored, so im going to code a boring but fun thing 21:04:24 -!- kar8nga has quit (Read error: 104 (Connection reset by peer)). 21:24:09 Which does what? 21:24:32 guess 21:30:42 ooooooooooo 21:53:49 -!- seveninchbread has joined. 21:55:32 -!- CakeProphet has quit (Nick collision from services.). 21:55:34 -!- seveninchbread has changed nick to CakeProphet. 21:59:32 " boring but fun" 21:59:34 Wait, what? 22:00:56 yes 22:09:30 * ehird plays with paren-less lisp 22:27:56 -!- BeholdMyGlory has joined. 22:45:59 BeholdMyGlory: Hello AnMaster. 22:46:42 eh 22:46:51 ehird, whoever that is he isn't me 22:46:54 wut? 22:46:59 AnMaster: arvid, .se 22:47:02 yeah right. that's what i said about hotidlerchick. 22:47:03 an 22:47:04 ehird, yes I agree 22:47:04 d 22:47:05 in #archlinux 22:47:10 yeah rite 22:47:19 Um 22:47:25 so weird 22:47:25 It's just the same top domain 22:47:30 I.e. same country 22:47:34 except IP doesn't match 22:47:36 indeed 22:47:49 I'm on d90-130-2-10.cust.tele2.se atm 22:47:56 dynamic ip though 22:48:12 I'm also .se 22:48:16 But I'm not AnMaster 22:48:18 (For the record) 22:48:20 FireFly, another thing, same name "* BeholdMyGlory (n=arvid@d83-183-183-70.cust.tele2.se) has joined #esoteric" <-- my real name is Arvid 22:48:21 and I'm on d83-183-183-70.cust.tele2.se 22:48:22 ... 22:48:25 BeholdMyGlory doesn't really sound all that AnMastery. 22:48:29 hah 22:48:32 which is really strange 22:48:42 great to see another swede named arvid :P 22:48:42 also #archlinux too 22:48:50 BeholdMyGlory: you probably suck as much as him. 22:48:59 yw 22:49:02 ehird: how come? 22:49:04 I don't suck, you just hate me ;P 22:49:20 hate you? you? no. how can that be? 22:50:01 ehird, the channel list differs quite a bit too 22:50:30 ah 22:50:33 dbc is here 22:51:17 which, you know, is the main reason i'm hanging out here. the other reason being that i joined. 22:51:57 hah 22:51:57 :D 22:52:00 BeholdMyGlory, so now that we got person confusion sorted out, why did you come here? 22:53:09 AnMaster: hm. because esoteric languages are wierd. O.o 22:53:45 wierd is a specific esolang :P 22:53:49 well yes 22:54:06 ehird: why aren't I suprised? :P 22:54:29 hm. anyone interested in seeing "Hello World!" in my very own language? 22:54:43 ah. I'm just gonna post it anyway :P 22:55:02 well, what language is this? 22:55:04 <_+|+,,^..::>>___h>a^.-:*>*<__|,,^...e!a<_+|,!,^..:::l*o-a+||-o_a-:*>*<<+|,!!!s|a*><_+|+,,^^--**<<+++wo that's hello world 22:55:20 makes a lot of sense, doesn't it? 22:55:21 wow. 22:55:25 that's neat 22:55:29 how does it work? 22:55:41 interesting 22:55:47 every character is an operator 22:55:49 * AnMaster wonders the same 22:55:53 exept for letters 22:55:58 they are variables 22:56:01 BeholdMyGlory, what paradigm is this? 22:56:21 what the operators do, depend on what position they're at 22:56:29 :P 22:56:30 also it is pretty verbose for a single-char-per-command language 22:56:42 BeholdMyGlory, ouch ok 22:56:55 BeholdMyGlory, can you pastebin a spec or such 22:56:55 ? 22:57:08 AnMaster: uhm. not really 22:57:18 AnMaster: haven' gotten it all figured out yet 22:57:23 *haven't 22:57:46 BeholdMyGlory, ok, well, what about a preliminary spec? I mean it looks very interesting 22:57:54 but also impossible to guess without having a spec 22:58:16 BeholdMyGlory: do you have a way to loop or recurse? 22:58:27 AnMaster: i'm gonna create a page at esolangs when it's done 22:58:31 ah yes, lets check tc-ness 22:58:45 flexo: not yet, but it will 22:58:49 ... 23:00:12 any native english speakers here? 23:00:48 yes 23:00:49 me 23:01:04 tell me then.. there is some song or something, i don't know 23:01:09 the question just came up in another channel 23:01:14 BeholdMyGlory, You need (theoretical, as in the spec, not in any actual implementations) infinite memory, so if you have a limited number of variables and no way to store data in stacks, arrays, lambdas or whatever you aren't TC 3) a way to loop or recurse 23:01:19 for tc 23:01:24 of course it may still not be TC 23:01:26 a part of it goes like "she got her own" 23:01:33 but those are easy checks 23:01:47 Actually, BeholdMyGlory has a Java program which can run the above Hello World code.. 23:01:51 does that mean anything? how much slang is it? 23:01:55 -!- Corun has joined. 23:02:06 (not referencing some object ofcourse) 23:02:07 to actually prove something TC you need to prove it able to interpreter some "known TC" language 23:02:20 flexo: not enough context 23:02:26 FireFly: oh, you're in cahoots with him. 23:02:27 "i love her cause she got her own" 23:02:28 bloody swedes. 23:02:36 ;D 23:02:58 what've got against us? -.- 23:03:01 ah didn't know you were Swedish too FireFly :) 23:03:03 ehird: .. so? 23:03:09 Well now you do 23:03:15 hm 23:03:25 ehird: people are saying it means that "she's independent" 23:03:32 prolly 23:03:34 but i've never heard that phrase before 23:03:44 BeholdMyGlory: swedes are finns, except fake. and dirty 23:03:48 what do you mean by "probably"? don't guess from context, i can do that too :) 23:03:50 how many Finnish people are there now again. Lets see... oklo, fizzie, deewiant, and some more iirc? 23:03:54 hm 23:04:15 dewi 23:04:21 ilari 23:04:22 ah 23:04:30 5? 23:04:36 dewi is australian 23:04:39 oh. 23:04:40 okay. 23:04:44 4 then? 23:04:46 ehird: answer! 23:04:54 (i thinks.) 23:04:57 -!- olsner has quit ("Leaving"). 23:05:00 flexo: i dunno 23:05:06 thanks 23:05:07 :) 23:05:28 4 Swedes I think, me, firefly, behold..., and that person on who who isn't oklo or oerjan and who's name I temporarily forgot 23:05:37 olsner 23:05:41 ah thanks 23:05:42 that is it 23:05:50 ehird, how many from UK? 23:05:57 you and ais I know, but that is it or? 23:06:45 Asztal: 23:06:55 but thats it 23:08:32 hah 23:08:43 ehird, what about comex? 23:08:50 US. 23:08:53 ah 23:10:33 grr, there aren't enough good .cx registrars 23:11:01 ehird, may I ask why you want .cx? 23:11:09 it's complicated 23:11:23 ehird, oh? a shocksite with pics of yourself? 23:11:24 fine 23:11:26 :P 23:11:28 lol. 23:11:28 ~ 23:11:28 no. 23:11:39 specifically, I'm searching for the shortest domain I can get 23:11:49 ehird, a.cx? 23:11:52 t.cx 23:11:58 the other letters are taken. 23:12:07 ehird, and so for all other tlds? 23:12:15 i don't want to check all of them 23:12:19 ehird, ok 23:12:19 (yes, I could automate a whois...) 23:12:35 isn't one-letter domains usually more expensive than longer? 23:12:40 yes. 23:12:46 and .cx is expensive enough as-is 23:13:01 ehird, well, if you get t.cx it should be made into either a pastebin or an url shorterner 23:13:09 no :P 23:13:14 ehird, what!? 23:13:24 vjn.pb is quite short, and it's still not all that famous. 23:13:27 i don't like url shorteners, and pastebin URIs don't have to be short 23:13:30 ... 23:13:39 yeah, exactly. vjn.pb, that's it. 23:13:48 moar like vjn.fi/pb 23:14:07 no no we bought the tld pb for that. 23:14:13 Well 23:14:31 oklopol, what country is .pb? 23:14:34 none. 23:14:35 he's bullshitting 23:14:40 ah 23:15:02 :| 23:15:20 * oklopol leaves 23:15:21 what would be cooler is a number on some tld, that parses better 23:15:22 like 23:15:24 ~> 23:15:25 eh@t.cx 23:15:25 vs 23:15:27 eh@2.cc 23:25:08 ehird, hm, valid? 23:25:16 yeah. 23:25:45 ehird, and all used? 23:25:54 2.cc is available I think 23:26:00 ehird, also, why "eh", why not "e"? 23:26:05 its a bit awkward to type though 23:26:08 AnMaster: shrug 23:26:14 wait, no 23:26:16 2.cc is taken 23:34:22 darn, cc.tv isn't available 23:41:35 'night 23:41:45 -!- FireFly has quit ("Later").