00:00:31 fizzie: is primes.f meant to take 5 years? 00:06:27 Not really, no. 00:07:37 Then I have an infinite loop. 00:14:04 * bsmntbombdood rewrites that morse code thing 00:16:05 --- .-. .-.. -.-- 00:24:58 urgh 00:46:42 -!- KingOfKarlsruhe has quit (Remote closed the connection). 00:54:08 nevermind 00:54:15 i got bored writing transition tables 00:59:00 AnMaster, ehird: GregorR rule? 01:08:48 my homebrew python decompiler is quickly getting too complicated to maintain :( 01:13:50 -!- Jophish has quit (Connection timed out). 01:22:37 -!- GreaseMonkey has joined. 01:24:11 oh, god 01:24:13 I was killed by a typo 01:24:16 'JUMP_ABSOLUTe' 01:24:40 well, it decompiles this 01:24:42 http://pastie.org/410598 01:59:58 ok i need some morse code test vectors 02:04:02 looks good 02:05:55 now for the speed 02:06:47 comex: how where you measuring time? 02:13:38 you said an 8mb buffer in 20 milliseconds right? 02:14:03 i'm doing 8mb in 30 milliseconds right now 02:14:34 and my computer is probably slower than yours 02:21:29 anyway, my code, let me show you it 02:23:04 http://pastie.org/410634 02:37:56 fine then, ignore me 02:39:54 state machine? 02:40:04 anyway it was 6mb 02:40:10 here, let me get the same buffer 02:40:17 but that's not a fair comparison either 02:40:31 c+p my code and run it on the same machine if you want 02:41:04 mm 02:43:40 it's also in-place, nice 02:49:57 ok, on my desktop here are the results: 02:49:59 ]% gcc -O3 -mtune=native -funroll-loops -o morse morse.c && ./morse 02:50:00 189843.000000 02:50:02 171221.000000 02:50:09 former is yours, latter is mine 02:50:36 with this http://pastie.org/410644 02:51:06 I switched to 80M :p 02:52:26 your code ends up shorter in assembly, interesting 02:53:44 if I change -O3 to -Os, yours is faster 02:54:07 mainly because the division isn't optimized into multiplication 02:55:19 -!- calamari has joined. 03:08:24 damn 03:10:27 that mod in yours can't be good 03:19:06 wonder how to make it faster 03:47:09 can't see anything :( 05:05:20 well i got rid of the branch in the inner loop using a couple lookup tables, but it made it slightly slower 05:05:45 heh 05:06:30 oh wait, i think i may have something 05:19:48 yay it worked 05:22:44 http://pastie.org/410691 05:23:25 510 milliseconds instead of 600 06:03:02 -!- madbr has quit (Read error: 104 (Connection reset by peer)). 07:14:59 So, I finally have a MIDI file of that little tune up. 07:15:07 http://normish.org/ihope/kerlo.mid 07:18:18 -!- asiekierk has joined. 07:19:09 I don't get it 07:19:14 Hi asiekierk 07:19:52 hi 07:20:10 what are you discus--- oh wait i'll check the logs 07:21:29 -!- zzo38 has joined. 07:21:32 kerlo, cool, but a bit short and repetitive 07:21:34 Hi zzo38 07:22:15 * asiekierk is currerntly listening to: Au Clair de la Lune (1860 recording) 07:22:40 * Sgeo wishes Yahoo! Music Jukebox wasn't the only thing on here capable of playing MIDIs 07:22:55 The idea of akiross, it seems some versions of INTERCAL allow you to change syntax during runtime so that's one possible way.... 07:23:16 You can just include a compiler in the app and recompile the app in memory 07:23:23 but that kind of sucks 07:24:59 Also, another thing to add to something like INTERCAL with interleave operator, but allows any length of bits (even infinite), you could do things like zero interleave negative one makes one third, etc. 07:25:30 Sgeo: that's why it's called a little tune. :-) 07:25:40 And which INTERCAL is the shortest Hello world output program, maybe CLCLC-INTERCAL. It is: PLEASE ;1 <- #2 07:25:49 DO ;1 SUB #1 <- #17947$#20775 07:26:02 DO ;1 SUB #2 <- #5204$#21386 DO READ OUT ;1 07:26:32 Darn, it's not calculator writing, is it. 07:26:33 I should make something like a movie script esolang 07:26:39 The 077 confused me for a moment. 07:26:51 Something like Shakespeare but "more than 100 people can read it" 07:27:01 Epic poem esolang. 07:27:07 Epic movie esolang. 07:27:32 No, not calculator writing. It is Baudot, encoding 6 Baudot characters in each cell of the array 07:28:00 Another esolang idea is one with mahjong tiles? 07:28:42 No 07:28:54 the Epic Movie Esolang (E! ME) wouldn't work 07:29:17 "Three times, Thylakos, Eater of All, attempted to increment status_code; the first two times, he was not successful, but on the third, Apollo descended from the clouds, and told him, 'Hark, Thylakos! That variable is not for you to increment, for it is a private variable of the class NetworkConnection!'" 07:29:30 ... 07:29:30 wait 07:29:32 it would 07:29:39 but a foreign can't really write it 07:30:05 Do you have another idea of CLCLC-INTERCAL 07:32:27 Good night all 07:32:31 In your opinion, does 1 + 2 pow 2 + 2 pow 4 + 2 pow 6 + 2 pow 8 and so on make -1/3 in my opinion it does because in binary it is .......010101010101. and if you multiply it by three you get negative one, so therefore it is correct. Or you think the result is infinite? I would like to know your opinion 07:34:29 -!- Sgeo has quit ("Leaving"). 07:34:55 Do you like to use FOWER instead of FOUR, or FIFE instead of FIVE 07:35:48 What is the first vowel in "FIFE"? 07:36:17 Also, I think it does make -1/3, but only 2-adically. 07:36:26 It is "I" isn't it? Or is there a vowel missing 07:36:44 But what sound is it? 07:38:13 What does 2-adically means exactly I never learned 2-adically math. But I did see it mentioned in the book ROAD TO REALITY and all it says is the numbers are allowed to be infinite on the left instead of on the right. The rest I just did myself and don't know about proper 2-adically and whether mine is proper 07:39:15 And I think the sound is "I" sound like FIVE but possibly slightly different because of the following consonant but that is what I heard anyways is the standard for air traffic control, although nobody uses it and nobody cares 07:45:09 O, and do esolang people have any preferences having to do with mahjong game 07:50:09 Yes 07:50:51 zzo38, were you replying to me 07:50:53 or what 07:51:15 Yes I am replying to you asiekierk!i=africalo@078088180066.elb.vectranet.pl 07:51:22 whew 07:51:33 How's your console specification going on? I think you made one... 07:52:12 also, you should reply like this to a private message: /msg asiekierk Yes 07:52:43 Yes I did but I am writing software and specifications more a bit, and then one day I need to get a computer hardware and stuff, and then I can write the software more, testing it, make a company, and a few more things, make manual, etc, and then it will be complete. 07:53:25 O sorry I missed that the message was private but now I notice it. 07:54:00 Well, this was a command 07:59:32 -!- zzo38 has quit ("Thanks I sleep now. But I will continue to read the log if you want to reply to my question(s)/etc"). 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:04:32 -!- Asztal has quit (Remote closed the connection). 08:05:07 -!- kerlo has quit (Read error: 60 (Operation timed out)). 08:21:49 -!- GreaseMonkey has quit ("Client Excited"). 08:24:25 -!- calamari has quit ("Leaving"). 08:50:03 -!- psygnisfive has joined. 08:55:08 o 09:18:39 -!- oklopol has quit (Read error: 110 (Connection timed out)). 09:18:42 -!- oklopol has joined. 09:20:09 oko 09:22:12 okokokokokoko 09:23:08 <3 09:33:29 ;) 09:41:13 -!- tombom has joined. 09:55:55 -!- asiekierk has quit (Read error: 60 (Operation timed out)). 09:57:10 -!- Judofyr has joined. 09:58:20 -!- KingOfKarlsruhe has joined. 09:58:29 so this guy paul pietroski from university of maryland 09:58:45 -!- asiekierka has joined. 09:58:48 * asiekierka is probably ill 09:58:53 is working on a very interesting version of semantic logic that looks more like a sort of combinatory calculus 09:59:08 * asiekierka doesn't need to go to school :P 09:59:13 * asiekierka therefore can work on his projects 09:59:57 in which there are strictly monadic predicates and highly restricted dyadic predicates 11:25:22 AnMaster, ehird: GregorR rule? <-- in ABCDEF 11:25:38 -!- Asztal has joined. 11:51:13 -!- Jophish has joined. 11:54:00 -!- kar8nga has joined. 12:23:57 -!- Mony has joined. 12:51:06 Deewiant, there? 12:51:11 I disagree with mycology 12:51:24 FILE's 1R at end of file should reflect IMO 12:51:43 What's R 12:52:32 Deewiant, read 12:52:47 R (h n -- h) Read n bytes from file to buffer 12:52:51 also: 12:52:57 "All file functions on failure act as r." 12:53:11 What does Myco say currently 12:53:40 BAD: 1R reflected 12:53:49 a bug (IMO) in cfunge made it pass 12:53:51 And what does it expect >_< 12:53:57 that is, it didn't reflect 12:54:14 Deewiant, mycology expects 1R at end of file to not reflect 12:54:18 it seems 12:54:35 Yeah, right 12:54:39 Well, hmm 12:54:45 Deewiant, but shouldn't it reflect if it read 0 bytes 12:54:50 IMO the logic should be like this: 12:55:18 bytes_actually_read = fread(buffer, bytes_program_want, filepointer) 12:55:28 if (bytes_program_want != bytes_actually_read) { 12:55:31 Yep, indeed 12:55:48 if (feof(filepointer)) { 12:55:58 if (bytes_actually_read == 0) 12:56:07 return reflect(); 12:56:17 } 12:56:35 that is, it shouldn't reflect if it managed to read *some* bytes 12:56:43 Deewiant, what do you think? 12:56:47 What CCBI does now is essentially 12:56:52 if (wanted != read) { 12:57:00 if (ferror(handle)) { 12:57:05 clearerr(handle); 12:57:10 return reverse(); 12:57:13 } 12:57:23 else assert (feof(handle)); 12:57:25 } 12:57:58 Deewiant, this is the logic I *want* http://dpaste.com/9631/ 12:58:18 Deewiant, you forgot to clear the feof? 12:58:29 Clear the feof? 12:58:39 The function feof() tests the end-of-file indicator for the stream pointed to by stream, returning non-zero if it is set. The end-of-file 12:58:39 indicator can only be cleared by the function clearerr(). 12:58:58 Would I want to clear feof for some reason? 12:59:04 shouldn't you? 12:59:27 Clearing ferror makes sense since it could be that it'll work later 12:59:35 mhm 12:59:35 But if you hit EOF, why clear it, EOF is EOF 12:59:48 Deewiant, if you seek back you need to clear it 12:59:49 afaik 13:00:12 I mean, it will be there even if you seek or write 13:00:39 I may be wrong, but it seems like that to me 13:00:43 from the man page 13:01:05 That seems really stupid to me 13:01:05 wait no 13:01:08 fseek clears it 13:01:09 Why should seek fail if it's at the EOF :-P 13:01:26 fwrite won't 13:01:43 Deewiant, anyway, what do you think about the logic I suggest in http://dpaste.com/9631/ ? 13:01:43 Also stupid 13:01:57 Deewiant, why? 13:02:16 Well why should fwrite fail just because it's at EOF 13:02:21 Or if it just doesn't clear it, then that's fine 13:02:28 Deewiant, no it wont fail. It just won't clear it 13:02:34 Yeah, and that's fine 13:02:42 Since it /is/ at EOF so of course it should indicate that :-p 13:02:46 anyway: what about the logic in http://dpaste.com/9631/ ? 13:03:06 Why continue if it couldn't read what it wanted 13:03:15 IMO reverse always if read != wanted 13:03:17 Deewiant, because I read some bytes 13:03:23 it seems logical to return them 13:03:24 Yes, but not as many as were requested 13:03:46 Oh, right, you don't write them to funge-space if you return 13:03:52 Deewiant, true, but then we should also seek back to the point we were before the read 13:03:55 But you should still reverse IMO 13:03:58 hm 13:04:07 Why seek? 13:04:34 well either seek back to the point before the fread() that failed to read as much, or write the read bytes to funge space 13:04:48 Yeah, OK. I say do the latter. 13:04:50 considering that we might not be reading from a normal file I think it is stupid to try to seek back 13:04:54 And reflect. 13:05:03 what if I opened a fifo file with FILE? 13:05:42 What about it? 13:05:59 Deewiant, should the rest of the space we would have written otherwise be zero filled or should we just write as many bytes as we got? 13:06:15 Write what you got, there can be zeroes in the file too 13:07:11 I guess the program could figure it out with L... 13:07:30 Deewiant, so will you fix mycology to not say BAD on R reflecting due to end of file? 13:08:43 Deewiant, as usual RCS specs doesn't say anything about what should happen btw 13:09:12 And RC/Funge doesn't reflect, of course :-) 13:09:16 UNDEF? 13:09:21 probably 13:09:28 Meh 13:09:32 I don't know if you test anything else with 1R there 13:09:33 or not 13:11:57 Deewiant, so you mean something like this: http://dpaste.com/9640/ 13:12:49 Yep 13:17:45 Deewiant, so when will you upload a fixed mycology btw? 13:17:55 When I feel like it 13:18:02 right 13:41:48 Deewiant, does the funge spec say that you have to use line buffered output anywhere? 13:42:05 I mean, is there anything forbidding fully buffered output? 13:42:07 y has that bit that says whether you use unbuffered or not 13:42:23 For that, I suppose not, it's just not a good idea in practice :-P 13:42:43 Deewiant, it makes cfunge 20% faster on mycology. Sounds like a good idea to me ;) 13:42:54 No, it's a very bad idea :-P 13:43:09 Deewiant, actually it is an option in cfunge nowdays, -b 13:43:35 it also uses a larger buffer than default 13:45:24 AnMaster: better idea: make , a no-op 13:45:36 very funny 13:45:53 anyway I always call fflush() before reading input. 13:45:57 Or even better: do a single getchar() at the end, if you get 'y' then flush your buffer, otherwise don't 13:46:07 Deewiant, huh? 13:46:19 hah 13:47:22 Deewiant, it is a bad idea to make sarcastic comments about cfunge. You won't have anything left to say for jitfunge then 13:47:38 My comments apply to *funge 13:48:05 What will you say if picfunge will happen 13:48:08 then 13:48:53 -!- kar8nga has quit (Remote closed the connection). 13:49:15 I'll keep saying what I've been saying 13:50:22 What if someone writes a CPUfunge 13:51:05 Same differenec 13:52:54 mhm 13:53:01 Deewiant, this applies to CCBI too? 13:53:23 Is it a *funge? ;-) 13:53:52 Deewiant, depends on what sort of match that is 13:53:57 but cfunge doesn't match either 13:54:29 a *funge? <-- regex clearly 13:54:38 :P 13:55:32 or if the regex is: *funge 13:55:38 then it matches CCBI's expanded name 13:55:44 it contains befunge 13:55:48 What if it's a glob pattern? 13:56:39 Deewiant, hm, does glob imply end of line? 13:56:45 I forgot 13:56:52 * AnMaster uses regex mostly these days 14:01:16 Deewiant, anyway I think fizzie isn't working on jitfunge currently 14:01:41 but I think efunge will soon be ready for a first basic release. 14:01:56 it won't yet have ATHR, that work is ongoing but far from completed yet 14:07:18 -!- BeholdMyGlory has joined. 14:34:04 -!- tombom has quit ("Peace and Protection 4.22.2"). 15:32:07 -!- MigoMipo has joined. 15:54:58 -!- oklopol has quit (Read error: 113 (No route to host)). 15:55:15 -!- ais523 has joined. 15:55:45 [14:55] [Notify] ehird is online (irc.freenode.net). 15:55:47 [14:55] [Away] ehird is away: Not online right now. Please leave a message after the beep. *BEEP* 15:55:55 thanks, client 15:56:02 maybe you should check away /before/ notifying me? 15:56:22 or maybe I should blame it on the IRC spec for ISON and AWAY interacting so strangely 16:09:56 err 16:09:57 wth 16:10:04 I think I found a CCBI and cfunge bug 16:10:06 need to debug more 16:11:53 Deewiant, have you tested non-cardinal wrapping ? 16:11:57 what, a bug that affects both of them? 16:12:00 I mean in y and x at once 16:12:02 also, non-cardinal wrapping is a nightmare 16:12:10 AnMaster: yes, it's in Mycology. 16:12:14 ais523, I tried wrapping -30,-18 16:12:18 although I think I know how it's meant to work 16:12:21 it ended up wrong I think 16:12:38 I think ccbi and cfunge are both wrong 16:12:45 they both use same algorithm 16:12:56 is mycology also wrong? 16:13:35 I doubt CCBI's wrong since I do what the spec says, verbatim 16:13:52 I need to debug a bit more 16:14:57 well 16:15:46 I tried several other values so it can't just be a coincidence that I land on the x, I tried changing the delta slightly to x and I still run into same issue. 16:15:50 * AnMaster pastebins 16:16:03 http://rafb.net/p/YDQG4330.html 16:16:33 Deewiant, I was trying to figure out where the x should land. But it lands on itself 16:16:51 and I don't think that is correct, when I changed 0a9+- to 0a8+- 16:16:55 and it still does that 16:17:19 Why not? 16:17:28 That's exactly what's supposed to happen if no other cells are in the path 16:17:29 Deewiant, why should it be correct? 16:17:34 Lahey lines imply that you end up back where you started after making one loop around fungespace 16:17:40 that's by definition 16:17:41 The requirements for a line in Lahey-space are the following: Starting from the origin, no matter what direction you head, you eventually reach the origin. If you go the other way you reach the origin from the other direction. 16:18:01 sure. But shouldn't you hit some other cell first? 16:18:16 only if there's another cell on the line 16:18:26 as far as I can see one is 16:18:38 for instance, if your delta is (-2000000000,6), there are only three cells on the line 16:19:05 yes indeed 16:25:21 hm 16:26:26 actually this is wrong I think. If the first jump is large enough that you end up in range in the other end already 16:26:45 Deewiant, ^ 16:29:36 I was wondering about this esolang 16:29:42 where there is a 240x160 map 16:29:45 with 8 8x8 balls 16:29:53 And blocks are also 8x8 16:29:57 Each block can have an assigned function 16:30:05 and balls start moving in a predefined way 16:30:09 you can have 1 or 8 at the beginning 16:30:12 or 2, 3, 4, 5, 6, 7 16:30:20 sort-of sounds like you're deliberately making sure it isn't TC 16:30:24 although that isn't necessarily a bad thing 16:30:25 no 16:30:33 I just wanted to have an esolang that I can watch 16:30:44 And 240x160 is in fact for the DS version 16:30:52 ah 16:30:55 30x20 in cells, btw :P 16:30:57 reminds me of Paintfuck 16:30:59 and will work on the GBA too 16:31:03 oh way 16:31:04 wait* 16:31:05 that's a very watchable esolang 16:31:13 I should do a painting language 16:31:16 BackFlip's fun to watch too, actually, but sub-TC 16:32:34 Deewiant, ais523: http://rafb.net/p/QAzoUk37.html 16:32:38 does that seem right? 16:32:51 As in, there will be I/O commands: "Get_Button" for Input and "Draw_Line", "Draw_Pixel" for output 16:32:55 * ais523 vaguely wonders whether to repaste that somewhere else based on the ehird demands 16:33:00 Get_Button would be o 16:33:01 21:22:44 http://pastie.org/410691 16:33:03 Draw_Line would be - 16:33:05 that's hot. 16:33:09 oh god shut up asiekierka 16:33:10 Draw_Pixel would be ` 16:33:14 oh god shut up ehird 16:33:17 you are in a maze of twisty little at signs, all alike 16:33:28 nobody cares about your same esolang repeated 5 thousand times over 70 lines that you give us every month 16:33:33 well 16:33:35 that's a new idea 16:33:47 is it? because i've heard it from you 20 times 16:33:50 Prove it 16:33:58 no. 16:34:00 Haha 16:34:06 therefore we can't know if you really DID 16:34:08 AnMaster: the x is menat to be (-20,-30)? 16:34:14 my Befunge is rusty... 16:34:33 ais523, the x is at x = 18, y = 28 16:34:47 and with a delta of (-20,-30)? 16:34:54 there are no other cells inside your fungespace on that line 16:34:59 well, inside the allocated portion 16:35:04 sometimes I think AnMaster is the most annoying person in here. i retract that, he's super awesome. 16:35:04 and the rest is full of spaces so it'll be skipped 16:35:13 ais523, I think it should end up near the @ in the lower corner in the program 16:35:20 why? 16:35:35 going one space forawrd is (38,58) which is outside your range 16:35:38 ais523, -1 on edge gets you to first cell on opposite edge 16:35:42 NO! 16:35:45 that's what you're doing wrong 16:35:49 23:32:31 In your opinion, does 1 + 2 pow 2 + 2 pow 4 + 2 pow 6 + 2 pow 8 and so on make -1/3 in my opinion it does because in binary it is .......010101010101. and if you multiply it by three you get negative one, so therefore it is correct. Or you think the result is infinite? I would like to know your opinion 16:35:50 23:34:55 Do you like to use FOWER instead of FOUR, or FIFE instead of FIVE 16:35:56 fungespace isn't a torus 16:35:57 ais523, it technically does. That is the effect. 16:35:58 it's lahey-space 16:36:01 who needs acid when you have quick-fire zzo38 questions 16:36:03 ais523, sure. But the effect is that 16:36:08 no it isn't 16:36:08 that's all I'm saying 16:36:08 not when flying 16:36:30 ais523, well even with this algorithm you get that effect when moving cardinally 16:36:33 the next cell on your line is (38,58); the previous is (-2,-2) 16:36:34 wait, uppercaps NO from ais523? that's reserved for me! 16:36:37 you get that effect cardinally 16:36:42 but for a different reason 16:36:50 because when you're moving cardinally to the left, say 16:36:55 the previous cell is the cell to the right 16:36:58 ais523, hm right. So what would the delta be to end up near: 16:37:00 @ 16:37:02 @@ 16:37:04 in the program 16:37:05 23:45:09 O, and do esolang people have any preferences having to do with mahjong game 16:37:05 23:50:09 Yes 16:37:09 who needs answers, either 16:37:17 AnMaster: where is that cell you're aiming for? 16:37:18 ais523, while wrapping both x and y negatively 16:37:18 Yes I am replying to you asiekierk!i=africalo@078088180066.elb.vectranet.pl <- :D 16:37:44 as in, what coordinates? 16:37:54 ais523, in http://rafb.net/p/wJZOqZ63.html it is the cell with ! 16:38:00 coordinates would be *checks* 16:38:39 33,52 16:38:41 I think 16:38:42 wait 16:38:45 52,33 16:38:46 rather 16:39:06 if that is x,y 16:39:10 AnMaster: can you please stop using rafb.net to paste? it's one or two seconds saved at your end vs annoyance for everyone else later on 16:39:12 ok, so going forwards would be a delta of (52-18,33-28) which is (36,5) 16:39:25 therefore, to do it wrapping you need a delta of (-36,-5) 16:39:34 mhm 16:39:38 with lahey-wrapping, you can't reach a cell by wrapping unless you could reach it going backwards 16:39:50 ais523, I find flying IP incredibly hard to think at 16:39:51 in* 16:40:11 15:39 ehird: AnMaster: can you please stop using rafb.net to paste? it's one or two seconds saved at your end vs annoyance for everyone else later on 16:41:06 ehird: my reply to that is at http://pastebin.ca/1355862 16:41:10 ais523, err that doesn't work either... 16:41:21 * AnMaster steps through code 16:41:25 we may have the coordinates worng 16:41:27 *wrong 16:41:39 ais523, pastebin.ca times out all the time for me... 16:41:49 ais523: it's useful for when looking at the logs, when e.g. finding code that was made before that is being looked for now, finding the code someone answered to a question, .. 16:41:57 I haven't been able to access it for over half a year 16:41:59 ehird: but the timeout on that comment is only 5 minutes 16:42:04 so it's utterly useless for any logreader 16:42:14 and that's bad 16:42:24 ehird: you seem to be missing the fundamental nature of IRC here... 16:42:48 You seem to like saying that whenever I say something you disagree with: you're absolutely fundamentally missing the point. 16:42:55 AnMaster: try (-33,-5) 16:42:59 It works nicely as an alternative to making real arguments, I guess. 16:43:08 ehird: I mean, it's transient 16:43:15 why do you think freenode have the rule against unannounced public logs? 16:43:21 it's because it breaks the expectations most people have of IRC 16:43:26 ais523, hm ok 16:43:29 it's transient! of course! Let's kick clog. 16:43:37 clog: stop it. IRC is transient. People shouldn't be able to read things after they happen. 16:43:45 clog is rather unusual, it's trying to make #esoteric into something that isn't that common on IRC 16:43:50 after all, how many IRC channels are logged? 16:43:57 most of the high profile ones. 16:43:58 probably more on Freenode than on most other networks, tbh 16:44:03 that gets me to another place 16:44:08 but not exactly the right one 16:44:11 * AnMaster debugs again 16:44:14 ok, probably I miscounted 16:44:21 I was trying to count via mousehover 16:44:28 let me count in an edit box, that's more reliable 16:44:53 one cell off 16:45:01 (-34,-5) 16:45:02 it should be 16:45:04 I did miscount 16:45:25 right 16:46:04 AnMaster: how fast is this to load? http://dpaste.com/ 16:46:23 unfortunately no never-expire option, so forget that 16:46:38 ehird: expecting pastebins to keep the things you write never expiring is crazy 16:46:47 that's like wanting random internet sites to give you free hosting forever 16:46:47 ais523: pastie does it. pastebin.com can do it. 16:46:53 plenty of them do it. 16:46:58 also, plain text takes up roughly no space. 16:46:59 ehird, around 5 seconds 16:47:13 I think the solution to all this is to have a dedicated #esoteric pastebin, that can keep things around forever 16:47:26 and that loads as fast as rafb 16:47:31 preferably on a site run by one of us 16:47:37 rafb loads in ~1 second here 16:47:43 with a clean browser cache 16:47:50 also it needs a command line paste tool 16:47:54 like wgetpaste 16:50:55 -!- jorrdi has joined. 16:51:20 -!- oklopol has joined. 16:51:21 -!- jorrdi has left (?). 16:53:26 who was jorrdi, I wonder? 16:53:38 anyway, I was writing an Enigma level over the last couple of days 16:54:09 does anyone here know a pastebin that complies with both ehird's and AnMaster's standards and also accepts XML with embedded Lua? 16:54:24 err 16:54:32 you mean highlighting that? 16:54:39 no idea 16:54:40 ok, I was being slightly sarcastic 16:54:51 but I thought people here might want to take a look at it 16:55:14 but for it to be useful to me it needs to highlight C and have a plain text mode. More languages are a bonus 16:55:17 Is anyone interested in watching my desktop 16:55:34 and I like support for bash, erlang and scheme especially 16:55:50 oh and paste.lisp.org would be ok apart from having to enter, or script entering a captcha 16:56:05 "script entering a captcha"? 16:56:07 Perhaps have it written in such a way that it could easily have highlighting modules added... 16:56:12 ais523: it's always 'lisp'. 16:56:14 there is something very very wrong with that phrase 16:56:40 So that users of the pastebin could suggest highlighters, which could get added rather quickly... 16:56:51 * ais523 pastes on filebin.ca 16:57:01 because people are more likely to want to run the program than read it 16:57:20 strange, epiphany crashed 16:57:50 http://filebin.ca/fdzyqw/ais52301_1.xml 16:57:59 (Enigma has a naming convention for filenames...) 16:58:09 pastebin.ca is rather nice... Has a "raw" link, making it easy to download, and still has a nice highlighted text thing... 16:58:15 if you save that as ~/.enigma/levels/auto/ais52301_1.xml it should show up in the game 16:58:23 in the "auto" level pack 16:58:28 pikhq: pastie.org is nicer 16:58:36 it's still slightly buggy 16:58:37 ehird: Hmm. Good to know. 16:58:39 it has all of those things and less clutter 16:58:41 For what it's worth I'm instantly turned off by non-binary files which are served with a MIME type that browsers want to save instead of view 16:58:55 Deewiant: it may as well be binary, it's a crazy enough format... 16:59:02 asiekierka: Is anyone interested in watching my desktop <<< not if you're sharing it knowingly. 16:59:08 Hmm, missing an auxiliary clause there, it's not the MIME type that's being saved 16:59:25 Is application/xml too hard to serve up or something? 16:59:37 well, it's mostly written in Lua, just with an XML wrapper 16:59:48 ais523: what kinda level is it? 16:59:53 oklopol: an intelligence-based level 16:59:56 it's also a game 17:00:00 in easy mode, it's a 2-player game 17:00:05 in hard mode, it's a 1-player game against an AI 17:00:35 so with easy mode, the level can be solved very quickly if both players are cooperating, because either player winning wins the level 17:00:46 to complete it in hard mode is much slower as you have to beat the computer AI, and it won't be cooperating 17:01:10 but I took quite a lot of effort making the intelligence the main problem about the level 17:01:41 -!- antirafb has joined. 17:01:44 http://rafb.net/p/wJZOqZ63.html 17:01:47 based on their rating rules, I rate it about speed 1, dexterity 2, intelligence 5, knowledge either 3 or 6 (I'm not sure which), and patience maybe about 3 17:01:49 Hm. 17:01:53 -!- antirafb has quit (Remote closed the connection). 17:02:23 hmm, what's the difference between speed and dexterity? 17:02:25 hmm 17:02:33 -!- antirafb has joined. 17:02:34 http://rafb.net/p/wJZOqZ63.html 17:02:34 -!- antirafb has quit (Remote closed the connection). 17:02:38 on second thought i guess that's pretty obvious 17:02:56 oklopol: dexterity's how easy it is to put the level in an unwinnable situation, or die, due to the mouse equivalent of a typo 17:02:57 -!- antirafb has joined. 17:03:03 http://rafb.net/p/wJZOqZ63.html 17:03:04 -!- antirafb has quit (Remote closed the connection). 17:03:17 ais523: ah yeah right 17:03:33 whereas a high speed means you have to play the level quickly to avoid dying 17:03:44 -!- antirafb has joined. 17:03:45 http://rafb.net/p/wJZOqZ63.html 17:03:46 -!- antirafb has quit (Remote closed the connection). 17:03:52 Close, close indeed. 17:04:12 ohh testing a bot 17:04:26 i thought you were telling everyone who joins about your cool paste :D 17:05:56 -!- antirafb has joined. 17:05:57 http://rafb.net/p/wJZOqZ63.html 17:05:58 ehird: 17:06:02 :-D 17:06:05 Oh, lol. 17:06:09 -!- antirafb has quit (Remote closed the connection). 17:06:31 -!- antirafb has joined. 17:06:31 oh no, not another Brainfuck derivative 17:06:31 -!- antirafb has quit (Remote closed the connection). 17:06:36 that manages to be sub-TC, somehow 17:06:39 ais523: groan 17:06:40 link? 17:06:42 -!- antirafb has joined. 17:06:43 http://rafb.net/p/wJZOqZ63.html 17:06:44 ehird: ITYM http://pastie.org/private/bjrfso3nuwmpj5ntxhhmug 17:06:46 http://esolangs.org/wiki/ParrBF 17:06:52 Great success! 17:07:00 ehird: why a private pastie? 17:07:08 ais523: so it doesn't show up in the recent pastes list 17:07:13 I ask #esoteric: should I remap '%' in vim 17:07:17 because typing it really annoys me 17:07:23 ParrBF = lol 17:07:24 ehird: Is it clever enough to try something else if pastie times out or fails? 17:07:26 what are you planning to remap it to? 17:07:36 Deewiant: no, it also only handles one rafb.net paste per line 17:07:41 but there you go 17:07:42 -!- tombom has joined. 17:07:45 works well enough 17:07:53 now to put it on rutian 17:07:54 Handling more than one shouldn't be too tough 17:07:56 ais523: dunno 17:07:57 http://rafb.net/paste/itdoesntexist 17:07:57 comex: if you say Bayes, *krrtch* 17:07:59 maybe capslock :p 17:08:03 :( 17:08:10 http://rafb.net/p/diediedie.html 17:08:11 -!- antirafb has quit (Remote closed the connection). 17:08:11 http://rafb.net/p/itdoesntexist 17:08:15 oh 17:08:26 Is that a feature? :-P 17:08:35 ais523, Deewiant: http://rafb.net/p/rwSMXZ13.html, as far as I know mycology didn't test wrapping -y 17:08:38 at all 17:08:46 Yes, it doesn't 17:08:46 or \ 17:08:53 Deewiant, that program does. 17:08:54 -!- antirafb has joined. 17:08:55 http://rafb.net/p/diediedie.html 17:08:55 fu ehird 17:09:06 I assume that if -x and x work then -y and y do as well 17:09:10 imo ParrBF looks fairly interesting, you're executing a brainfuck program for each cell in parallel 17:09:19 assuming [ and ] are defined like that 17:09:26 Or rather, I don't assume anything since I don't use y wrapping at all 17:09:27 can't really tell from that. 17:09:27 Deewiant, You assumed your TURT worked iirc. It turned out it didn't 17:09:29 :P 17:09:35 that works nicely 17:09:42 oklopol: you're limited to a finite number of cells like that, though 17:09:46 Well sure, I assume stuff works if there's no known case where it fails 17:10:06 Deewiant, I assume stuff is broken unless I written a test case to test it :) 17:10:08 I'm not hardcore enough to go about things the other way 17:10:26 AnMaster: I did test TURT, though 17:10:27 ais523: true, but i think "ipc" between cells might be kinda interesting 17:10:37 Deewiant, yes, but not very detailed 17:10:44 well. assuming [ and ] are global 17:10:56 AnMaster: So do you assume that all possible execution paths through cfunge are bugged, except the ones you've tested? 17:11:16 Point being, complete testing is impossible. 17:11:30 At least in this universe, without time travel. 17:11:41 yeah, prove it or ..shoove it 17:11:42 Deewiant, no, but I try to test all paths 17:11:48 of course I can't fully 17:12:10 but I try to test as much as I can 17:12:44 Deewiant, stuff like fuzz testing helped a lot during one period. Nowdays I don't really find anything new with fuzz testing. 17:16:35 pastebin.ca is rather nice... Has a "raw" link, making it easy to download, and still has a nice highlighted text thing... <-- except I can't resolve the IP. I always get DNS timeout for pastebin.ca 17:16:56 For what it's worth I'm instantly turned off by non-binary files which are served with a MIME type that browsers want to save instead of view <-- same 17:18:25 ais523, how does one run engima on a file? Or where/how does one install a level 17:18:47 AnMaster: copy it to ~/.enigma/levels/auto 17:18:54 auto? 17:18:54 and it's automatically made into the Open It Up levelpack 17:19:02 * the Auto levelpack 17:19:05 how did I manage that? 17:19:06 mhm 17:19:25 what is the auto level pack? 17:19:33 I don't remember seeing that 17:19:47 if you go to all level packs, you'll see it 17:20:02 and its empty most of the time, until you put things into auto to be automatically made into levelpacks 17:20:44 http://www.ustream.tv/channel/asietv - i'm broadcasting my desktop O_O 17:21:24 I am only interested if I can take control of your machine and deltree /y. 17:21:41 Oh god your voice. 17:21:41 ehird: "deltree /y" doesn't do anything, that's missing one argument 17:21:52 ais523: It's a verb like "rm -rf". 17:23:08 This is morbidly interesting. 17:23:13 ais523, err, how do I switch ball then? 17:23:28 AnMaster: in easy mode, there's a yinyang lying around 17:23:29 in hard mode, you'll find the white ball is AI-controlled 17:23:29 ah found it 17:23:49 easy's a bit boring unless you have someone else to play against, thoguh 17:23:49 *though 17:23:56 asiekierka pronounces ehird as "eh erd" 17:23:57 :DD 17:23:58 because that's a 2-player game 17:23:58 ehird, AKA. ustreamer-55605 :P 17:24:01 ugh, that is a logic level. *prefers action ones* 17:24:09 AnMaster: yes, it's a logic level 17:24:11 AnMaster: oklopol will now lynch you. 17:24:14 ehird: That's how I pronounced it at first too, until you told me how 17:24:23 logic levels and action levels are both fun to play 17:24:28 but logic levels are a lot more fun to write 17:24:35 especially if you write an AI for them 17:24:36 Deewiant: Yes, it's funny because asiekierka is polish. Or something. 17:24:50 ehird, how is it pronounced then? 17:24:54 AnMaster: ee herd 17:24:58 longe 17:25:00 ehird, no i sound? 17:25:00 long e 17:25:03 yes, asiekierka. 17:25:06 AnMaster: in the herd. 17:25:23 ais523: write pong in Enigma! 17:25:33 what? 17:25:36 AnMaster: 'i sound' means approximately nothing in English 17:25:40 long e 17:25:40 yes, asiekierka. <-- wait did asiekierka say something? 17:25:49 ehird: I was plannign that 17:25:52 well 17:25:53 *planning 17:25:54 AnMaster: i'm listening to his grating voice while watching his screen. 17:25:55 AnMaster 17:25:57 okoko? 17:25:57 http://www.ustream.tv/channel/asietv 17:25:58 he/she isn't on ignore... 17:25:59 needs flash. 17:26:01 AI might be quite difficult 17:26:19 ais523: not really, perfect pong AI is pretty trivial, no? 17:26:31 ehird: moving the white marble around isn't 17:26:36 True. 17:26:41 ais523: surround it by blocks 17:26:43 that's the paddle 17:26:47 hitting a block moves it down or up 17:26:59 if you listen very carefully to that Enigma level I pasted, you'll hear a repetitive clink-clink-clink in the background 17:27:10 that's what's moving the white marble 17:27:18 I haven't tried it yet 17:27:21 via a really rather convoluted set of code 17:27:33 ais523, for pong wouldn't you use one of those small white balls? 17:27:41 AnMaster: possibly, or maybe a bug or a horse 17:27:43 or wait 17:27:48 do you mean the player *plays the ball? 17:27:53 *plays** 17:27:55 no, the player plays the paddle 17:27:58 omg 17:27:58 ah 17:27:59 playing the ball 17:28:01 that would be amazing 17:28:02 :DD 17:28:04 it would be 17:28:05 /aɪ/ /ɑe/ /əɪ/ /ɪ/ /ə/ /ː/ /ɚ/ are all possible 'i sounds' in English, there are probably a bunch more when you consider the various dialects 17:28:10 getting batted around and trying to help one paddle 17:28:11 ehird, not sure how to make it interesting though 17:28:20 to work as pong, you'd need to fill the center of the level as space 17:28:22 AnMaster: well you're being batted against your will 17:28:22 enigma level? 17:28:24 maybe you need to follow the correct path to not hit hidden death blocks? 17:28:25 we need more enigma levels 17:28:25 but you're on one AI's side 17:28:29 so you have to beat the other one 17:28:29 if you want to play the ball, you'd make it ice instead 17:28:31 as the ball 17:28:31 or something 17:28:34 what about that ehird ? 17:28:34 so you have some control but not much 17:28:41 i dunno 17:28:47 i just know playing the ball in pong would be amazing 17:28:51 ais523: make up some enigma puzzle involving enigma 17:28:59 heh 17:29:03 make a game of life in enigma 17:29:05 ^ really good idea 17:29:07 yeah 17:29:10 ehird, has been done 17:29:14 comex: http://filebin.ca/fdzyqw/ais52301_1.xml 17:29:17 don't remember level name 17:29:22 it has been done 17:29:28 15:58 ais523: if you save that as ~/.enigma/levels/auto/ais52301_1.xml it should show up in the game 17:29:36 now to find out where that is on os x 17:29:42 ehird, :D 17:29:42 not sure where you have to save it on windows or OS X 17:29:56 it could be same place 17:29:58 it's going to be somewhere with a similar directory structure, though, probably 17:30:02 ~/Library/Application Support/Enigma/levels/ 17:30:04 sane apps use ~/.* on all systems 17:30:08 ehird, that is global one 17:30:10 (/auto/) 17:30:11 AnMaster: no 17:30:12 ~ 17:30:13 ~/Library 17:30:14 which ah 17:30:16 right 17:30:23 using . for a GUI app on OS X is considered very bad style 17:30:49 -!- antirafb has quit (Remote closed the connection). 17:30:58 ehird, well, How is the program to know? There is no POSIX API that tells it preferred location afaik 17:30:58 bye antirafb 17:31:11 AnMaster: that's something that nearly always goes in the packaging 17:31:13 AnMaster: If you're writing an OS X app, you know about it, because you're using Cocoa. 17:31:21 via a makefile variable or something equivalent if you aren't using makefiles 17:31:27 locations for stuff is a packaging problem, not a programming problem 17:31:28 Or some cross-platform toolkit, but you're getting an inferior experience there on OS X anyway. 17:31:37 ehird, but engima runs on Linux. Which means it is either ported or using such a toolkit 17:31:42 Qt for example has a function for that 17:31:44 It uses SDL. 17:31:47 AnMaster: it'll just do 17:31:52 if (on_osx) { dir = '...'; } 17:31:54 simple enough 17:31:55 not much work 17:31:56 so for instance, C-INTERCAL doesn't hardcode locations nowadays, it takes them from makefile variables 17:32:03 ehird, means you have to know about OS X *shrug* 17:32:05 which finds the locations via autoconf 17:32:13 AnMaster: you have to know about os x to produce a well-crafted os x app? 17:32:16 zee oh em gee 17:32:27 blame apple 17:32:31 ehird, true, but point is OS X pretends to be *nix. 17:32:33 they have a X11 implementation, but it sucks 17:32:36 anyway, for that level, I recommend you play on hard if you don't have a second human handy to play against 17:32:38 in fact it is 17:32:38 X11 sucks. 17:32:43 AnMaster: umm, no pretending. 17:32:49 ehird, " in fact it is" 17:32:57 it is unix, and for command-line apps, .foo is fine 17:32:58 asiekierka's life is so interesting 17:32:58 maybe, but not nearly as bad as X11.app sucks 17:33:02 just GUI apps have a different structure 17:33:04 full of recursion 17:33:07 and infinities 17:33:11 comex: meh, I wouldn't want to use X11.app anyway :P 17:33:17 ais523: I am going to try it 17:33:29 how do I set hard? 17:33:31 The bronze medal thing> 17:33:38 you all forgot OpenWindows! 17:33:40 :/ 17:33:42 ehird, it could be a lot better though 17:33:50 AnMaster: aaaaaaaaaaaaaaagh 17:33:51 why does everything need to be arduously ported to cocoa? 17:33:59 ehird, what? 17:33:59 comex: because it has different UI guidelines 17:34:05 you can't just do that automatically 17:34:09 it's a totally different design 17:34:17 and it's why OS X apps are so good 17:34:18 anyway 17:34:22 ais523: how do you set difficulty? 17:34:40 ehird 17:34:41 ehird, what is (or rather: was) wrong with OpenWindows? 17:34:42 bullshit 17:34:44 things like 17:34:49 Qt mac, gimp native etc 17:34:51 comex: I'm really uninterested. 17:34:52 aren't as good as native apps 17:34:53 You're wasting your time 17:34:56 but they're a lot better than x11.app 17:34:57 :u 17:35:08 now, ais523: ping. 17:35:34 ehird, ...? 17:35:42 seriously 17:35:57 AnMaster: I a m u i n t e r e s t e d a n d t r y i n g t o p l a y a i s 5 2 3 ' s l e v e l 17:36:09 ehird, http://en.wikipedia.org/wiki/OpenWindows 17:36:12 AnMaster: I a m u i n t e r e s t e d a n d t r y i n g t o p l a y a i s 5 2 3 ' s l e v e l 17:36:12 AnMaster: I a m u i n t e r e s t e d a n d t r y i n g t o p l a y a i s 5 2 3 ' s l e v e l 17:36:13 Sun thing 17:36:14 was great 17:36:17 *shrug* 17:36:18 AnMaster: I a m u i n t e r e s t e d a n d t r y i n g t o p l a y a i s 5 2 3 ' s l e v e l 17:36:18 AnMaster: I a m u i n t e r e s t e d a n d t r y i n g t o p l a y a i s 5 2 3 ' s l e v e l 17:36:20 AnMaster: I a m u i n t e r e s t e d a n d t r y i n g t o p l a y a i s 5 2 3 ' s l e v e l 17:36:27 ehird, AnMaster: aaaaaaaaaaaaaaagh <-- ?? 17:36:27 ehird, AnMaster: aaaaaaaaaaaaaaagh <-- ?? 17:36:28 ehird, AnMaster: aaaaaaaaaaaaaaagh <-- ?? 17:36:28 ehird, AnMaster: aaaaaaaaaaaaaaagh <-- ?? 17:36:29 Every thing you say increases the amount of times I'll say that. 17:36:33 ehird, AnMaster: aaaaaaaaaaaaaaagh <-- ?? 17:36:34 AnMaster: I a m u i n t e r e s t e d a n d t r y i n g t o p l a y a i s 5 2 3 ' s l e v e l 17:36:35 AnMaster: I a m u i n t e r e s t e d a n d t r y i n g t o p l a y a i s 5 2 3 ' s l e v e l 17:36:36 AnMaster: I a m u i n t e r e s t e d a n d t r y i n g t o p l a y a i s 5 2 3 ' s l e v e l 17:36:38 AnMaster: I a m u i n t e r e s t e d a n d t r y i n g t o p l a y a i s 5 2 3 ' s l e v e l 17:36:40 AnMaster: I a m u i n t e r e s t e d a n d t r y i n g t o p l a y a i s 5 2 3 ' s l e v e l 17:36:45 ehird, SHUT UP 17:36:46 oh, do grow up 17:36:55 if you can't hear the radiophonewaves of my teleradiovision 17:36:56 asiekierka: tell AnMaster to stop bugging me about shit I don't care about and I will. 17:36:56 * AnMaster agrees with asiekierka there 17:37:02 fun to see all the kids yelling random stuff :D 17:37:07 (see/hear) 17:37:19 asiekierka, tell ehird that I will stop as soon as ehird explains what he meant with " AnMaster: aaaaaaaaaaaaaaagh" 17:37:30 AnMaster: have fun, but you're on ignore now. 17:37:35 ais523: how do you set difficulty? 17:37:38 The icons are rather obscure. 17:38:00 btw tell ehird he is ignored 17:38:07 AnMaster: have fun, but you're on ignore now. 17:38:09 btw tell ehird he is ignored 17:38:23 hah 17:38:27 don't tell me AnMaster is lying 17:38:32 I thought he would never stop until I explained?! 17:38:36 I can never trust his word again :< 17:38:37 asiekierka, I didn't see that first line 17:39:37 so much social porn here today 17:40:25 "social porn"? what's that, group masturbation? 17:41:16 it's this term some people use. 17:42:17 -!- ais523 has quit (Read error: 145 (Connection timed out)). 17:42:34 (btw asiekierka's going to sing a song, better join the fun) 17:43:10 yes 17:43:13 yes I am 17:43:23 I am... 17:43:24 ... 17:43:25 ...NOT! 17:44:02 wow 17:44:08 that sounds awesome :o 17:44:16 could you record some of that for me? 17:44:17 this is the first recorded sound of a human being 17:44:19 :P 17:44:29 Google "First Sounds" 17:44:31 1860 btw 17:44:41 oh! 17:44:46 well it sounds awesome. 17:51:15 -!- ais523 has joined. 17:51:19 hi ais523 17:51:22 I'm playing your level 17:51:25 whyyy does the ai move so jerky 17:51:39 because it was hard to get it to move at all 17:51:48 the thing that's controlling the ai white marble is a second black marble off the screen 17:51:53 that's repeatedly bouncing on a flash stone 17:51:53 LOL 17:52:09 it gives a lot more control than the usual gradient method 17:52:10 how can i play it 17:52:17 the level 17:52:17 oklopol: download enigma 17:52:20 put it in the right place 17:52:20 run it 17:52:20 i has 17:52:23 oklopol: which OS are you on? 17:52:26 windows 17:52:36 I don't know where the right place is on Windows 17:52:38 oh i can't just open some level pack which connects straight to ais :| 17:52:46 HOW 70'S 17:53:07 fuck 17:53:12 that damn ai got me beat again 17:53:36 oklopol: I've just read the manual 17:53:42 if you load enigma and go into options 17:53:48 it should tell you where the "User Path" is 17:53:58 you need to store the level in levels/auto on the user path 17:54:30 my level's still slightly buggy 17:54:44 sometimes the AI gets lost if it's trying to do a large push on the left-most group of blocks 17:54:52 but I think I know how that's fixed, just haven't been bothered to 17:59:09 okay didn't work, tried suffices ".lev" and "" 17:59:18 .xml is the suffix 17:59:22 right 17:59:25 as is suggested in the URL 18:00:21 yeah but it was xml, so i thought the .xml was because of that :) 18:00:27 once it's offline, it becomes a level 18:00:28 ... 18:00:36 ? 18:00:39 dude. an Ian owns n@ai 18:00:43 that is so fucking cool. 18:00:51 that makes no sense 18:01:02 yes it does 18:01:03 it's ai. 18:01:09 the tld 18:01:10 has an mx record 18:01:16 http://www.ai/ <-- the nic 18:01:31 ais523: nm 18:01:33 ehird: solved my level yet? 18:01:41 oklopol: got my level working yet? 18:01:41 ais523: no, the ai is smarter than me. 18:01:50 ais523: no, now i get an error 18:01:54 are there two files by any chance? 18:01:55 easy is human vs. human and you get the oxyds no matter who wins, so it's easy 18:01:59 oklopol: just the one 18:02:01 what error, btw? 18:02:10 i'll look 18:02:26 err utfformatexception 18:02:37 ok, that's very weird 18:02:44 maybe the character encoding's got muddled somehow 18:02:47 so probably like a copy paste problem 18:02:50 oh, I know what it might be 18:03:05 try opening the level, and saving it as a windows-format text file 18:03:10 text files are different on windows... 18:04:42 -!- asiekierka has set topic: There is no "i" in UBUNTU | WARNING: Very Mad (Statistical) Science | Logs: http://tunes.org/~nef/logs/esoteric/. 18:04:57 asiekierka: what did youchange? 18:05:05 "Mad" to "Very Mad" 18:05:44 ehird: still trying? 18:05:55 no, I think it's impossible 18:06:01 it is possible 18:06:04 I know, because I've done it 18:06:31 I could reveal the winning sequence of moves here, but that would spoil it for everyone else 18:06:39 augh 18:06:45 it is worth mentioning that the AI is good enough to win if you make even a single mistake 18:06:50 it's so hard you have to be incredibly good to even get it working 18:07:00 -!- asiekierka has set topic: There is no "i" in UBUNTU | WARNING: Very Mad (Statistical) Science | Logs: http://tunes.org/~nef/logs/esoteric/ | [this space left intentionally blanketh]. 18:07:16 oklopol: I guess it's harder on windows than on linux, it was pretty easy for me and ehird to get it working... 18:07:27 oklopol: what is the error? 18:07:31 AnMaster: did you try? 18:07:38 he said he hated it 18:07:39 something about an illegal character or something 18:07:40 because it was intelligence based 18:07:43 ais523, try what? 18:07:44 the level? 18:07:46 and he likes mindless action. 18:07:50 AnMaster: yes 18:07:58 oklopol: copy the file to the folder instead of copypasting the contents 18:08:09 ais523, yes but I prefer exploring levels rather than logic puzzle ones 18:08:12 yeah if only that was easy to do. 18:08:17 so I gave up 18:08:18 boring 18:08:22 ehird: I'm wondering if it's because the file has \n newlines not \n\r newlines 18:08:30 no 18:08:35 it's utf problems 18:08:37 windows uses utf 16 18:08:40 your file is probably utf-8 18:08:48 does it have special characters in? 18:08:50 ok, that's insane 18:08:53 no special characters AFAIR 18:08:59 does it have a utf-8 bom mark? 18:09:01 remove it if so 18:09:04 ais523, what is? 18:09:05 ehird: I don't think so 18:09:10 although it's copied from a template level 18:09:15 i can't decide where to dl stuff to on firefox (when i start a download), they just go directly on my desktop, which is full, and you can't scroll it on windows. 18:09:19 so a BOM may have survived all the way through 18:09:24 ais523: AnMaster has me on ignore, for the record 18:09:31 oklopol: go to My Documents/Desktop via the file manager 18:09:34 because I didn't answer his question about openwindows after he kept asking me about it 18:09:38 i could, in theory. 18:09:41 that version is scrollable 18:09:46 maybe i also should. 18:10:01 it's just i get very pissed when oses are stupider than humans. 18:10:13 oklopol, what happens on windows when desktop is full? 18:10:17 then why are you using Windows? 18:10:25 AnMaster: nothing, it continues to add icons but there's no way to click on them 18:10:27 stuff just goes off screen and cannot be touched :D 18:10:34 unless you know the trick I just told oklopol 18:10:39 ais523, wait, where are they? Outside the screen? 18:10:44 yes 18:10:46 where else? 18:10:52 at least a sane OS would put them on top of each other 18:10:57 that would be confusing but less so 18:11:31 AnMaster: personally, I think a sane OS wouldn't put thinks on the desktop unless the user wanted them there 18:11:39 I have 5 desktop icons, 6 when I have a USB stick in 18:11:47 and they're all things I only want to use just after boot 18:11:55 Plus desktop should be clean: Trash, ~, media:/ + a few recently downloaded files. On windows that would be: Trash, My Documents, My Computer 18:11:58 hmm sorry, 6 or 7 nowadays 18:12:06 I don't have a desktop on Linux; on Windows my desktop is empty 18:12:26 I have ~, the wireless network application, and four music playlists as desktop icons 18:12:37 I also have a few PDFs there: C99, POSIX.1-2008, AMD64 Reference manual 18:13:04 oklopol: got it working yet? 18:13:09 phone 18:14:01 okay not phone 18:14:06 yeah i found it 18:14:19 is it working? and can /you/ beat the AI? 18:14:27 so there's the download option, but you can't see where it's going to dl it to 18:14:33 and then the download window opens 18:14:43 in the earlier versions the dl folder was on the bottom 18:14:46 but not anymore 18:14:50 also, I programmed it all in the subset of Lua that I could deduce from the example levels I saw 18:14:50 ais523: btw what is the gradient movement you mentioned 18:14:53 i had to open a fucking menu to see it 18:14:54 grrr 18:14:56 which means no loops except by recursion 18:14:59 ais523: i'll try it. 18:15:06 ais523: it's just c style stuff 18:15:12 ehird: you move things by changing the floor underneath them temporarily to a gradient and back again 18:15:18 for i = 0, 10, 2 18:15:20 it's rather hard to do fine control like that, though 18:15:22 from 0 to 10 stepping 2 18:15:30 while foo do end 18:15:33 and it looks ugly unless you set the floor to one you can write a gradient on 18:15:35 ehird: ah, ok 18:15:38 repeat foo until bar 18:15:42 I was doing all my looping via recursion... 18:15:43 and you can use 'break' 18:15:50 that's all lua's loops, as far as I know 18:16:10 ais523: oh, one more 18:16:14 for x in y do foo end 18:16:23 so you can do: for key, value in ipairs(table) do ... end 18:16:25 what would y be there? 18:16:34 ais523: a table 18:16:34 well 18:16:35 an array 18:16:37 ah, ipairs I've never heard of 18:16:39 since it discards the tabley stuff 18:16:43 ais523: ipairs just changes 18:16:47 { x = y, foo = bar } 18:16:48 into 18:16:49 also, do table keys have to be valid identifier names? 18:16:51 {{x,y},{foo,bar}} 18:16:54 also, dunno 18:16:55 I don't know lua 18:16:57 also, no 18:17:00 it's any object 18:17:01 just remembered 18:17:02 I've been getting obscure bugs when I try to use numbers as table keys 18:17:11 well 18:17:13 that's what arrays do 18:17:14 prepending a letter it seems to work 18:17:18 { 1,2,3 } is a table 18:17:21 like PHP 18:17:32 no, {x=1, y=2, z=3} is a table I think 18:17:37 no 18:17:41 tables are the only complex datastructure in lua 18:17:41 ah, ok 18:17:51 this is what happens when you try to learn a language by example... 18:18:07 it also has a crazy thing called metatables, that let you use tables to make objects 18:18:16 http://en.wikipedia.org/wiki/Lua_(programming_language) pretty much describes all of lua 18:19:49 has anyone made Enigma tic tac toe? 18:20:52 I don't know of an implementation of that 18:20:56 I might try, it wouldn't be too hard 18:21:03 ais523: oh, ipairs is pairs with just integers, I think 18:21:06 pairs gives you the key/value pairs 18:21:11 also, I'd like to tryu 18:21:20 I'll rip off your code :D 18:21:29 I'm actually using that level as a template 18:21:33 although you have to delete most of it 18:21:43 and there are some subtleties in the header that need changing 18:22:43 I strongly advise reading the reference docs before creating a level 18:23:27 18:23:29 is that true btw 18:23:33 27sec?! 18:23:36 yes, those are both genuine times 18:23:38 easy is human v human 18:23:46 yeah but it can't be that fast surely 18:23:49 so you play the best possible strategy as one and the worst as the other 18:24:00 and win in 3 moves 18:24:35 (player 1: take all of the rightmost group, player 2: take all of the middle group, player 1: take all of the left group oh no I lost, player 2: oh look I won (gets oxyds) 18:24:39 ) 18:24:51 okay, you're just good with the mouse then 18:24:52 it's easy to complete the level pretty quickly like that 18:25:10 the hard mode actually requires skill to complete 18:25:12 levelh = 13 18:25:12 levelw = 39 18:25:15 wonder what that means. 18:25:21 size of the level 18:25:22 oh, is that the standard screen size? 18:25:23 13 by 20 is one screen 18:25:26 ah 18:25:37 and you add an extra 12 to give another screen of height, and an extra 19 to give another screen of width 18:27:21 but you really need to change the headers to prevent the whole thing borking 18:27:27 yeah, I'm trying 18:27:37 you need a unique ID for the level, and there's a scheme to make sure they don't collide 18:27:58 the release starts at one, score starts at 1 and increases every time you make a change to a released version that changes scoring compatibility 18:28:04 and revision goes up by 1 or more every change 18:28:20 also, the status should be "experimental" not "released" while you're editing the level 18:28:25 what bozo designed this shit 18:28:30 so it doesn't care about compatibility between different versions of it 18:28:52 and in case you haven't guessed, the format was designed as a merger between multiple incompatible formats 18:29:31 ugh 18:29:39 which means no loops except by recursion <-- err... why? 18:29:43 backwards compatibility strikes once again 18:29:51 AnMaster: he onlyused the lua he learned from other levels 18:29:56 which didn't include loops, apparently 18:30:04 AnMaster: using only the subset of Lua that I could reverse-engineer from the levels I looked at 18:30:10 ah 18:30:13 and none of the ones I looked at contained loops 18:30:21 but function definitions were there aplenty, so I just used recursion 18:30:23 hm, yeah, AnMaster is ignoring me. 18:30:24 fun fun. 18:30:31 ais523, iirc it is something quite like C loops. But I may misremember 18:30:40 gee, I wonder who told him that 18:30:45 maybe it was me. 18:31:05 I must be an esoprogrammer... 18:31:16 ais523, Why do you think so? 18:31:41 because I'm trying to find any method of writing in a broken language rather than getting a better language 18:31:48 ais523: do i win or lose if the ai gets stuck in an infinite loop? 18:31:49 where in this case, the broken language is a random subset of Lua 18:31:53 ais523, ah 18:31:56 oklopol: lose, I think 18:32:02 I think that should be a win 18:32:05 a sort of 18:32:05 did you hit that bug where it goes back and forth in the leftmost group? 18:32:06 meta-win 18:32:08 a third condition 18:32:10 it's a lose because you don't get the oxyds 18:32:26 you put the level into an unwinnable situation... 18:32:28 ais523: you should probably mention you can't move the blocks in any order. 18:32:40 hmm 18:32:42 what do you mean by that? 18:32:43 oh! 18:32:58 it should be pretty obvious after a while what the rules for moving blocks are 18:33:10 there are rules? 18:33:13 as in, the what is relatively easy to deduce, the level's all about the how 18:33:14 I just did whatever it let me 18:33:14 yeah, but i thought it was a bug that occurred because i moved them at random 18:33:31 i mean not from bottom up 18:33:40 ehird: well, blocks leave grates behind when you push them with bombs on, and the bombs explode when you go back to the top 18:33:53 oklopol: no, it's a known bug 18:33:56 yeah okay i see 18:33:59 well right 18:34:00 and I think I know how to fix it but can't be bothered right now 18:34:17 which means, the only way to get into one of the groups is via the one-way blocks at the top 18:34:30 which means that on your turn, you can sink any number of blocks from any one of the groups 18:34:37 but can't sink blocks from more than one group 18:34:43 based on that, you need to make the AI sink the last block 18:34:45 right 18:34:52 that's the what 18:34:54 I just thought there were non-physical rules 18:34:58 now, the how is the interesting part... 18:35:01 i.e., it is possible to cheat in a non-bug way 18:35:06 it seemed to be what you implied 18:35:09 also 18:35:10 ehird: grates springing up when you move the block is a non-physical rule 18:35:12 although a subtle one 18:35:18 oh 18:35:19 and no way to cheat that I know odf 18:35:20 *of 18:35:21 ais523, heh it says world record for that level (on easy) 18:35:21 you're not meant to go on the block? 18:35:24 ? 18:35:31 "on the block"? 18:35:34 very boring level IMO. But I have a different taste 18:35:46 you need to use the block as a bridge to leave the group 18:35:54 well yeah 18:35:58 and you can use any of the blocks you pushed 18:36:00 but are you allowed to go under the grate 18:36:03 by analogy, this means you need to sink one block 18:36:10 and going under the grate will kill you 18:36:12 there's an abyss there 18:36:16 unless it's a grate you created that turn 18:36:21 in which case it's just a bomb 18:36:23 I meant created this term 18:36:31 if it's created that turn, fine 18:36:36 but it won't let you break the rules of the level 18:36:40 hmph it got stuck again. 18:36:44 how were you ever getting back up to the top without going under the grates? 18:36:49 "Think about that for a minute. It computes the answers. Wolfram Alpha doesn't simply contain huge amounts of manually entered pairs of questions and answers, nor does it search for answers in a database of facts. Instead, it understands and then computes answers to certain kinds of questions." 18:36:54 i think i'll solve this on paper 18:37:04 can we stop with the "Wolfram Alpha is strong AI out of Stephen Wolfram's magical butt of being able to do anything" articles? 18:37:07 oklopol: it is worth pointing out that it will never get stuck if you play with the optimal strategy 18:37:14 ais523: I was going under them 18:37:23 ehird: yes, so? 18:37:31 something you said to oklopol 18:37:35 made me think you were saying 18:37:38 that there were non-physical rules 18:37:41 no 18:37:49 I'm just explaining what I thought 18:37:50 I try to keep my levels as physical-rules-based as possible 18:37:54 apart from the AI, of course 18:37:57 which is very scripted 18:38:10 i'm not feeling like a puzzle tonight 18:38:17 I tried to escape from the switcher thing and go and kill the white ball 18:38:19 but I didn't succeed 18:38:31 ehird: it took me ages fixing bugs in that thing! 18:38:32 specifically, I tried to run away before it locked me in 18:38:50 hah. 18:38:57 and that's impossible due to the way doors work in Enigma 18:39:01 you can't enter them once they start closing 18:39:11 yes, but the white ball starts before they close 18:39:25 and as the trigger's on a different square, by definition you're outside them when you hit the trigger 18:39:56 "There is no risk of Wolfram Alpha becoming too smart, or taking over the world. It's good at answering factual questions; it's a computing machine, a tool -- not a mind." 18:39:58 Friendly AI fail. 18:41:29 I agree that there's no chance of it taking over the world 18:41:46 I think there's a marginal chance it'll lead to Wolfram being booted from the internet, but for unrelated reasons 18:41:46 the statement is stupid, though 18:41:53 ais523: huh? 18:42:11 you'll see later on, if they still have the feature I'm thinking of 18:42:25 does it download gigabytes of data every minute? 18:43:08 but yeah, what I quoted was really stupid because a sufficiently advanced "computing machine" that correlates tons of its data (memories) and communicates a response, based on outside input (search query)... 18:43:09 is a mind 18:43:16 (for very large values of sufficiently advanced) 18:43:36 well, I don't think you'll have to worry about sufficiently advanced 18:43:42 yes, nor I 18:43:48 I don't think that makes the statement any more valid 18:46:11 incidentally, I've been trying to re-establish a wireless connection all this time 18:46:27 I only came on mibbit because it was taking so long and I wanted to continue conversing... 18:48:21 mysql --i-am-a-dummy 18:48:24 http://dev.mysql.com/doc/refman/4.1/en/mysql-tips.html#safe-updates 18:48:37 is that an actual command line switch? 18:48:45 yep 18:48:58 also, why does mibbit not show a cursor in the box you're meant to type in? 18:49:00 -!- akiross has joined. 18:49:01 it does sometimes 18:49:04 but isn't atm 18:49:05 hi 18:49:05 wfm 18:49:07 although 18:49:10 I think I've had that problem 18:49:11 hi akiross 18:49:19 which makes it hard to change something that isn't at the end of the sentence 18:49:21 and hi akiross 18:49:34 hi ehird, ais523 18:49:45 hi 18:49:54 what brings you here? 18:49:59 also, hi ehird, just to keep this chain going 18:50:07 hi akiross 18:50:09 also 18:50:13 hi akiross 18:50:13 akiross is new, he's been here before 18:50:22 he said he's working on a language that's like assembly for message-passing OOP 18:50:34 that sounds sufficiently eso 18:50:37 maybe even tarpitty 18:50:41 hi asiekierka 18:51:55 :) infact i'm here most to listen and see if it can interest, i'm not really in the "divulgation-phase" :D 18:52:09 divulgation 18:52:10 sounds like me sometimes 18:52:11 that's a word there 18:52:23 I can mention Underlambda and get lots of people shouting at me to release the spec 18:52:30 or Feather and get people shouting at me to make some progress 18:52:47 Wow, divulgate is actually a word 18:53:08 -!- ehird has set topic: Word of the day: Divulgation. Logs are good for your health: http://tunes.org/~nef/logs/esoteric/. 18:53:51 -!- asiekierka has set topic: Word of the day: Divulgation. Apples AND Logs are good for your health: http://tunes.org/~nef/logs/esoteric/. 18:53:56 -!- ehird has set topic: Word of the day: Divulgation. Logs are good for your health: http://tunes.org/~nef/logs/esoteric/. 18:54:01 :( 18:54:05 asiekierka: I always win the topic battles. Don't bother. :P 18:54:10 But apples ARE good for your health 18:54:18 -!- asiekierka has set topic: Word of the day: Divulgation. Logs are too good for your health: http://tunes.org/~nef/logs/esoteric/. 18:54:27 -!- ais523 has quit ("mibbit.com: getting some apple juice"). 18:54:34 ahah i liked the apples one :D 18:54:34 -!- ehird has set topic: Word of the day: Divulgation. Logs are good for your health: http://tunes.org/~nef/logs/esoteric/. 18:54:39 I said apples ARE good for your health 18:54:47 -!- ehird has set topic: Word of the day: Divulgation. Rocks are good for your health: http://tunes.org/~nef/logs/esoteric/. 18:55:01 -!- asiekierka has set topic: Word of the day: Apples. Logs are good for your health: http://tunes.org/~nef/logs/esoteric/. 18:55:08 -!- ehird has set topic: Divulgations are good for your health: http://tunes.org/~nef/logs/esoteric/. 18:55:34 -!- asiekierka has set topic: Topics are good for your health. Logs aren't, but see them here: http://tunes.org/~nef/logs/esoteric/. 18:55:44 -!- ehird has set topic: Divulgations are good for your topic: http://tunes.org/~nef/logs/esoteric/. 18:56:01 -!- asiekierka has set topic: Topics are good for your apples auce: http://tunes.org/~nef/logs/esoteric/. 18:56:08 -!- ehird has set topic: Divulgations are apples for your topic: http://tunes.org/~nef/logs/esoteric/. 18:56:35 -!- Deewiant has set topic: Topics divulgate apples: http://tunes.org/~nef/logs/esoteric/. 18:56:45 -!- asiekierka has set topic: Apples are apples for your... bananas! OH NO THE BANANA GAG! | http://tunes.org/~apples/apples/apples. 18:56:52 -!- ehird has set topic: Divulgations are apples for your words: http://tunes.org/~nef/logs/esoteric/. 18:56:57 Wow, now it's deep. 18:57:05 yeah :D 18:57:24 -!- asiekierka has set topic: Applepedia: Over 9.000.000.000 (divulgated) words: http://tunes.org/~nef/logs/esoteric/. 18:57:31 -!- ehird has set topic: Divulgations are apples for your words: http://tunes.org/~nef/logs/esoteric/. 18:57:55 -!- asiekierka has set topic: Apples for your divulgations: http://tunes.org/~nef/logs/esoteric/. 18:58:20 ... 18:58:20 wow 18:58:21 did I win 18:58:22 or what 18:58:29 you did 18:58:31 -!- ehird has set topic: Divulgations are apples for your words: http://tunes.org/~nef/logs/esoteric/. 18:58:34 Nope. 18:58:41 ehird is back for the same old joke 18:58:51 -!- asiekierka has set topic: Apples for ehird's divulgations: http://tunes.org/~nef/logs/esoteric/. 18:59:11 I WIN 18:59:23 -!- asiekierka has set topic: Akiross for ehird's asiekierkas: http://tunes.org/~nef/logs/esoteric/. 18:59:24 -!- ehird has set topic: Divulgations are apples for your words: http://tunes.org/~nef/logs/esoteric/. 18:59:33 -!- asiekierka has set topic: Divulgations. 18:59:50 -!- asiekierka has set topic: are. 18:59:53 -!- asiekierka has set topic: apples. 18:59:56 -!- asiekierka has set topic: for your. 19:00:00 -!- asiekierka has set topic: SPARTA!. 19:00:15 lol 19:00:29 -!- Deewiant has set topic: http://tunes.org/~nef/logs/esoteric/. 19:00:36 -!- asiekierka has set topic. 19:00:39 -!- ehird has set topic: Divulgations are apples for your words: http://tunes.org/~nef/logs/esoteric/. 19:00:45 asiekierka: Your topic rights are revoked. 19:00:50 You broke freenode policy 19:00:52 by removing the log URL. 19:00:53 -!- asiekierka has set topic: #esoteric | No they are not, Mr. Anderson. 19:00:57 asiekierka: Your topic rights are revoked. 19:00:58 -!- Deewiant has set topic: http://tunes.org/~nef/logs/esoteric/. 19:00:59 er 19:01:00 -!- ehird has set topic: Divulgations are apples for your words: http://tunes.org/~nef/logs/esoteric/. 19:01:01 -!- asiekierka has set topic: #esoteric | No they are not, Mr. Anderson | http://tunes.org/~nef/logs/esoteric/. 19:01:03 -!- ehird has set topic: Divulgations are apples for your words: http://tunes.org/~nef/logs/esoteric/. 19:01:15 -!- asiekierka has set topic: Let's listen to some tunes.org/~nef/logs/esoteric/. 19:01:17 -!- ehird has set topic: Divulgations are apples for your words: http://tunes.org/~nef/logs/esoteric/. 19:01:21 -!- Slereah has set topic: You are both suspended. | http://tunes.org/~nef/logs/esoteric/. 19:01:24 -!- ehird has set topic: Divulgations are apples for your words: http://tunes.org/~nef/logs/esoteric/. 19:01:36 argh 19:01:37 make it stop 19:01:39 X_X 19:01:42 -!- asiekierka has set topic: THE NEXT PERSON THAT CHANGES THIS TOPIC SUCKS. 19:01:43 -!- ehird has set topic: Divulgations are apples for your words: http://tunes.org/~nef/logs/esoteric/. 19:01:44 nice 19:01:47 lol 19:02:06 -!- asiekierka has set topic: THE NEXT PERSON THAT CHANGES THIS TOPIC A SPLODES. 19:02:10 -!- ehird has set topic: Divulgations are apples for your words: http://tunes.org/~nef/logs/esoteric/. 19:02:25 where is ais? 19:02:50 -!- asiekierka has set topic: http:// tunes [dot] org / [somechar] net [backslash] lo [gee] s / [e]sote [rick without a k]. 19:02:52 I would tell you he quit to get applejuice 19:02:57 but you're ignoring me, so tough shit 19:02:58 -!- ehird has set topic: Divulgations are apples for your words: http://tunes.org/~nef/logs/esoteric/. 19:03:04 I would tell you he quit to get applejuice 19:03:06 but you're ignoring me, so tough shit 19:03:07 :D 19:03:25 -!- asiekierka has set topic: The next person changing this topic must do it in Underload.. 19:03:28 -!- ehird has set topic: Divulgations are apples for your words: http://tunes.org/~nef/logs/esoteric/. 19:03:30 right, if he isn't ignoring any moire 19:03:30 more* 19:03:33 * AnMaster unignores 19:03:48 ehird: Your topic rights are revoked. 19:03:53 You broke the topic's sacred policy. 19:04:06 Can you remember how I said I always won topic wars? 19:04:08 Give up. 19:04:20 -!- asiekierka has set topic: NEVER GONNA GIVE YOU UP, NEVER GONNA LET YOU DOWN. 19:04:24 -!- ehird has set topic: Divulgations are apples for your words: http://tunes.org/~nef/logs/esoteric/. 19:04:45 -!- asiekierka has set topic: NEVER GONNA SAY GOODBYE. 19:04:49 -!- ehird has set topic: Divulgations are apples for your words: http://tunes.org/~nef/logs/esoteric/. 19:04:56 My patience is being tried. 19:05:27 -!- asiekierka has set topic: You know the rules, and so do I. 19:05:51 -!- ehird has set topic: Divulgations are apples for your words: http://tunes.org/~nef/logs/esoteric/. 19:07:48 -!- asiekierka has set topic: Divulgations are apples for your words: http://tinyurl.com/esoteric-logs. 19:08:30 is there somewhere a bloated snusp interpreter? i can find only a perl-one for modular snusp 19:08:38 perl one 19:09:11 Did anyone actually see that link 19:09:17 I see that I won 19:11:24 yay 19:11:25 :) 19:12:02 -!- Deewiant has set topic: Divulgations are apples for your words: http://tunes.org/~nef/logs/esoteric/. 19:12:20 Deewiant: :D 19:12:41 I dislike an additional click 19:13:06 -!- asiekierka has set topic: Divulgations are apples for your words: http://tinyurl.com/esoteric-logs. 19:13:09 Oh, looks like it's a rick roll too 19:13:12 -!- Deewiant has set topic: Divulgations are apples for your words: http://tunes.org/~nef/logs/esoteric/. 19:13:32 -!- asiekierka has set topic: Divulgations are apples for your words: http://tinyurl.com/esoteric-logs. 19:13:41 Or I guess it is, I don't remember all the rick roll youtube IDs 19:13:43 Deewiant: asiekierka still thinks rick astley and GlaDoS are funny because he's an irritating kid stuck in 2006. 19:13:46 Looks like one though 19:13:49 -!- ehird has set topic: Divulgations are apples for your words: http://tunes.org/~nef/logs/esoteric/. 19:13:50 I know he's not 19:14:35 asiekierka, please keep the proper log link in topic. I agree with ehird there 19:14:43 also 19:14:49 I prefer the last at top sorting 19:14:50 ehird, :) 19:15:03 iirc it was your idea to begin with 19:15:04 asking asiekierka to do something is like asking a brick wall to soften up a bit 19:15:09 also, ah yes 19:15:11 I'll put that in 19:15:18 bbl 19:15:21 -!- ehird has set topic: Divulgations are apples for your words: http://tunes.org/~nef/logs/esoteric/?C=N;O=D. 19:18:26 asiekierka: something really funny: http://throbs.net/fun/swf.asp?rgb.swf 19:19:53 Aww, that sound loop is short 19:20:01 Why couldn't they include the whole tune 19:20:29 Heh 19:20:45 Deewiant: Maybe it's deliberately repetitive, for people with, um, audial epilepsy? 19:21:40 lol 19:21:58 Seems you won, huh? 19:23:14 Well, that's true. You won this battle. 19:23:29 -!- asiekierka has set topic: Divulgations are apples for your words: http://tinyurl.com/esologs. 19:23:38 -!- Deewiant has set topic: Divulgations are apples for your words: http://tunes.org/~nef/logs/esoteric/?C=N;O=D. 19:23:46 you didn't even check that link 19:23:48 right 19:23:51 I don't care 19:23:55 -!- asiekierka has set topic: Divulgations are apples for your words: http://tinyurl.com/esologs. 19:24:08 -!- ehird has set topic: Divulgations are apples for your words: http://tunes.org/~nef/logs/esoteric/?C=N;O=D. 19:24:08 It's a tinyurl so it's an extra click 19:24:15 Regardless of whether it links to the right place 19:24:18 what extra click 19:24:26 there's no extra click 19:24:27 I have the 'preview' function of tinyurl enabled 19:24:33 To avoid crap like your rick roll 19:24:33 Oh 19:24:35 That's your fault 19:24:41 Yes, it is 19:24:50 so check it in your preview 19:24:51 But given that we have the option of just producing a direct link... why the hell would we not do so 19:25:02 http://asienet.site40.net/ 19:25:08 quite 19:25:10 "Give me a free PS3, now! What do you mean no?" 19:25:12 --Asiekierka. 19:25:15 Well 19:25:18 that was a joke page 19:25:24 made in November 19:25:31 and you missed "logs.html" 19:26:47 -!- asiekierka has set topic: Divulgations are apples for your words: http://asienet.site40.net/logs.html. 19:26:53 no extra clicks 19:26:55 g`hah 19:26:57 -!- Deewiant has set topic: Divulgations are apples for your words: http://tunes.org/~nef/logs/esoteric/?C=N;O=D. 19:27:08 Did you at least check it 19:27:12 god asiekierka is irritating. 19:28:31 -!- kar8nga has joined. 19:29:03 -!- asiekierka has set topic: Divulgations are apples for your words: http://asienet.site40.net/logs.html. 19:29:08 -!- Deewiant has set topic: Divulgations are apples for your words: http://tunes.org/~nef/logs/esoteric/?C=N;O=D. 19:30:13 -!- asiekierka has quit. 19:30:56 -!- asiekierk has joined. 19:30:58 Hai 19:31:08 -!- asiekierk has set topic: Divulgations are apples for your wars: http://tunes.org/~nef/logs/esoteric/?C=N;O=D. 19:31:09 -!- asiekierk has set topic: Divulgations are apples for your words: http://asienet.site40.net/logs.html. 19:31:13 oops 19:31:14 -!- asiekierk has left (?). 19:31:15 -!- Deewiant has set topic: Divulgations are apples for your words: http://tunes.org/~nef/logs/esoteric/?C=N;O=D. 19:31:18 -!- ChanServ has set channel mode: +t. 19:31:30 Maybe we'll do something like that for a moment. 19:31:38 Cheers 19:31:56 fizzie: Can't you just eliminate the problem? :P 19:32:39 No, I don't like taking responsibility for stuff like that. :p 19:34:19 -!- asiekierk has joined. 19:34:38 ... 19:34:40 ....... 19:34:44 ;( 19:35:00 This was fun 19:35:06 And you killed the coolest thing on this channel 19:35:27 fungot: Are you still alive? 19:35:27 Deewiant: woohoo! srfi-49 has been finalized! 19:35:37 Nah, we're still good. 19:35:39 What an enthusiastic response. 19:35:54 http://srfi.schemers.org/srfi-49/srfi-49.html 19:35:57 fizzie...!!! 19:36:11 asiekierk: shut up 19:36:16 you shut up 19:36:18 twice 19:36:34 fizzie: are you sure you can't eliminate the problem... 19:36:40 Oh, it was that i-expression thing. I didn't remember from the number. 19:37:45 well 19:37:51 now we can't edit the topic 19:38:06 fizzie: Say, what Scheme do you use? I've found all of them woefully inadequate (invents their own solutions instead of using srfis) 19:38:20 ehird: Hey, this is freenode, it's all "Look for the best in people." and stuff. 19:38:39 :D 19:38:49 The best in asiekierka... hmm. He /parts sometimes. 19:38:50 well, it's a free node 19:39:03 ehird: Mainly I've used MzScheme (or PLT, anyway) even though I don't really like it, and it certainly does that own-solutions thing. 19:39:08 ;( 19:39:22 PLT is just so bloated 19:40:13 ehird: No really, the best 19:40:22 what 19:40:33 Everyone is parting sometimes 19:40:34 -!- oerjan has joined. 19:40:40 or at least some people 19:40:48 yes but mostly those people are good to have around 19:41:03 but i'm the worst ever person cuz you hate me for my spamminess 19:41:17 what on earth is the point of that srfi 19:41:39 tombom: satisfy lamers who have a parenthesis allergy 19:42:39 Yes, I personally can't even use more than seven Funge fingerprints in a single file, otherwise those (s make me sneeze uncontrollably. 19:42:50 parentheses are pretty much the best thing about lispy languages, how silly 19:46:23 % ls 19:46:25 foot.c foot.h foot.o toe.c toe.o 19:46:28 % rm * .o 19:46:29 rm: .o: No such file or directory 19:46:31 % ls 19:46:33 % 19:46:38 you mean rm *.o 19:46:44 asiekierk: no shit sherlock 19:46:46 MizardX: d'oh. 19:46:48 I think he means he fucked up 19:46:50 you had backups right 19:46:57 Wasn't that in one of the shoot-yourself-in-the-foot lists? 19:46:59 or, was it in version control? 19:47:02 * doesn't include .foo 19:47:06 so just do a checkout 19:47:21 fizzie: Seems likely, I was just thinking about what 'foot' and 'toe' could mean 19:47:42 http://www.fullduplex.org/humor/2006/10/how-to-shoot-yourself-in-the-foot-in-any-programming-language/ "Unix" was my first goggle-hit. 19:48:05 A lack of esoteric languages in that list. 19:48:20 "Note: The IEEE Scheme standard permits only lambda expressions and constants as the value of internal defines." 19:48:22 [Any esoteric language] 19:48:23 What the fuck. 19:48:27 You notice you have no feet. 19:48:38 hahhahaha 19:48:40 What about Befunge 19:48:58 what about it 19:49:19 how do you shoot yourself in the foot IN IT 19:49:38 in befunge 19:49:38 sigh 19:49:41 you missed the whole joke 19:49:43 you lose 19:49:44 etc 19:49:48 i understand it 19:49:50 but i still ask the question 19:49:54 it surely can't be any 19:50:00 Befunge is far more advanced than a typical esolang 19:50:06 la la la 19:51:49 ehird: that IEEE restriction reminds about reading how it's awkward to compile internal defines in the presence of continuations, maybe it's intended to solve that 19:51:56 yep, it is 19:51:57 *reminds me 19:52:00 but how ugly 19:55:03 SA forums have had a discussion about foot-shooting, where someone listed Befunge with "You pull the trigger and the bullet perforates your foot simultaneously from four different directions." and Brainfuck with "Construct, from individual molecules, gun, bullet and foot." Nothing too funny there. 19:55:28 * ehird decides between Gauche, MIT Scheme, PLT Scheme, Scheme48 & Gambit 19:55:30 and maybe larceny 19:55:37 -!- MigoMipo has quit ("QuitIRCServerException: MigoMipo disconnected from IRC Server"). 19:56:02 opinions welcome 19:56:53 hm maybe Unlambda: "Suddenly a bullet emerges from inside your foot" 19:57:01 :) 19:57:04 Gauche: "GC is now Boehm GC 7.1." 19:57:05 ehird: If you want to grow up a Riastradh, do Scheme48. 19:57:07 * ehird writes off. 19:57:14 fizzie: God I hate Riastradh. :| 19:57:23 But what was your meaning there? 19:57:32 He's a very Scheme48 person. 19:58:15 I never figured out what s48's intention was. 19:58:35 Also, its manual link is a 404, sheesh. 19:58:42 Hey, I found another BF description in the comments 19:58:42 Brainfuck: You create a Turing complete gun, but it takes 19:58:42 more bytes of memory to store the gun than there are protons in the universe. The universe dies of old age before you finish writing the bullet. 19:59:06 .Net: Microsoft shoots you in the foot. 19:59:30 or Microsoft hands you a gun to shoot yourself in the foot, or Microsoft hands you a gun and swears blind it’s a toenail clipper 20:01:25 .Net: Microsoft shoots you in the foot, then when you complain they sue you for violating their EULA. 20:03:06 DOBELA: Your feet are split into 5 individual dots. Then you find out you can't shoot them. 20:04:03 Piet: You paint your foot, and then make a colorful border around it in order to shoot it. 20:04:42 -!- ais523 has joined. 20:04:55 wb me 20:04:56 asiekierka: You look at your foot, and asiekierka changes the topic. 20:05:13 ehird, good one, even if mocking me 20:05:16 also, it doesn't take me that long to get apple juice normally 20:05:17 congrats 20:05:30 asiekierka part 2: You pull out a gun, and ehird changes the topic back. 20:05:31 just I went and shut down my laptop, and the public Windows computer I was using 20:05:37 then went to a pub that sold apple juice 20:05:43 and met some of my RL friends there 20:05:46 ais523: quick! Gauche/Larceny/MIT Scheme/PLT Scheme/Scheme48/Gambit 20:05:46 see, apple juice is good for you 20:05:47 Pick one. 20:06:01 ehird: MIT Scheme's the only one of those I've heard of 20:06:09 What boring logic. 20:06:16 so I pick that one on the basis that it's the only one that has anything to tell it apart from the others from my point of view 20:06:58 ais523: You do know the names of the others; you could, for example, sort then in sha-hashed order, and choose thusly. 20:07:13 Rick Astley: Never gonna pwn your foot, never gonna shoot them right... 20:08:16 fizzie: That gives MIT. 20:08:27 er, wait 20:08:28 PLT 20:08:31 irb(main):008:0> %w(Gauche Larceny MIT PLT Scheme48 Gambit).map {|x| [Digest::SHA1.hexdigest(x),x] }.sort[0] 20:08:31 => ["83618951efd5e2d2c5c9fb6c1477485364e59136", "PLT"] 20:09:00 Wii: You try to shoot yourself in your foot but you can't aim it properly and you end up shooting your TV. 20:09:30 wow, that's a pretty high number for the lowest SHA hash... 20:09:36 how come they all hashed in the top hald? 20:09:39 *half? 20:09:40 ..................... 20:09:51 unfortunately I don't think Python can do better 20:09:53 fis@iris:~$ echo "Gauche/Larceny/MIT Scheme/PLT Scheme/Scheme48/Gambit" | tr '/' '\n' | awk '{system("echo `echo -n "$0" | sha1sum` "$0);}' | sort | head -n 1 20:09:56 103c701a4dbfc88dbd699811a1bda6350f3c75f6 - MIT Scheme 20:09:59 I used the names with spaces. 20:10:16 it's Scheme 48 20:10:18 with a space 20:10:20 technically 20:10:22 DS: You touch your feet and access the Gun menu. There you select "Shoot". Then you find out you shot your girlfriend's feet. 20:10:35 That was directly copy-pasted from your question, though. 20:10:48 File "", line 1 20:10:49 |i| hashlib.sha1(i).hexdigest() 20:10:51 ^ 20:10:52 SyntaxError: invalid syntax 20:10:54 :( 20:11:04 comex: it's ruby 20:11:05 :P 20:11:12 I know 20:11:14 and I wish python could do it 20:11:18 ......maybe it can 20:12:07 http://practical-scheme.net/gauche/features.html A lot of SRFIs there. 20:12:17 Still wary about it using Boehm. 20:12:24 what's a SRFI 20:12:47 MIT Scheme is probably out, it barely supports any srfis 20:12:51 VERY LOUD NOISE 20:13:06 asiekierk: it's you, you're the very loud noise 20:13:17 One more 1000hz noise 20:13:28 * comex turns the volume down 20:13:51 Deadfish: You have the gun, and the bullets, but you find out you can't input your feet. 20:14:08 -!- ehird has quit (calvino.freenode.net irc.freenode.net). 20:14:08 -!- Leonidas has quit (calvino.freenode.net irc.freenode.net). 20:14:10 -!- GregorR has quit (calvino.freenode.net irc.freenode.net). 20:15:00 -!- ehird has joined. 20:15:00 -!- GregorR has joined. 20:15:00 -!- Leonidas has joined. 20:15:58 wb ehird 20:16:02 well, netsplit-wb 20:17:05 * comex turns the volume down 20:17:06 oops 20:18:28 that was a wicked netsplit 20:18:32 just me, GregorR and Leonidas 20:18:33 chillin' 20:18:56 ok that's annoying 20:18:59 "The name ‘Scheme 48’ commemorates our having written the original version in forty-eight hours, on August 6th and 7th, 1986. " 20:19:05 1986? Wow. This is old. 20:19:14 :P 20:19:37 well, if they worked every 48 hours since then 20:19:43 imagine how good it would be now! 20:19:53 Here's the missing python: 20:19:55 >>> sorted([(hashlib.sha1(imp).hexdigest(), imp) for imp in "Gauche/Larceny/MIT Scheme/PLT Scheme/Scheme 48/Gambit".split("/")])[0] 20:19:58 ('103c701a4dbfc88dbd699811a1bda6350f3c75f6', 'MIT Scheme') 20:22:39 Okay, it's Scheme 48 vs Gauche vs Gambit now, I think. 20:22:59 ehird: didn't you reccommend Chicken to me a while back? 20:23:04 I even installed it, although I never used it 20:23:20 Chicken seemed to have a nice amount of eggs for it. 20:23:57 and wow, are people still watching asiekierka's desktop? 20:24:02 Yes, unfortunately Chicken has several annoying points to it 20:24:05 no hygenic macros by default, no bignums by default 20:24:14 and mostly eggs instead of srfis 20:24:19 can you undefault that? 20:24:29 yes, I think 20:24:37 but I'd prefer to just get an r5rs-compliant interp that used srfis 20:24:48 also fast, preferably 20:27:43 "Bridges are expected to stand up, and on the “first try,” even! Planes are expected to stay aloft. And yet programmers seem to be content with forever competing in the engineering version of the Special Olympics, where different, “special” standards apply and products are not expected to actually do what they say on the box - at any rate, the idea of offering a legal warranty of proper function (or even of not causing utter disaster, in the mann 20:27:45 er customary in every other industry) for a software product is seen as preposterous." 20:27:47 — http://www.loper-os.org/?p=37 20:28:53 ais523: Oklopol is 20:29:01 ? 20:29:13 well 20:29:14 also, I've never seen oklopol spelt with a capital letter before 20:29:20 there's something very wrong about that 20:29:22 i know 20:29:24 but 20:29:27 Oklopol is. 20:29:30 I have seen "Ais523" on occasion, but there's something very wrong about that too 20:30:09 * ais523 writes /clear 20:30:13 those initcaps things are spooking me 20:30:45 irb(main):005:0> ["Gambit-C","Scheme 48","Gauche"].map {|x| [Digest::SHA1.hexdigest(x), x]}.sort[-1] 20:30:46 => ["d8be759feff060354d1fd9cf4bd1a0a764f31a1e", "Gauche"] 20:30:52 It is the highest form of Scheme, clearly. 20:31:11 Hmm, Gambit has little SRFI support 20:31:26 48 seems to have, uh, none. 20:31:36 No, wait. 20:31:44 48 has a lot. 20:31:46 -!- kerlo has joined. 20:31:51 If you're getting unsuitable results from your SHA hashes, just try alternative spellings. 20:32:34 hmm, how do you print a regex match with awk 20:32:58 % ls scheme48-1.8/scheme/srfi/srfi-*.scm | awk '/srfi-(.+?)\.scm/ {print $1}' | xargs echo isn't working 20:33:02 -!- ais523_ has joined. 20:33:07 -!- ais523 has quit (Read error: 104 (Connection reset by peer)). 20:33:09 ais523_: % ls scheme48-1.8/scheme/srfi/srfi-*.scm | awk '/srfi-(.+?)\.scm/ {print $1}' | xargs echo 20:33:15 do you know how to get that awk call working? 20:34:21 ehird: I don't actually know awk 20:34:25 I learnt sed and perl first 20:34:27 -!- ais523_ has changed nick to ais523. 20:34:31 that reduces the incentive to learn awk 20:34:32 awk is prettier 20:35:13 Perl is beautiful 20:35:13 all that meaning compressed into a few illegible characters 20:36:00 Also ls scheme48-1.8/scheme/srfi/srfi-*.scm | perl -ne 'print "$1\n" if /srfi-(.+?)\.scm/;' 20:39:39 S48: 40 srfis, 1 11 13 13 14 16 17 19 2 25 26 27 28 37 39 4 40 42 43 45 5 60 61 63 66 67 7 71 74 78 20:39:39 Gambit: 11 srfis, 0 4 6 8 9 18 21 22 23 27 39 20:39:41 Gauche: 40 srfis, 0 1 2 4 5 6 7 8 9 10 11 13 14 16 17 18 19 22 23 25 26 27 28 29 30 31 34 35 36 37 38 39 40 42 43 45 55 61 62 87 20:39:48 what is a srfi? 20:39:57 ais523: scheme request for implementation 20:40:02 scheme extension library standards, pretty much 20:40:07 http://srfi.schemers.org/ 20:40:32 If every implementation supported lots of SRFIs, beautiful portable Scheme code would be possible. 20:40:38 And that if is way too hopeful. 20:40:47 Most just invent their own shit to solve a problem. 20:40:52 ehird: If you *want* the awk, you can uglily do it with: | awk 'if (match($0, /srfi-(.+?)\.scm/, a)) print a[1]; }' 20:41:34 It seems a bit silly that you can't get to the matched parentheses in the line-select-o-tron. 20:42:44 also, has this corewar prorgam been made? I call it the "Imp-O-Matic" (hur hur) 20:42:45 basically 20:42:48 tons of spls 20:42:50 then imps 20:42:56 that move so they don't clash with the other imps 20:43:03 probably not, how would it win? 20:43:03 or probably and it didn't win 20:43:16 ais523: it'd be just like an imp, except N times faster 20:43:33 yes, people don't use imps as their only strategy because that would be stupid 20:43:40 imp-spirals are more common, as they actually have a way to win 20:43:50 I'm talking basically for the nano hill 20:43:53 so you only have 5 instructions 20:43:58 corewar isn't about surviving, it's about winning 20:44:11 you don't want to write a survivable program that forces the opponent to run your own survivable program 20:44:11 you can climb the hill without winning I believe 20:44:13 which is what an imp does 20:44:25 then you lose every match 20:44:31 because you draw most and lose a few at random 20:47:06 anyway, I'm discounting Gambit 20:47:09 S48: 40 srfis, 1 11 13 13 14 16 17 19 2 25 26 27 28 37 39 4 40 42 43 45 5 60 61 63 66 67 7 71 74 78 20:47:10 Gauche: 40 srfis, 0 1 2 4 5 6 7 8 9 10 11 13 14 16 17 18 19 22 23 25 26 27 28 29 30 31 34 35 36 37 38 39 40 42 43 45 55 61 62 87 20:47:17 pretty much equal, Gauche's srfis look a bit more useful though 20:48:43 Hmm. 20:50:33 as for my Enigma level, I'm surprised that nobody looked up an online strategy guide or anything like that 20:50:35 nobody will have written one for the level in particular 20:50:39 but the game it models is well-known 20:51:34 is it? 20:51:36 I don't know it 20:51:57 I'm rather good at it 20:51:57 I'll play you if you like 20:52:00 12 11 10, your move 20:52:07 (that's a won position for you if you play well) 20:52:21 errr 20:52:25 what's it called, and what's that format 20:52:32 the format's the number of blocks in each group 20:52:39 so you can reduce any of the numbers, but only one number, on your turn 20:52:42 and if you make it 0 0 0 you lose 20:52:44 oh 20:52:48 11 11 10 20:52:53 11 11 0 20:52:58 and I win now, because the position's symmetrical 20:53:01 ^ul ((nim )S:^):^ 20:53:01 nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim nim ...too much output! 20:53:12 I can win just by copying what you do 20:53:12 that's one of the first losses you learn to avoid 20:53:26 yep, oerjan knows what it's called 20:53:32 ^ul (nim)()(a~a*~a*^:S( )S:a~a*~a*^*a~a*~a*^:^):^ 20:53:33 nim nim nimnim nimnimnim nimnimnimnimnim nimnimnimnimnimnimnimnim nimnimnimnimnimnimnimnimnimnimnimnimnim nimnimnimnimnimnimnimnimnimnimnimnimnimnimnimnimnimnimnimnimnim nimnimnimnimnimnimnimnimnimnimnimnimnimnimnimnimnimnimnimnimnimnimnimnimnimnimnimnimnimnimnimnimnimnim nimnimnimnimnimnimnimnimnimnimnimnimnimnimnimnimnim ...too much output! 20:53:36 but there's another game called nim which isn't as good, I prefer this nim 20:53:40 19:52 ehird: 11 11 10 20:53:40 19:52 ais523: 11 11 0 20:53:42 oh 20:53:45 ^ul (nom)()(a~a*~a*^:S( )S:a~a*~a*^*a~a*~a*^:^):^ 20:53:45 nom nom nomnom nomnomnom nomnomnomnomnom nomnomnomnomnomnomnomnom nomnomnomnomnomnomnomnomnomnomnomnomnom nomnomnomnomnomnomnomnomnomnomnomnomnomnomnomnomnomnomnomnomnom nomnomnomnomnomnomnomnomnomnomnomnomnomnomnomnomnomnomnomnomnomnomnomnomnomnomnomnomnomnomnomnomnomnom nomnomnomnomnomnomnomnomnomnomnomnomnomnomnomnomnom ...too much output! 20:53:46 you can reduce it any amount 20:53:49 :D 20:53:49 stop it 20:53:51 ais523: okay 20:53:55 can I retry my move? 20:54:15 ais523: you mean misere nim, i take 20:54:23 ais523: 12 5 10 20:54:37 (yours that is, the other being standard play) 20:54:58 although they are equivalent for all except the endgame 20:55:05 -!- ais523 has quit (Read error: 60 (Operation timed out)). 20:55:47 Scheme of the process of writing in the Scheme, eval and techniques without the use of foul, C is easier than writing. I know that comfort is INPURIMENTETA Scheme, C, even if in the process of writing, the only remaining primitive minimum C must be written in the Scheme at any cost ... the temptation to get motivated. 20:55:52 i love japanese translations 21:01:15 19:58 ehird: Which is generally preferred as a general use scheme: Gauche or 48? 21:01:15 19:59 Riastradh: Personally I prefer Scheme48 for admiral use, but I don't know about generals. 21:01:19 Oh so witty. 21:01:47 -!- ais523 has joined. 21:01:59 [19:54] oerjan: are you any good at nim, by the way? 21:02:15 ais523: i know the winning strategy 21:02:23 so do I 21:02:25 ehird: 12 5 9 (i win) 21:02:31 ehird: ja no branches 21:02:44 bsmntbombdood: what 21:02:50 it's more fun if you don't let people know that the game has been solved when you teach them it, though 21:02:53 that's hot. 21:02:54 and teach them bits of strategy 21:03:01 bsmntbombdood: ah, rite 21:03:01 well that's true :D 21:03:13 ais523: I was planning on writing a bot that brute-forces it, then seeing what patterns it takes to write an intelligent solver 21:03:27 like "don't let the opponent get 1-2-3" and "don't let the opponent get x-x-0 for x>1" 21:03:36 ehird: interesting 21:03:59 I not only know the strategy, but have also proved it correct, I was bored once 21:04:14 problem solving is merely optimization :P 21:05:12 ehird: do you think using only one table and a couple of shifts would be faster? 21:05:19 bsmntbombdood: not sure 21:05:24 memory access is slow, isn't it? 21:05:30 -!- KingOfKarlsruhe has quit (Remote closed the connection). 21:05:34 so a few shifts might be faster than accessing memory 21:05:36 well those tables are relatively small, the fit in cache 21:06:59 memory access is very fast if it fits in the L1 cache, slow otherwise 21:08:09 i've only got 3*26 + 512 bytes of tables 21:08:21 bsmntbombdood: bruteforcing the nim strategy? 21:08:29 what's nim? 21:09:01 bsmntbombdood: read backlog 21:09:16 he's fiddling with comex's morse, ais523 21:09:20 IF YOU KNOW WHAT I MEAN. 21:09:20 :| 21:09:22 it's what we were discussing for the last half-hour or so 21:09:25 ehird: ah, ok 21:09:28 Purely based on 26, I would've guessed the morse thing. 21:10:13 -!- Sgeo has joined. 21:10:50 WINK WINK? 21:11:30 morse contains more than the alphabet iirc 21:11:34 oerjan: why don't you show ehird the solution to the Enigma puzzle I gave him, or at least the first move? 21:11:38 12 11 10, your move 21:11:44 oerjan: not in comex's problem it doesn't 21:11:48 oerjan: it just does the alphabetical ones 21:11:52 1 11 10, i think 21:11:56 ah, yes 21:11:59 1 9 10 21:12:17 1 9 1? I didn't play the Enigma Puzzle so i don't know 21:12:21 1 9 8 21:12:28 asiekierk: 1 9 1 goes to 1 1 1, I win 21:12:33 1 9 8 is the correct move there 21:12:33 oh 21:12:36 sorry 21:12:36 didn't know the rules 21:12:40 Explain plz 21:12:42 so I can play 21:12:57 oerjan: it does, i didn't implement it 21:13:00 1 6 8? 21:13:06 ais523: you said whoever makes 0 0 0 loses, right? 21:13:11 not 1 1 1 21:13:14 oh 21:13:18 1 6 7 21:13:26 oerjan: yes 21:13:33 but clearly you're going to win this one 21:13:38 1 5 7 21:13:44 so misere, it's a bit to remember at the end 21:13:49 yep 21:13:54 I wanna play 21:13:56 ais523: you start 21:13:57 1 5 4 21:13:59 Me too 21:14:03 But I don't know the rules 21:14:12 oerjan: I'll just resign this one, 1 0 4 21:14:18 and you can trivially win from there 21:14:23 1 0 0 21:14:26 you win 21:14:26 Would it be 1 0 1 21:14:28 ais523: 21:14:30 i wanna play :D 21:14:31 ehird: ok 21:14:32 Me too 21:14:34 ais523: i solved your puzzle, was rather trivial once i actually tried, problem is the ai still gets jammed. 21:14:36 what position should I start form? 21:14:39 but what's the rules 21:14:39 ais523: whatever you wish 21:14:43 allow me to win though 21:14:45 asiekierk: 1 0 1 is for the other nim variant, where making 0 0 0 _wins_ 21:14:47 asiekierk: simple: 21:14:50 ok, 3 5 7, your move 21:14:51 err 21:14:53 that's a won position for you 21:14:53 you can remove any amount from one column 21:14:54 but only one 21:14:55 are you discussing it 21:14:59 you want to make the other person get to 0 21:15:04 ais523: 1 5 7 21:15:05 in any column 21:15:09 oklopol: I'm not giving the exact puzzle there, so as to not spoil it 21:15:10 ehird: 1 5 4 21:15:20 ais523: 1 5 3 21:15:26 asiekierk: on your turn, you can reduce any of the numbers by any amount, but have to reduce exactly one number 21:15:29 ehird: 1 2 3 21:15:35 if you make the position 0 0 0, you lose 21:15:36 ais523: 1 2 2 21:15:40 0 2 2 21:15:44 Okay 21:15:49 ha I win yaaay 21:15:56 ehird: no you don't 21:15:59 what's your next move? 21:16:01 ais523: could you fix the bug, i can't find a way not to get the ai jammed :P 21:16:05 And how do you win 21:16:05 well, i'll try a few times 21:16:09 oh 21:16:13 oklopol: the bug only appears if the AI tries to move in the lefthand column 21:16:14 i get it 21:16:16 oh, right 21:16:18 if you play the optimal strategy, it never does 21:16:22 Lemme try, but I probably will suck at it 21:16:26 ais523: 0 2 1 21:16:28 I lose. 21:16:33 yep, 0 0 1, and you lose 21:16:39 Wait, 0 0 1? 21:16:41 I thought it's only 0 0 0 21:16:43 asiekierk: I played 0 0 1 21:16:48 thus forcing ehird to play 0 0 0 and losing 21:16:49 Oh, right 21:16:51 I see 21:16:52 0 0 0 21:16:57 asiekierk: 3 5 7, your move 21:17:02 ais523: what does "optimal" mean? 21:17:06 3 3 7? 21:17:09 oklopol: the only strategy that wins 21:17:11 asiekierk: 3 3 0 21:17:11 i'm using a winning strategy 21:17:19 but it gets jammed. 21:17:21 there is only one winning strategy, the way it's set up 21:17:30 /msg me the moves you're using so I can check 21:17:33 i see. then there's probably an error somewhere in my derivation 21:17:36 but we'll see 21:17:36 is it getting jammed in the lefthand column? 21:17:42 sure 21:17:47 but i'll just try a few times 21:17:49 it should never be moving there 21:17:57 except possibly on the very last turn 21:18:13 asiekierk: where are you moving from there? 21:18:15 thinking 21:18:18 incidentally, 3 3 0 is a winning position for me 21:18:20 as I can just copy what you do 21:18:46 20:18 Riastradh: If you were more specific with your inquiry, more specific persons might reply more specifically. 21:18:55 god, that guy doesn't have a stick up his ass, he has an ass up his ass. 21:19:15 2 3 0 21:19:47 asiekierk: 2 2 0 21:19:48 ais523? 21:19:49 oh 21:20:06 2 1 0 then 21:20:11 0 1 0 21:20:15 I lose 21:20:17 yep 21:20:26 I just found out about this game 21:20:27 so uh 21:20:27 want another game? 21:20:38 Yep 21:20:39 5 2 3 21:20:44 your turn 21:20:45 1 2 3, I win 21:20:52 ...what? 21:20:55 (1 2 3's a well-known winning position) 21:20:59 I don't win yet, but it's inevitable 21:21:05 Where are you taking all these positions from!? 21:21:11 anyway 1 2 1 21:21:14 1 1 1 21:21:14 ais523: i don't know the moves, they depend on what the ai does. 21:21:15 3 3 0 -> (2 3 0 -> 2 2 0 -> (1 2 0 -> 1 0 0 -> 0 0 0 | 0 2 0 -> 0 1 0 -> 0 0 0) | 1 3 0 -> 1 0 0 -> 0 0 0 | 0 3 0 -> 0 1 0 -> 0 0 0) 21:21:19 oklopol: the ai's deterministic 21:21:24 http://www.cuil.com/search?q=Wolfram+Alpha 21:21:27 0 1 1, then you do 0 0 1 and I lose 21:21:27 home yoghurt making 21:21:30 i'm not using any kind of cool strategy, i just manually brute-forced the whole game. 21:21:31 ebony foot worship 21:21:51 oklopol: you manually the _whole_ game? 21:21:52 Uh, I must make a version of that game for the DS 21:21:55 ais523: determinism help very much, i'm so going to deduce how it works. 21:22:00 oerjan: just enough to win that one 21:22:08 oh 21:22:09 :) 21:22:16 well still, same answer 21:22:20 ehird: Used Armoire's my favourite there 21:22:40 Do you know any fun games like that? 21:22:48 asiekierk: Nim. 21:22:54 what's Nim 21:22:57 asiekierk: that game 21:22:59 that we were just playing 21:23:05 oh 21:23:05 Kayles is related but a bit harder to represent over IRC 21:23:25 http://www.reddit.com/r/programming/comments/830u9/wolfram_alpha_is_coming_and_it_could_be_as/c083vsm 21:23:27 is this real? 21:24:27 okay i agree with AnMaster on the game. 21:24:35 well about 21:24:47 well level 21:24:52 Fuuuuuck 21:24:54 Lost the game :( 21:25:17 ais523: btw is that a trivial game? i didn't read the logs 21:25:45 it's been solved, it's trivial for a computer (thus I wrote the perfect AI), but not quite that trivial for a human to do the calculations in their head 21:25:54 my solution is not in any way mathematically beautiful, although subsolutions are, didn't see a reason to find a complete theory because i already found out enough to beat it 21:26:32 ehird: that comment is a joke, I think 21:26:45 and i'm not going to show it to you before i know it works. 21:27:01 although those answers are the sort of thing it would come up with, I think the commentor went out of the way to come up with silly answers 21:27:52 ais523: i have a few rules for what states are win and what are lose, if i have errors, they must be pretty consistent, because all the states before it jams are wins. 21:27:58 ais523: In what did you write the perfect AI 21:28:00 ehird: from briefly browsing the beginning of what the linked article said, the actual alpha won't be released until may 21:28:07 http://www.theonion.com/content/news/al_gore_places_infant_son_in?utm_source=onion_rss_daily 21:28:07 asiekierk: a random subset of Lua 21:28:13 Oh 21:28:18 I hoped an Esolang 21:28:27 ais523: maybe i could play you on priv? 21:28:30 you be the bot 21:28:31 oklopol: sure 21:28:34 I'll use its strategy 21:28:42 Then me! Then me! 21:28:43 ehird: you know what onion is, i hope, or are you going to ask if that's true as well? :D 21:28:46 *the onion 21:28:48 haha 21:30:08 wtf is this wolfram alpha 21:30:33 #esoteric have been wondering what it is for a while 21:30:38 i read pieces of the press release but it all just sounds like fluff 21:30:43 with no actual explanation of what it does 21:30:52 blah blah blah revolutionary knowledge engine blah blah blah 21:30:59 ais523 has tried it out, apparently it's good 21:31:06 I think it's bullshit, like all of Wolfram's stuff 21:31:08 the annoying thing is that I know what it is but aren't allowed to tell anyone 21:31:19 GRAAAAH JUST TELL US ;__; 21:31:47 How would anyone know if you told us? You know, apart from the publicly accessible channel logs. 21:31:53 /msg :P 21:31:55 brb -> 21:32:53 fizzie: I don't care, I have morals 21:33:16 ais523: how quaint :D 21:33:34 agreed, I feel rather out of place 21:34:19 well by may it'll stand or fall on its own merit, regardless 21:34:35 i don't think mere hype can save such a project 21:34:59 no matter how good wolfram is at it 21:35:00 if you want a piece of information, exactly once in the last two years have I wished that it existed publically 21:35:38 And that was in the context of "if it existed publically, those annoying #esoteric people would stop bugging me about it". 21:35:52 I'll keep the context secret for now, because it's boring 21:36:47 To tell you the truth, I haven't noticed any talk about it here, so it can't be a very regular topic. 21:37:44 it's only a couple days since it showed up on reddit, isn't it? 21:38:08 well, I've already seen the wolfram hype machine in action about the 2,3 thing 21:38:16 and was mentioned here, and that's the first i saw 21:38:40 Could This be a Cuil killer? 21:38:41 It is a bit corny to have on wolframalpha.com an image of a text input control. 21:38:57 and i still haven't read the press release btw, in fact i think that's partially because of wolfram's hype notoriety 21:39:23 the press release is unfortunately mostly meaningless 21:39:42 def a(): 21:39:43 for i in xrange(5): 21:39:45 q = Slist([2, 3, 4, 5, 5]).filt(y == 5) 21:39:46 print q 21:39:47 #dis.dis(a) 21:39:59 comex: stop pasting Python over IRC, my client doesn't receive the indentation 21:40:03 neither does mine 21:40:04 so I can't tell what the program does 21:40:09 the idea is 21:40:20 Slist(somelist).filt(y == 5) 21:40:22 filters on |y| y == 5 21:40:29 without the need to type lambda 21:40:29 my client receives the indentation but displays it as inverted I's 21:40:31 neither does mine but i don't know python 21:40:44 you know 21:40:46 yes, I know, that's horrible 21:40:50 i guess i have the logical means, at least 21:40:56 that idiot who designed morse code really should have used prefix-free codes 21:41:12 it does this by using ctypes to modify the code of the calling function 21:41:12 bsmntbombdood: that would have made it a lot slower 21:41:13 no not really 21:41:17 the first python macro, I guess :p 21:41:22 ais523: how? 21:41:25 it's fairly perfect as is 21:41:34 bsmntbombdood: by reducing its compression ratio 21:41:52 ais523: you'd get rid of the waiting between symbols 21:42:02 which is not very long for a skilled operator 21:42:05 it's the same length as a dash 21:42:08 yeah, and also it's easier to learn to listen to it this way 21:42:17 whereas the waiting between dots/dashes is the same length as a dot 21:42:30 and prefix free codes wouldn't make it longer than an extra dash 21:42:31 but that's a minor point ofc 21:42:35 Morse Code is prefix-free, really 21:42:40 you just have to realise it has four symbols not just two 21:42:45 yeah 21:42:53 ...not 21:42:55 it communicates data both in the length the signal is on, and the length the signal is off 21:43:31 which is bad 21:43:52 comex: Uh... if you just want to not type lambda, why not just use [y for y in [2, 3, 4, 5, 5] if y == 5]? 21:44:37 . . . . . . ... . . . ... . . ... ... ... . ... ... ... ... ... . ... . . ... . . ... . . 21:44:51 bywe 21:44:53 -!- asiekierk has quit. 21:45:14 fizzie: too verbose 21:45:18 actually, speaking as an engineer, the main problem with morse code is that it isn't balanced 21:45:29 it spends more time during dots and dashes then it does between them 21:45:43 which means you need to use a sort of line to transmit it that can handle a net direct current 21:45:59 (although by making e a single dot that problem's reduced to some extent) 21:46:24 hmm? 21:46:27 what do you mean single dot 21:46:31 oh 21:46:35 isn't e "." in morse code? 21:46:38 or have I messed that up? 21:46:39 the fact that it *is* a single dot 21:46:41 yeah 21:46:41 it's . 21:46:50 frequent -> short 21:46:56 most frequent -> shortest 21:47:06 yes, but more to the point, most frequent -> shorter than the gap between letters 21:47:16 so you're letting the communication medium be a bit more negative to count out all the positives 21:47:45 oh that's what you were talking about 21:47:48 right 21:48:50 the subtleties in communication codes are rarely apparent to people who haven't looked into them 21:49:21 anyway, IIRC telegraphs used amplitude modulation of a carrier wave 21:49:41 and that always cancels out negative/positive, so it wasn't a problem for them 21:50:05 * bsmntbombdood keeps forgetting that he wants to get a cw transceiver 21:50:21 what does cw stand for in that? 21:50:31 constant wave 21:50:56 morse code is transmitted by turning a constant tone on and off 21:51:04 ah, yes 21:51:18 in my course they call it ASK 21:52:11 ASK is more general iirc 21:52:31 well, ASK refers to sending digital data by turning a constant wave on and off 21:52:42 so it's only more general in the sense that it doesn't have to refer to radio 21:52:48 you could do ASK with a piece of string in theory 21:52:54 maybe I should, it could be a fun experiment 21:53:20 Also in the sense that it might have more than two amplitude levels, according to wiggibedia. What you say is "called on-off keying". 21:53:55 well, ok, although using more than two amplitude levels for ASK is relatively stupid because you may as well do QPSK if you're doing that 21:54:04 or one of the multiple-level versions of QPSK 21:55:29 ASK or not ASK, that's the question 21:59:22 IR remote protocols are funny. At least those remotes I have here all encode the data by sending a train of fixed-length on/off pulses (of a 38 kHz carrier wave), with 0/1 bit encoded by the length of the pause between pulses; and then they send both the actual command and its complement, so that the total transmission length is constant. 21:59:56 it reminds me of the secure smartcards they're making nowadays 22:00:08 which are careful to never think a 0 without thinking a complementary 1 at the same time 22:00:18 it seems that people were hacking into them by calculating their thoughts by measuring the power drain 22:00:28 which is insane, I like it 22:00:40 fizzie: why? 22:00:47 Yes, and the crypto-people call that a "power attack", which is also funny. 22:01:45 side-channel attacks are terrifying 22:01:57 agreed with that 22:02:11 quantum encryption is 100% mathematically secure, but something like 8 side-channel attacks have been found against it 22:02:22 you think aes is secure? not if you have hostile code running in an untrusted proccess on your machine 22:02:45 bsmntbombdood: hostile code running in a trusted process would be worse 22:03:00 that's the thing, it doesn't need to be a trusted process 22:03:09 and it wouldn't be any worse 22:03:22 because an untrusted proccess can recover your key 22:03:42 -!- Mony has quit ("Quit"). 22:04:58 Oh, that one thing about getting CRT screen pictures by just measuring the general lightness level (through a curtain, or reflected off a wall) over time and then deconvolving with the impulse response of the CRT phosphors; that was also the awesome. 22:05:58 van eck 22:06:14 fizzie: ok, that one is utterly awesome 22:06:32 you can do it with lcds, usb keyboards too 22:06:33 although I'm pretty surprised that deconvolution's that accurate 22:07:21 http://www.cl.cam.ac.uk/~mgk25/ieee02-optical.pdf has some pictures. 22:07:56 And that one only works for CRT tubes, since it's about measuring diffusely-reflected light, not picking up the EM radiation like the Van Eck stuff. Although that's frightening too. 22:08:48 there's a reason why TEMPEST is so strict 22:17:59 -!- SimonRC_ has changed nick to SimonRC. 22:19:11 21:01 bsmntbombdood: side-channel attacks are terrifying 22:19:19 like "give us the key or I'll fuck you with this metal pole" 22:19:22 that tends to work. 22:19:38 ...except you don't even have to go there 22:20:04 isn't that more behind-channel? 22:20:08 luckily, that sort of side-channel attack, here in the UK, would probably receive media coverage 22:20:22 ais523: yeah, criminals are universally caught. 22:20:37 including the authorities using 'advanced interrogation techniques'. they're all in jail. 22:21:02 ehird: I wouldn't say universally 22:21:07 but it certainly makes you a lot easier to catch 22:21:09 that was sarcasm. 22:21:18 if you have to physically abduct the person you're trying to hack into the files of 22:21:25 yes, hiding from the authorities is likely to be stupid 22:21:36 the only thing you can do is elect people who'll try to respect your privacy, and that's basically impossible 22:21:43 they just have to park a van outside for a couple hours 22:22:10 someone should make an anarchy party, whose goal is to 1) get elected, and then 2) disestablish all government 22:22:11 for: 22:22:19 I wouldn't vote for them 22:22:26 I'd fear for my life if some people like that got elected 22:22:36 ais523: Anarchy is fine if everyone is perfect 22:22:45 but, well... they're not. 22:22:47 ehird: there are a lot of imperfect people around, unfortunately 22:24:05 hmm, gauche vs scheme48 is a hard question 22:24:26 can you use the libraries from one with the other? 22:24:34 bye 22:24:38 bye akiross 22:24:44 -!- akiross has quit ("Leaving"). 22:24:51 that was unexpected 22:25:03 someone's been idling all this time, and jumps in just to say bye, and isn't Mony? 22:25:33 * Sgeo does that sometimes 22:25:59 21:24 ais523: can you use the libraries from one with the other? 22:26:02 they're entirely unrelated interps. 22:26:09 so, it depends on what the libs are written in 22:26:14 err, what? 22:26:15 if they're written in scheme, I wouldn't be surprised 22:26:20 I'm not even talking about the libraries 22:26:21 because they're both scheme interps 22:26:25 that's utterly irrelevant to my current decision 22:26:29 ah, ok 22:26:51 -!- olsner has quit ("Leaving"). 22:26:56 it was you posting about the srfis higher up, presumably you've gone on to compare some other things now 22:27:06 like the diameter of the steering wheel, or whatever 22:27:14 well, that was my first stage of comparison 22:27:21 but they're both roughly on a level playing field as far as srfis go 22:27:22 * oerjan swats ais523 -----### 22:27:29 ouch! why? 22:27:29 apparently gauche's interp is "hard to maintain" 22:27:35 but it has nice stuff for scripting 22:27:41 * ais523 catches oerjan in a butterfly net -----\XXXX/ 22:27:44 i felt we were on an "unexpected" flow here 22:27:56 oh dear 22:28:08 that was certainly unexpected 22:28:22 I was wondering what would beat a swatter at stone-paper-scissors 22:28:32 and utterly failed to come to a decision, so I used a butterfly net instead 22:28:39 what is it a reference to? 22:28:44 ehird: Top Gear 22:28:53 there was an argument that James May was losing 22:28:54 ah, I like top gear but I don't recall any such quote 22:29:03 so he went around comparing utterly irrelevant features of the cars 22:29:11 to find one that he won at 22:29:17 http://www.capturedlightning.com/frames/interesting.html 22:29:19 one advantage of scheme48: It's not written by a japanese person with questionable English (well, ok, it's mostly fine but bits of awkwardness every now and then) 22:29:24 http://link.brightcove.com/services/player/bcpid1417302205?bctid=1419758473 22:32:52 Sgeo: awesome 22:33:31 Same people also shrink coins. Why you'd want to do this I don't know 22:33:35 http://www.capturedlightning.com/frames/OldQtr_R1.jpg 22:42:12 Ah, Gauche fails some R5RS pitfall tests. 22:42:13 Hm. 22:43:34 pitfall tests? 22:44:37 http://sisc-scheme.org/r5rs_pitfall.php 22:44:45 Horrible, evil Scheme code that is technically R5RS compliant. 22:45:20 a nice testsuite 22:46:16 ((lambda lambda lambda) 'x) 22:46:21 not the most evil thing there, but I love that line 22:46:46 it should have been: 22:46:50 ((lambda lambda lambda) '(mushroom mushroom)) 22:47:09 argh, that's the second badgerbadgerbadger reference that's been made today 22:47:18 what is it with those references, the llama song was so much better 22:47:25 (the other was in RL) 22:47:36 "in RL"? 22:47:41 oh 22:48:22 sorry, should I have said "afk" instead? 22:54:25 -!- k has joined. 22:54:48 -!- kar8nga has quit (Nick collision from services.). 22:54:51 -!- k has changed nick to kar8nga. 22:55:07 -!- kar8nga has quit (Remote closed the connection). 23:00:19 gosh> (+ 1 +inf.0) 23:00:20 0 23:00:21 .lol wat 23:00:49 "gosh"? 23:01:17 The gauche shell 23:01:31 why are repls called shells nowadays? 23:01:39 I have a real shell for doing shell stuff 23:01:43 let my repl do repling 23:01:45 the first repls were shells. 23:01:53 a shell IS an R.E.P.L. 23:02:00 no, a shell's just a REL 23:02:04 there's no printing involved 23:02:09 unless you invoke a command that does the printing 23:02:10 My shell informs me of the results of commands. 23:02:17 what, really? 23:02:22 ais523: depends on what you mean by "P" 23:02:22 my commands inform me of the results of commands 23:02:34 the shell just runs them, and connects them together in pretty unixy ways 23:02:46 shells typically bing stdout to the same place shell messages go 23:03:04 they are printing the result of the stream operations you specify 23:03:21 ais523: you're just nitpicking 23:03:23 'tis a bit of a stretch 23:04:17 Options: -h Maximum heap size in words (default 3000000). 23:04:17 A heap size of 0 means the heap can grow 23:04:18 unboundedly. This is dangerous because it can 23:04:20 cause your system to run out of memory. 23:04:23 lol wat 23:04:32 WHAT MY COMPUTER MIGHT RUN OUT OF MEMORY OH LORD 23:05:31 it's a resource limit 23:05:38 and setting resource limits is generally considered wise 23:05:53 I know, but it's ridiculous, 1. my computer can do that for me 2. being subturing out of the box is just silly 23:06:26 ehird: it's subturing anyway, your computer has finite memory 23:06:34 that's not the implementation's fault 23:06:35 > ^D 23:06:36 Exit Scheme 48 (y/n)? y 23:06:38 okay, you know what? 23:06:41 you don't have to ask me that. 23:06:49 also, asking on ^D? does that even make sense? 23:06:56 you can't have a y after end-of-file to say yes 23:07:04 ... 23:07:06 it's just a subturfuge 23:07:08 so it has to open a whole new file just to prompt you 23:07:10 Sometimes I wonder if you actually use a computer 23:07:18 it is trivial to trap ^D 23:07:25 this repl has no line editing, and it does that 23:07:28 ehird: only in an interactive environment 23:07:34 this is an interactive environment 23:07:40 not necessarily 23:07:47 and I know it can treat interactive and noninteractive differently 23:07:50 if it wasn't, it wouldn't prompt. 23:07:58 but IMO, things are neater if it treats everything the same 23:08:08 neater as in less user friendly, yes. 23:08:14 like no prompts 23:08:17 or line editing 23:08:25 ehird: neater as in more user friendly, I prefer things to act predictably 23:11:03 Am I the only one here who fantasizes about Croquet being as popular and well supported as SL? 23:11:19 you're certainly the only one here who uses words like "fantazised" for things like that 23:12:21 * ehird allocates 100000000 cons cells. 23:12:24 Sgeo: croquet was around long before second life was, they're rather different though 23:12:28 \m/ 23:12:39 ais523: er, croquet = 2007 23:12:46 was the actual release 23:12:48 ehird: no, croquet was around in victorian times 23:12:54 **groan** 23:13:06 it's not even meant to be a pun or misunderstanding 23:13:12 you can't just steal common words like that 23:13:12 http://en.wikipedia.org/wiki/Croquet_project 23:13:24 ais523: I agree -- unix stole eunuchs 23:13:28 I'm still annoyed at Microsoft for using "Windows" as the main meme-name of an OS 23:13:29 How horrid of them 23:13:37 and no, those are pretty clearly different words 23:13:43 same pronounciation. 23:15:16 not really, I actually pronounce the I in UNIX as an I, although I'm aware that's not the "standard" pronunciation 23:15:27 Exit Scheme 48 (y/n)? 23:15:27 I'll only ask another 100 times. 23:15:28 Exit Scheme 48 (y/n)? Exit Scheme 48 (y/n)? Exit Scheme 48 (y/n)? Exit Scheme 48 (y/n)? 23:15:37 It does not like rlwrap. 23:16:20 ehird: well, you seem to be making my points for me, just more effectively 23:16:41 ais523: "Scheme 48's REPL is buggy" != "your points are correct" 23:16:45 It's buggy for entirely different reasons 23:17:01 "Scheme 48 uses a copying garbage collector." 23:17:08 That would be why it is using 2GB of ram, when I only consed up 1. 23:17:24 lots of implementations use copying garbage collectors, they can be very fast 23:17:31 Speed != memory 23:17:33 OCaml does for some things, IIRC 23:17:37 and agreed 23:17:44 just an explanation of why double memory would be desirable 23:18:10 > ,collect 23:18:11 Before: 22039 out of 231330816 words available 23:18:12 After: 589056 out of 1937408 words available 23:18:16 Of course, the issue is that it doesn't shrink the heap./ 23:18:23 (I started with -h 0, which means "expand heap to fit program".) 23:18:34 So it'll use 2GB until I kill it, even though there's not many objects floating around. 23:18:36 nearly everything doesn't shrink the heap 23:18:47 they should 23:18:53 even malloc()/free() doesn't normally with most implementations, you have to jump through hoops to get heap shrinkage to work 23:19:03 oh, that's not what I mean 23:19:13 what do you mean then? 23:19:15 if you malloc 2gb then free it, the memory counter in Activity Monitor goes down, and the memory is returned to the OS 23:19:20 in scheme 48, if you cons 2gb 23:19:22 what, really? 23:19:22 then discard it 23:19:24 and run the gc 23:19:25 ehird: there is a theory that gc'ed memory can be faster than manually allocated memory, but only if you use much more memory than you actually need 23:19:28 it still uses 2gb of memory 23:19:29 forever 23:19:30 as long as memory isn't too fragmented, paging will let you ignore the vast tracts of currently-free space 23:19:31 you can never shrink it 23:19:34 most implementations of free don't return to the OS, but to that process's malloc 23:19:45 s/use/allocate/ 23:19:46 after all, if you're still keeping something allocated near the end of memory 23:19:48 oerjan: I support the theory, except without your annotation 23:20:02 Not using a gc is always a bug... 23:20:24 ehird: or some form of compiler-checked allocation 23:20:26 ehird: i am just pointing that it can be about trading memory for speed 23:20:31 one which gc is only one sort 23:20:38 -!- tombom has quit ("Peace and Protection 4.22.2"). 23:20:54 wow, I've just had an insane idea, which wouldn't work for most programs but would be very eso on the ones it did 23:20:55 hmm... if a copying GC uses twice the space that is within objects, that rather suggests it is a non-generational copying GC. Ouch. 23:20:59 static analysis of memory allocation 23:21:08 you just figure out all the mallocs at compile time 23:21:18 and replace them with offsets into a fixed data structure 23:21:19 ais523: that is standard in Avionics 23:21:36 accoding to my dad, at least, and he should know 23:21:44 sounds great, and it would actually be appropriate there 23:21:51 http://pastie.org/411167 <- my tseting procedure 23:21:54 now to try it in gauche 23:22:00 let's do it in something it's utterly unsuited for, like a compiler 23:22:12 in fact, it is usual for small/hard real-time embedded systems 23:22:25 ehird: ITYM http://rafb.net/p/4g4iA738.html 23:22:25 also, COBOL uses static allocation 23:22:34 >_< 23:22:38 forth tends to for a lot of things too 23:22:51 OK, 1.35GB being used 23:23:02 running gc 23:23:07 hmm... this reminds me of the thread on clc of someone who was translating C into C# 23:23:09 aaaand it's still using 1.35GB 23:23:14 and wanted to know what to translate free() into 23:23:18 lol 23:23:26 and there has been some research into "region inference", to make Ocaml programs' allocation more efficient 23:23:46 GC works fine in practice 23:23:59 the solution's to assign C#'s version of null to whatever you were trying to free, so it can be garbage-collected 23:24:07 ehird: unless a 100us delay is deadly 23:24:09 ;-) 23:24:10 SimonRC: 23:24:13 a version of c's {} that applies to allocations within would be a huge boon for that 23:24:16 i.e. 23:24:21 but no individual usenet newsgroup's likely to give a good answer due to topicality problems 23:24:37 SimonRC: wow, microseconds? that's quite a lot 23:24:39 mem{ int *a = local_alloc(1gb); do stuff with a; } 23:24:45 at the end of the block, *a is freed 23:24:46 when working with VHDL a lot you tend to think in nanoseconds 23:24:51 likewise with asm on modern processes 23:24:53 as well as any other local allocations on the local allocation stack at the time 23:24:57 *processors 23:25:27 ehird: they're called auto variables. 23:25:30 VHDL handles picoseconds too, but that's only really useful if you're trying to model individual transistors in the processor rather than just writing down how they behave 23:25:34 C doesn't have them, does it? 23:25:41 ehird: VLAs 23:25:43 or "stack allocated" in colloquial C++ 23:25:44 but they're only in C99 23:25:48 sure, that's stack allocated 23:25:52 good luck fitting 1gb on to the stack 23:25:58 i'm talking about scoped heap allocation 23:26:02 in theory, they don't have to be stack allocated 23:26:05 Cobalt is alpha 23:26:07 nothing in the C standard says they are 23:26:15 And I think Cobalt is basically what I want 23:26:16 just most implementors do them like that because they're lazy 23:26:26 also, what makes you think the heap is bigger than the stack? 23:26:39 c++'s destructors allow heap-allocated stuff to have a lifetime as if it lives on the stack 23:26:40 * ais523 grew up on DOS, where in some memory models they're equal 23:27:03 you keep saying c++ 23:27:04 stop i t 23:27:11 ehird: why? 23:27:13 why? 23:27:20 after all, C++ was designed to add lots of features missing from C 23:27:26 because if a 100us delay is deadly, you shouldn't be using anything but asm and cx 23:27:27 *c 23:27:28 some of them were subsequently backported 23:27:37 * ais523 suddenly realises why ehird hates C99 so much 23:27:38 ehird: huh? why? 23:27:48 ehird: C++ is no slower than C if you don't make use of its slower features 23:27:52 SimonRC: for a start, you shouldn't even use C++ 23:28:01 ehird: that's quite a strong statement! 23:28:03 I happen to like C++ 23:28:04 and, ais523 too, if you don't use any fancy c++ features why are you using c++? 23:28:09 although I haven't used it for much recently 23:28:13 ehird: to use its faster features? 23:28:21 ais523: indeed, they are designed to be zero-overhead 23:28:43 I find http://www.uni-koblenz.de/~vladimir/breviary/fake.txt to be a more reliable account of C++ than just about anything else 23:29:18 ehird: const char* string constants is a big incompatible improvement, for instance 23:29:31 ehird, I'm taking a C++ class 23:29:45 ais523: I am fairly sure this is valid C89: {const char *foo = "butts";} 23:29:51 Sgeo: that's nice. 23:30:12 ehird: yes, it is I think 23:30:16 but you have to do it explicitly 23:30:26 C++ will warn you if you write {char *foo = "butts";} 23:30:34 I'm sure you can get gcc to warn you about that. 23:30:37 yes, you can 23:30:41 AnMaster does, IIRC 23:30:53 but, it gives too many warnings 23:31:06 because libraries written in C normally expect char* strings 23:31:22 and you can't pass a const char* string into a char*-expecting function without unsafe casts 23:31:35 in C++, because nothing can mess up constness like that, the libraries don't 23:32:41 -Wwrite-strings: "When compiling C, give string constants the type 'const char[LENGTH]' -- These warnings will help you -- but only if you have been very careful about using 'const' in declarations and prototypes. Otherwise, it will just be a nuisance; this is why we did not make '-Wall' request these warnings." 23:32:51 also, the half-meg hello worlds just come from streaming overhead, you don't need heavyweight streams for something as simple as that 23:33:02 in gcc-bf, I get annoyed at stdio overhead for something like a hello world 23:33:17 fizzie: the problem's not so much about code you write yourself, which you can change 23:33:27 but the code everyone else wrote that you have to link to 23:33:53 Sure, but that's what the manual says. They could've mentioned "char *"y library functions. 23:34:08 ;;; -*-Emacs-Lisp-*- cmulisp.el 23:34:08 ;;; Copyright Olin Shivers (1988). 23:34:09 ;;; Please imagine a long, tedious, legalistic 5-page gnu-style copyright 23:34:12 ;;; notice appearing here to the effect that you may use this code any 23:34:14 ;;; way you like, as long as you don't charge money for it, remove this 23:34:16 ;;; notice, or hold me liable for its results. 23:34:18 That's one ballsy license. 23:34:50 well, most standard libraries like the glibc headers have been fixed, now, but third-party libraries are a problem 23:34:55 ehird: the amazing thing is, it would probably work 23:35:08 he didn't explicitly grant any licence priveliges at all, so someone who breaks it can be sued 23:35:26 if someone uses it as described there, though, and he tries to sue them, he won't get a payout due to estoppel 23:35:37 heh 23:35:51 "estoppel" sounds like someone's nick. 23:35:54 probably most companies wouldn't dare use code with a licence as vague as that, but AFAICT it works 23:36:05 It's bundled with scheme48 23:36:08 [Notice] -NickServ- estoppel is not registered. 23:36:17 -!- ehird has changed nick to estoppel. 23:36:19 Bitches. 23:36:38 I may have been thinking of Aardappel. 23:36:42 why the sudden psygnisfive channeling? 23:36:45 This is a nice nick. 23:36:55 what? 23:36:58 whos channeling me? :| 23:37:02 Bitches. 23:37:07 Or eclipple.mp3. 23:37:10 i dont say bitches 23:37:19 YES YOU DO 23:37:25 or did, at any rate 23:37:41 estoppel: I've read that link, and it appears to be some sort of joke? 23:37:49 no shit sherlock 23:37:56 wow, that was blindingly obvious 23:38:03 sorry, but if you're channeling psygnisfive, I want to channel AnMaster 23:38:03 how on earth can you miss the fact that that was a joke? 23:38:07 listen, bitch 23:38:08 aaaaargh!! 23:38:11 i dont say bitches 23:38:15 and I didn't, although I'm disappointed you didn't spot the metajoke 23:38:16 ais523: o 23:38:20 oerjan: oko 23:38:21 "Bitches. I don't say bitches." 23:38:23 okoko 23:38:25 okokoko 23:38:29 okokokoko 23:38:32 okokokokoko 23:38:34 HAHAHAHA 23:38:35 okokokokokoko 23:38:37 okokokokokokoko 23:38:38 ;) 23:38:39 this internet connection sucks; I'm going to bed 23:38:44 okokokokokokokoko 23:38:44 koko is a gorilla 23:38:46 okokokokokokokokoko 23:38:49 okokokokokokokokokoko 23:38:51 okokokokokokokokokokoko 23:38:55 okokokokokokokokokokokoko 23:38:55 ookookook 23:38:57 okokokokokokokokokokokokoko 23:38:59 HEY 23:39:00 I BROKE IT UP 23:39:00 okokokokokokokokokokokokokoko 23:39:02 YOU HAVE TO STOP 23:39:02 okokokokokokokokokokokokokokoko 23:39:06 okokokokokokokokokokokokokokokoko 23:39:07 GOD DAMN YOU PEOPLE 23:39:08 okokokokokokokokokokokokokokokokoko 23:39:10 okokokokokokokoko 23:39:10 okokokokokokokokokokokokokokokokokoko 23:39:11 BUTTS 23:39:12 okokokokokokokokokokokokokokokokokokoko 23:39:12 :||||||||||| 23:39:15 okokokokokokokokokokokokokokokokokokokoko 23:39:17 okokokokokokokokokokokokokokokokokokokokoko 23:39:20 okokokokokokokokokokokokokokokokokokokokokoko 23:39:21 STOP 23:39:22 okokokokokokokokokokokokokokokokokokokokokokoko 23:39:22 HAVING 23:39:23 FUN 23:39:26 okokokokokokokokokokokokokokokokokokokokokokokoko 23:39:27 okokokokokokokokokokokokokokokokokokokokokokokokoko 23:39:28 kokokokokokokokokoko 23:39:29 STOP IT 23:39:30 okokokokokokokokokokokokokokokokokokokokokokokoko 23:39:32 estoppel, surely you have a bot we can loop to kill this shit 23:39:33 okokokokokokokokokokokokokokokokokokokokokokokoko 23:39:37 argh, messed up 23:39:38 !! 23:39:40 darn 23:39:40 hahaha 23:39:42 fuckers 23:39:43 sorry oerjan 23:39:54 <3 thunder 23:40:03 sgeo: ditto 23:40:03 oerjan: try again? 23:40:09 and it was such a perfect channeling :´( 23:40:11 o 23:40:11 oko 23:40:12 okoko 23:40:12 okokoko 23:40:13 okokokoko 23:40:14 dangit 23:40:14 okokokokoko 23:40:15 okokokokokoko 23:40:17 okokokokokokoko 23:40:18 okokokokokokokoko 23:40:20 dsf 23:40:20 dsf 23:40:21 sdf 23:40:24 oh wait 23:40:26 it's oklopol 23:40:28 carry on 23:40:34 an oklopol worth listening to 23:40:38 * oerjan swats estoppel -----### 23:40:45 estoppel: you deserve to be banned for life from here for getting annoyed at oklopol okoing 23:40:47 and everyone is back to their own selves 23:40:52 * Sgeo swats the swatter -----### 23:40:56 ais523: he is exempt from the rules. 23:40:58 hey! 23:41:04 * estoppel yo dawg 23:41:09 estoppel: heh thanks for linking the c++ interview, always brings a smile on my face 23:41:14 * ais523 waves a butterfly net vaguely in the direction of everyone -----\XXXXX/ 23:41:24 oklopol: don't you mean "unto my face" 23:41:31 -!- Jophish has quit (Connection timed out). 23:41:38 * Sgeo undoes faces 23:41:51 * ais523 reads the C++ FQA 23:42:09 -!- BeholdMyGlory has quit (Read error: 104 (Connection reset by peer)). 23:42:23 Is FQA "frequently questioned answers", or what? 23:42:33 yes, frequently questioned answers 23:44:43 -!- BeholdMyGlory has joined. 23:45:25 hmm... the FQA's annoyances with C++ seem to stem around the fact that it isn't a properly OO language 23:45:31 which I agree with 23:45:43 using C++ as a not-quite-C language, though, it's quite good 23:45:59 and being me, I see an undecidable grammar as an advantage not a disadvantage 23:46:14 / don't read this, it's impossible. just count the lines 23:46:20 heh, I like that comment 23:46:27 there should have been two slashes, but copy/paste fail 23:46:55 ;; far out man 23:47:05 err 23:47:06 wait 23:47:16 ((lambda (lambda) (lambda lambda)) (lambda (lambda) (lambda lambda)) 23:47:18 duuuuuuuuuude. 23:47:26 yo dawg 23:47:37 it's hip just to say the yo dawg nowadays 23:47:41 or say xzibit 23:47:57 estoppel: "duuuuuuuuuude"? are you channelling mezzacotta? 23:48:15 he's not a dude, he's a dudette 23:48:15 xz 23:48:23 sorry, but if you're channeling psygnisfive, I want to channel AnMaster 23:48:25 what? 23:48:33 cocks. 23:48:37 AnMaster does, IIRC 23:48:37 but, it gives too many warnings 23:48:43 depends on how you write 23:48:45 * oerjan swats AnMaster and psygnisfive -----### 23:48:53 what? 23:48:53 what? 23:48:54 what? 23:48:54 murr 23:48:55 what? 23:48:56 do it again ;o 23:48:57 what? 23:49:00 what? 23:49:00 wow 23:49:01 I'm channeling the basic essence of AnMaster. 23:49:03 lots of scrollback 23:49:06 from a few hours 23:49:16 * oerjan swats psygnisfive on his bare bottom -----### 23:49:22 GET A ROOM 23:49:23 Is that you, ehird? 23:49:28 No. 23:49:31 kerlo: yes, it's ehird 23:49:31 I am a ninja from outer space. 23:49:32 ais523: heh, you do a great AnMaster 23:49:36 ais523 is a liar. 23:49:38 Do not trust him. 23:49:40 ehird, stop being silly 23:49:50 stop being silly? 23:49:50 ok. 23:49:51 hmm. 23:49:55 silly things I'm doing now... 23:49:57 oh, right, esolangs 23:49:58 -!- estoppel has left (?). 23:49:59 also 23:50:03 I HATE openvz 23:50:16 I mean 23:50:32 estoppel was estopped :DDDDDDDDDDDD 23:50:32 I couldn't even reboot host 23:50:40 had to remount / readonly and do reboot -f 23:50:51 because the vm thingy was locked up in kernel 23:50:53 or such 23:51:05 ais523, ^ 23:51:23 Compiling an OpenVZ-patched kernel gave me warnings like net/ipv4/route.c:2922:2: warning: #warning "Rework this shit via ro net sysctls" 23:51:29 That was not very confidence-inspiring. 23:51:39 AnMaster: wow 23:51:51 ais523, I have no idea why/what happened 23:51:57 but also I'm glad it is multi core 23:52:00 also, the remounting / readonly, did you do it via magic SysRq, and if not, why not? 23:52:04 fizzie: haha 23:52:07 root 20042 99.9 0.0 0 0 ? R 17:21 15:02 [vzmond/200] 23:52:16 kill -9 didn't work 23:52:22 AnMaster: 23:52:23 [2009-02-25 09:29:50] Also some sort of vzmond kernel thread had gotten hung up during the night. :p 23:52:24 AnMaster: oh, your computer was still responding? 23:52:27 -!- estoppel has joined. 23:52:29 You're not the only one here. 23:52:37 [2009-02-25 09:29:50] Also some sort of vzmond kernel thread had gotten hung up during the night. :p <-- ? 23:52:39 hm 23:52:41 * oerjan notes something estarting 23:52:48 fizzie, so how do I avoid this 23:52:49 AnMaster: Wasn't on this channel, I mean. 23:52:57 AnMaster: Who knows? I just started to use linux-vserver instead. 23:53:00 "Rework this shit via ro net sysctls" 23:53:06 that sounds like the start of a nerdcore rap. 23:53:11 also, the remounting / readonly, did you do it via magic SysRq, and if not, why not? <-- not because I only have ssh access 23:53:21 well, that's a good reason 23:53:26 an annoyingly good reason 23:53:31 mount -fo remount,ro / 23:53:33 I like magic SysRq too much... 23:53:34 is what I did 23:53:39 then sync 23:53:42 and reboot -f 23:53:43 sysrq is hot, I wish I had a sysrq key 23:53:43 * oerjan suddenly realizes there must exist such a thing as nerdcore rap 23:53:54 estoppel, doesn't every keyboard? 23:53:59 oerjan: of course it exists! 23:54:00 same as PrtScr 23:54:02 usually 23:54:06 estoppel: SysRq was originally invented because back then it was believed a multitasking operating system would be impossible without it 23:54:07 not apple ones. 23:54:14 but rather than use it for its intended purpose 23:54:15 ais523, what? 23:54:23 how do you mean 23:54:28 all sorts of things like alt-tab and control-alt-delete were used instead 23:54:33 nerdcore rap is amusing 23:54:35 why would it be needed? 23:54:38 AnMaster: so that applications could use all the keys on the keyboard for what they wanted 23:54:43 oh 23:54:48 you'd need a special key that the applications didn't use to switch between them 23:55:15 AFAIK, Linux is the only OS that actually uses SysRq for its intended meaning of "do something directly to the kernel without applications interfering" 23:55:17 http://www.monzy.com/intro/drama_lyrics.html 23:55:21 "Your problem, Plus Plus, is that your typing isn't strict: 23:55:21 In ML my type is real and your type is 'a dict." 23:55:25 for instance Alt-SysRq-K is the secure attention key 23:55:46 whereas windows uses control-alt-del for that 23:55:47 ais523, it is an useful debug key yes 23:55:59 in fact it multiplexes all the direct-kernel functions onto control-alt-del 23:56:08 which is kind of ridiculous for something that's that hard to type with one hand 23:56:20 although admittedly sysrq isn't much easier 23:56:26 you don't have to use it as much, though 23:56:33 only in an emergency, and on login if you're really paranoid 23:56:35 this ultrathin keyboard layout is ridiculou 23:56:40 ridiculous* 23:56:58 heh, I'm planning on replacing this keyboard with an ultrathin one 23:56:59 PgUp is located just right of space 23:57:04 that is so silly 23:57:09 * AnMaster prefers full size 23:57:10 http://images.apple.com/euro/keyboard/scripts/gallery/wireless_1_20070813.jpg 23:57:23 (did anyone else here know that if you type Alt-SysRq-K at something that looks like a login screen on Linux, it kills all processes that might intercept your typing so you know you're typing at a real login prompt rather than a program pretending to be one?) 23:57:29 (don't click if you're using a pc-101 kb right now) 23:57:32 (you might have a heart attack) 23:57:33 estoppel, it is also compact and smaller than full size 23:57:45 I don't know if that works on graphical logins 23:57:50 estoppel, this one at least has a numeric keyboard 23:57:52 I wonder what fn is for 23:57:53 but the SAK is a neat security trick 23:57:59 AnMaster: you can get the wired version with a numpad 23:58:05 but my numpad usage is a bad habit 23:58:06 estoppel, and it is weird 23:58:08 slow context switch 23:58:11 it has all the keys 23:58:17 just not where you expect them 23:58:25 estoppel: I've seen one fo those before, the return key looks a bit small 23:58:35 my return key is that size on this one 23:58:37 yes 23:58:40 it doesn't actually diminish tap-power 23:58:43 return key should be two lines 23:58:43 also, backslash is in an awful place 23:58:44 because it's hard to miss return anyway... 23:58:49 again, same here 23:58:49 like on Swedish keyboards 23:58:53 it's comfortable, actually 23:58:57 close to the home row when typing paths 23:59:11 I don't like the colour scheme either, but then I don't like the colour scheme of this keyboard 23:59:21 gdoddamnit 23:59:40 anyway, what self-respecting typist can do without ¬? 23:59:57 (the standard 101-key layout has all the printable characters in ASCII but also all the printable characters in EBCDIC)