00:00:13 tusho, there is no log out button 00:00:15 there should be one 00:00:19 AnMaster: why 00:00:26 what is the use 00:00:28 why not? 00:00:32 to log out 00:00:36 AnMaster: why would you want to? 00:00:37 and log in as another account 00:00:40 for ip over counter 00:00:44 ;P 00:00:45 ah. you mean, something you shouldn't do? 00:00:56 Why would I add support for a feature that helps doing things that you aren't really meant to? 00:01:03 tusho, IP over avian carrier with QoS so why not IP over counter? 00:01:12 Because it isn't April 1. 00:01:21 true 00:01:34 tusho, but they don't write it during 1 April 00:01:38 they write it in advance 00:01:45 so I need time to test my idea out! 00:01:49 then pretend I've written it in advance 00:02:00 eh? 00:02:27 tusho, what about the nick ODICTITTICCISCWCBCWNCTIHITTIFTCPASCIWRCIIHTDHCIWTIDTSMWLCIISC 00:02:29 it is very odd 00:02:35 AnMaster: it was a huge camelcase nick 00:02:36 like 00:02:45 OhDicksIntoCauliflour(etc) 00:02:48 so I shortened it 00:02:53 it was adding a horizontal scrollbar 00:02:55 tusho, what was it originally? 00:02:58 i don't know. 00:03:05 logread. 00:03:08 I said it somewhere. 00:03:17 OneDayIClickedThenIThoughtThisIsCoolClickingIsSoCoolWhatCouldBeCoolerWellNothingCanThatIsHowIThoughtThenIFoundThisCoolPageAndStartedClickingItWasReallyCoolItIsHardToDescribeHowCoolItWasThenIDecidedToSpendMyWholeLifeClickingItIsSoCool 00:03:18 oh my 00:03:32 tusho, limit length when they register 00:03:36 no. 00:03:37 to 70 chars or something 00:03:42 I AM NOT CHANGING THE CODEBASE 00:03:46 IT IS OLD AND CRUSTY 00:03:53 AN AWFUL TANGLE OF PHP THAT I AM NOT TOUCHING 00:04:00 ZP02S1sQL6XvaUSK3J6hGb5WKXjIrC4lVweYsYd6G6yQVzVfVzOThzUxOuP9vOJUqVKLhFcTs1smP0OK4Jb54NhWNVB1pWARt1EBsQo4iuGXZ9A3ICozTNeSsTzYznVygfJEwKuJOVd7xbMJItHYZu1vy7pXp87BEIqRyF3SSVk6Utne2SGVrv36VTeqR7ThBeMP45olUtZOapRSDP9BrkWbRuttjjhaTFK13D0dZXl7hT7LRvZ5Koi2zMRqX6s4ewxxXIToTDb0TlgwM5oEdo7fI3WErmOIYo3423n042IfJT87ecR51HySeCUBWOPc4xCliNSyloM6scQrwMMJxtDxK7THJbmBKgrDJKQecFiI1zMtdtZHNLQf1XfaADXHVKTUwNjSCHEg1bNqAoEc 00:04:00 ICSS9l94lGszdnmolOzJSjzS74HFAhEOu55Vkd2Ohm33PJDjoMAwAKqpi6ef3bjFKddqsn2KIyoxvwolq4uuXHjfUI3Q5nuOcQV2ybbuR3c 00:04:04 that would rock 00:04:16 tusho, what would you do if I started using something like that? 00:04:28 AnMaster: I'd change it to ISuckCocks. 00:04:39 tusho, but I wouldn't be able to log in any longer 00:04:43 Correct. 00:04:44 as the user name wouldn't match 00:07:53 tusho, number 33 and 34 are changing place back and forth here 00:08:13 both got same count of clicks 00:08:22 tusho, seems your sorting isn't stable? 00:08:35 Ot 00:08:38 *It's just MySQLs. 00:08:40 Whatever. 00:09:50 tusho, but you see it too? 00:09:58 Yes. 00:11:02 how the heck can someone make like one hundred thousand clicks 00:11:19 or even ten thousand 00:15:59 by clicking one hundred thousand times. 00:16:01 i did. 00:16:05 24992, #16 00:16:23 AnMaster: you can also tap enter instead of clicking 00:16:33 the top ones mostly both click and tap simultaneously 00:41:36 -!- optbot has set topic: the entire backlog of #esoteric: http://tunes.org/~nef/logs/esoteric | I'm done criticizing now :-3. 00:49:17 optbot! 00:49:17 -!- optbot has set topic: the entire backlog of #esoteric: http://tunes.org/~nef/logs/esoteric | I think so.. 00:52:41 Wow. 00:52:43 Coolness is #1. 01:11:03 -!- tusho has quit. 01:15:10 -!- olsner has joined. 01:15:30 -!- jix has quit ("CommandQ"). 01:45:57 -!- siobhain has joined. 02:04:44 -!- GreaseMonkey has joined. 02:30:38 -!- psygnisf_ has joined. 02:30:38 -!- psygnisfive has quit (Read error: 104 (Connection reset by peer)). 04:15:34 -!- Tritonio_ has quit (Remote closed the connection). 04:24:08 -!- psygnisf_ has changed nick to psygnisfive. 05:03:13 -!- CakeProphet has joined. 05:03:48 Hello. 05:17:01 -!- CakeProphet has quit ("lolwhut?"). 06:40:02 -!- oerjan has quit ("leaving"). 06:41:36 -!- optbot has set topic: the entire backlog of #esoteric: http://tunes.org/~nef/logs/esoteric | We need an asylum.. 07:03:52 javascript: for (var i = 0; i < 100; i++) { increment_counter() } 07:07:47 i prefer ruby's method for fixed iteration 07:08:12 100.times { increment_counter } 07:08:14 or 07:08:24 0.upto 100 { increment_counter } 07:08:42 or maybe its upto(100) 07:08:44 i forget 07:08:48 Haskell would be something like: mapM_ increment_counter [1..100] 07:09:04 eh.. probably not 07:09:10 since you're not sending i to increment_counter 07:09:12 but 07:09:13 oh yeah 07:09:30 replicate 100 increment_counter 07:09:34 map (\x -> increment_counter) [1..100] would work i think 07:09:38 tho this is haskell 07:09:50 so increment_counter is probably going to be hard to make work :D 07:11:44 I just started implementing fingerprints, isn't as annoying as I thought it'd be 07:12:11 fingerprints? 07:13:13 befunge 07:13:27 i dont know befunge 07:13:36 http://quadium.net/funge/spec98.html#Fingerprints 07:13:56 they're kinda like libraries 07:13:59 dont want to know :p 07:16:16 I wrote my interpreter in Haskell :P 07:18:14 crazy 07:31:34 -!- asiekierka has joined. 07:31:39 Hello! 07:31:49 Hell "O" 07:32:22 0O0O0O0O0O0O0O0O0O0O0O0O0O0O - The Fixedsys pairs 07:41:17 -!- calamari has joined. 07:44:41 -!- kar8nga has joined. 07:56:14 -!- calamari has quit ("Leaving"). 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:17:25 Oh god 08:17:32 i made the fifth Animathed Screeble 08:17:37 #4 (started at #0) 08:21:07 http://www.youtube.com/watch?v=Nwfr7vod6yc - an "OH GOD" here 08:21:15 -!- Tritonio_ has joined. 08:23:19 GOOD LORD 08:23:26 i just found my old "The Commodore Kid" movie 08:23:41 From this year's early vacation 08:23:53 When my datasette was ...still... working 08:24:01 Hopefully i'd be able to do a new episode 08:24:06 since i'm getting an "X-Cable" 08:36:38 -!- kar8nga has quit ("Leaving."). 10:12:50 -!- asiekierka has quit (Nick collision from services.). 10:12:56 -!- asiekierka has joined. 10:15:27 -!- KingOfKarlsruhe has joined. 10:35:06 Y4WB! 10:35:06 Yay For WhiteBoards! 10:48:35 -!- GreaseMonkey has quit ("Jesus loves you"). 11:24:48 -!- tusho has joined. 11:31:32 hello 11:31:39 i made animathed screeble #4 11:35:12 http://en.wikipedia.org/wiki/Bell_Labs#Discoveries_and_Developments I had no idea Bell Labs did so much. 11:40:20 -!- kar8nga has joined. 11:40:37 -!- kar8nga has left (?). 11:46:39 -!- asiekierka has quit (Read error: 110 (Connection timed out)). 11:49:17 -!- RedDak has joined. 12:02:42 -!- Hiato has joined. 12:20:56 -!- Hiato has quit ("Leaving."). 12:30:48 Is AMS-LaTeX good for something else than generating its own logo? --Abdull 08:47, 30 April 2007 (UTC) 12:41:36 -!- optbot has set topic: the entire backlog of #esoteric: http://tunes.org/~nef/logs/esoteric | then have a wrapper. 12:50:05 Jesus christ. 12:50:09 "Because at this stage I'm focusing mostly on making programs shorter." - pg 12:50:13 SHUT THE FUCK UP PAUL GRAHAM 12:50:14 NOBODY CARES 12:50:17 ALSO IT'S BEEN OUT FOR FUCKING AGES 12:50:23 WHEN THE FUCK DOES THE NEXT STAGE START YOU MORON?! 12:50:54 -!- RedDak has quit (Remote closed the connection). 13:06:15 god i hate coolness 13:06:48 the guy has three jobs, now applying for a fourth, and can still press the fucking button 8 hours a day :P 13:07:35 press the fucking button? 13:07:48 hideou.se/counter 13:09:50 wow, how pointless 13:18:25 i wouldn't say it's pointless, just too easy to cheat in 13:22:14 yea, but I ban cheaters 13:22:17 :P 13:22:18 -!- RedDak has joined. 13:22:21 but yeah 13:22:24 coolness is pretty fucked up 13:22:27 from the looks of it 13:22:27 :D 13:22:32 you kno 13:22:32 w 13:22:41 I'm soooo tempted to make coolness' clicks go to oklopol instead 13:22:52 xD 13:23:38 oklopol: shuddidoit 13:29:58 :P 13:30:04 well no, not really 13:33:42 -!- asiekierka has joined. 13:33:43 Eh-lo 13:45:26 hi asiekierka 14:09:34 -!- MikeRiley has joined. 14:10:45 MikeRiley, hi 14:10:58 MikeRiley, what should happen on E in REXP before any call to C? 14:11:08 undefined 14:11:10 RC/Funge crashes 14:11:17 IF IT ISN'T SPECIFIED - 14:11:18 IT'S UNDEFINED 14:11:19 ok? 14:11:30 cfunge reflects 14:11:58 reflect should be the proper action... 14:12:06 -!- RedDak has quit (Read error: 104 (Connection reset by peer)). 14:12:27 could some explain what G and P in ORTH are supposed to do? 14:12:50 funktio, get and set without using storage offset and with reversed x and y coordinates 14:12:55 so pop x first then y 14:12:58 unlike the normal 14:12:59 AnMaster: aha, thanks 14:13:02 iirc that is what it does 14:13:10 funktio, better check the docs though 14:13:10 that is what it looks like it does... 14:13:41 the catseye "documentation" says just "ortho get" and "ortho put" 14:13:56 MikeRiley, also RC/Funge doesn't free the compiled buffer if you compile twice 14:14:08 ok, will fix that 14:14:12 oh and I think there are possible buffer overflows 14:14:24 char buffer2[1000]; 14:14:27 and 14:14:28 strncpy(buffer2,buffer+matches[i].rm_so, 14:14:28 matches[i].rm_eo-matches[i].rm_so); 14:14:40 not sure though 14:15:28 MikeRiley, try: 14:15:30 "PXER"4( #v Fv > > @ 14:15:30 > > #^ E ^ 14:15:38 hopefully shouldn't crash 14:15:44 not sure if F should reflect or not 14:15:49 yes, overflow would be possible on long strings... 14:16:07 MikeRiley, also how many matches should be supported? 14:16:12 I went for 128 14:16:21 could easily extend that 14:16:30 no limit specified for number of matches,,,could be any number... 14:17:07 F should not reflect... 14:17:18 if F has nothing to free, it should just go on... 14:17:52 right 14:18:31 MikeRiley, "sorry, I have no way to test for 128-bit longs...but if your code works correctly for 64-bit longs then your 128-bit ones should be fine as " 14:18:32 not true 14:18:37 I use different methods 14:18:45 ok, depends on the methods you use.... 14:18:45 for 128-bit I do it manually 14:18:49 AnMaster: what you said seems to be correct, Mycology gives GOODs now :) 14:18:56 but the 64-bit one should show what orders thigns are in at least.. 14:18:56 ie, division by hand and such 14:19:06 MikeRiley, while for 64-bit I use an union with long 14:19:07 err 14:19:10 yeah 14:19:28 MikeRiley, however my 128-bit one is buggy, I know that 14:20:02 i cannot write a 128-bit test,,,,since Rc/Funge-98 uses 32-bit cells... 14:20:04 MikeRiley, anyway any good test suite for LONG need to be able to support funges that are not 32-bit 14:20:22 well...will indicate that long.f98 only words for 32-bit funges... 14:20:27 what if I made a 256-bit funge, then LONG would be 512 bits 14:20:39 i understand that.... 14:20:55 in which case there is really no reasonable way to test them... 14:20:56 you should be able to construct the needed arguments at runtime using y! 14:21:18 you can get cell size that way :D 14:21:22 I'm using arbitrary precision integers 14:21:38 funktio, then I guess LONG makes no sense to implement for you 14:22:19 LONG is a bit silly in that respect 14:22:23 what would be the use case 14:22:56 Deewiant, will you implement it? 14:23:17 not sure if it makes sense, like EMEM or whatever it was 14:23:27 well LONG makes more sense than EMEM 14:23:47 does it? where would you use LONG 14:24:08 Deewiant, assuming you have a 32-bit funge and want to use 64-bit integers? 14:24:19 you could do floating point without FPDP/FPSP 14:24:27 AnMaster: yeah, exactly, assuming 14:24:33 so it's just a way to make your programs non-portable 14:24:37 Deewiant, then what about treating IPv6 in 64-bit funges? 14:24:52 Deewiant, there is a command to sign extend one cell integers 14:25:13 whenever you say "x-bit funges" you're saying "doesn't work in non-x-bit funges" 14:25:21 Deewiant, do I? 14:25:39 you could use LONG in larger funges, but it may not be needed 14:25:55 ie, LONG for 64-bit integers would work in 64-bit funge, just wouldn't be needed 14:26:09 sure it'd work 14:26:19 but what if you have a 64-bit funge that doesn't implement LONG 14:26:25 at least if you do it the right way and don't assume what the bits are 14:26:34 then it wouldn't be needed as you say but the program would complain that it doesn't have LONG 14:26:43 Deewiant, an issue indeed, but then what if you depend on FPDP and the funge doesn't implement it? 14:27:12 yeah, I think FPSP/FPDP are somewhat the same way 14:27:18 at least in the respect that only one of them should exist 14:27:24 "FLOT" or whatever 14:27:44 they both exist because both float and double existed in c.... 14:28:01 and in the case of Rc/Funge-98, float was the same as the cell size,,, 14:28:03 MikeRiley, also how many matches should be supported? 14:28:03 I went for 128 14:28:05 infinite 14:28:07 and i wanted to support double as well... 14:28:12 tusho, impossible 14:28:16 tusho, read man regcomp 14:28:18 see why 14:28:39 AnMaster: Just because a C library is broken doesn't mean it's impossible. 14:28:44 Kthx. 14:28:44 since REXP is defined as using POSIX regex that is the only one you can use 14:28:46 really 14:28:51 No. You can implement your own POSIX regex. 14:28:55 fine 14:28:59 tell me when you are done 14:29:03 I might. 14:29:04 It's not hard. 14:29:23 tusho, http://www.elf-emulation.com/funge/rcfunge_manual.html#REXP 14:30:00 AnMaster: I didn't say I'd implement the fingerprint. 14:30:04 i said I might implement posix regexps. 14:30:15 just telling you was is needed 14:30:22 so you need the extended regex too 14:30:25 as well as the basic ones 14:30:46 tusho, and it needs to return same type of errors so it is usable for REXP 14:33:40 MikeRiley: yeah, but I really don't think making other languages into C is a good idea 14:34:45 MikeRiley, intersting, freebsd 6.3 doesn't define REG_EEND 14:34:52 nor REG_ESIZE 14:34:56 are those POSIX I wonder 14:35:10 OH NO 14:35:12 THEY'RE NOT POSIX 14:35:18 QUICK, AnMaster. STOP SUPPORTING REXP 14:35:20 :O 14:35:21 MikeRiley, nop seems they aren't 14:35:35 so well I'm going to drop support for those two errors on systems not supporting them 14:36:13 did not intend to make funge into c...just added the double concent for floating point,,,most floating point software i write does not use float, but double, float precision is not good enough in my mind... 14:36:41 i see no problem dropping errors that are not supported by the underlying system... 14:36:47 Deewiant, err about double/float 14:37:00 double and single precision is more than just C 14:37:12 yes, many languages support both... 14:37:15 separate standard 14:37:32 IEC 559 iirc 14:38:20 MikeRiley, well I doubt RC/Funge works on anything but Linux if you don't check if those non-standard errors exist on the target platform 14:38:32 AnMaster: yes, but what about if you use arbitrary-precision float 14:38:45 I think it's somewhat similar to the LONG situation 14:38:50 though I admit it's not exactly the same 14:39:27 Deewiant, would be cool, but would need either storing outside funge space like REFC or such, or arbitrary-precision funge cless 14:39:44 may have to change how it is compiled since those errors would produce compile time errors, but otherwise could be made to work on other systems... 14:39:54 also I got no idea how to implement it 14:40:04 -!- kar8nga has joined. 14:40:11 but i could remove the linux only errors, was not aware that i put those in there,,,in general i tried not to use anything that was linux specific... 14:41:25 AnMaster: ah, I realized the difference: FPSP/FPDP mandate a certain precision, LONG is just "twice as long as whatever the default is", which is crap 14:41:33 MikeRiley, #ifdef doesn't work 14:41:38 they are an enum on glibc systems 14:41:41 not #defines 14:42:23 ?????? 14:42:38 #ifdef REG_EEND 14:42:38 case REG_EEND: ... 14:42:38 #endif 14:42:40 does not work 14:42:47 REG_EEND is not a #define 14:42:51 it is in an enum 14:42:53 on linux 14:43:16 oh...i see what you are saying now.... i will probably remove the linux only ones...like i said,,,i tried to avoid linux only stuff,,,,those just managed to slip their way in... 14:43:45 I'm dropping those, I guess this means holes in the error numbers or? 14:44:19 yes, will mean holes...not going to go back and change the error numbers... 14:51:34 hm I implement 26 fingerprints now 14:52:21 that is quite a few!!! 14:53:10 Rc/Funge-98 implements 47,,,,i think,,,, 14:54:17 but then,,,it implements all the strange stuff that i have come up with,,,,many of which i am sure nobody would ever use!!! !eheheheehheehehehehehehehh 15:00:06 AnMaster: #ifdef works with more than just #defines. 15:03:40 I've implemented 8 today 15:03:45 many trivial ones still left 15:07:36 tusho, it didn't work here 15:07:38 I checked 15:10:06 still 15:10:09 what you said was wrong 15:11:33 I'm guessing that P in JSTR should write spaces to the fungespace? 15:11:45 yes 15:12:03 -!- KingOfKarlsruhe has quit (Remote closed the connection). 15:39:03 -!- oklopol has quit (Read error: 110 (Connection timed out)). 15:53:32 -!- kar8nga has quit ("Leaving."). 16:01:37 next versions will probably be 0.3.0, though the previous one was 0.2.1 16:10:25 -!- jix has joined. 16:39:05 -!- Hiato has joined. 16:54:43 Deewiant, there? 16:55:16 Deewiant, do you plan to update mycology with tests soon or something, I'm going to release next cfunge very soon 16:55:24 as in: today 16:56:12 except... 16:56:12 no, I don't 16:56:20 I'm waiting for mycology to stabilise 16:56:22 good :) 16:56:32 Deewiant, so mycoedge will wait for a while? 16:56:42 maybe just enough so that ccbi pass it? :P 16:56:51 something like that ;-) 16:57:02 Deewiant, which isn't fair play 16:57:13 but I'm devoting most of my CCBI time to the rewrite/cleanup anyway 16:57:40 because next cfunge release won't handle mycoedge (apart from the first part) 16:57:41 AnMaster: well, in this case I'm going to make the interpreter work before releasing the tests 16:57:48 and anyway 16:57:54 I like to make sure the tests are correct 16:57:59 true 16:58:06 Deewiant, when will this happen though? 16:58:15 for instance, that 15-minute mycoedge I released was buggy after the first test 16:58:19 whenever 16:58:21 I don't know 16:58:38 I was writing the new CCBI for most of today and yesterday 16:58:51 Mycology now says { doesn't work 16:58:55 Deewiant, heh 16:59:02 so during next week I'll try to get the debugger working 16:59:08 Deewiant, is this a rewrite from scratch? 16:59:11 no 16:59:23 Deewiant, ooh cool will you use the new debugger protocol? 16:59:29 no 16:59:30 :-P 16:59:35 later, yes 16:59:41 well if you made a debugger for it, then I may also implement it 16:59:45 but for now, I'd like the builtin one to work 16:59:57 so that I can easily see why stuff that should and did work doesn't any more 17:00:01 it is broken? 17:00:04 Deewiant, anyway it will need some major changes if it needs to handle MVRS.... 17:00:08 like I said, { doesn't work :-P 17:00:08 the protocol 17:00:18 Deewiant, yes but I mean the debugger 17:00:25 not just the instruction { 17:00:39 I haven't updated my builtin debugger for the changes I've made 17:00:43 Deewiant: in the SCKE test, what is supposed to be happening after: 17:00:44 just commented it out 17:00:51 UNDEF: 0"1.0.0.721"H pushed 16777343 17:01:00 seems to end up in locked loop..... 17:01:30 UNDEF: 0"1.0.0.721"H pushed 2130706433 17:01:30 GOOD: P pushed 0 for socket without data 17:01:31 GOOD: P pushed nonzero for socket with data 17:01:55 P is never executed,,,,so whatever is happening is before P is executed... 17:02:07 do you have SCKE included in SOCK? 17:02:12 no... 17:02:21 okay 17:02:26 then I don't know :-P 17:02:34 if that were the case, I could have said that I haven't tested that case recently 17:02:47 ok,,,, 17:05:05 -!- KingOfKarlsruhe has joined. 17:06:35 how are you testing for SCKE inclusion in SOCK??? i just included it and mycology says it is not.... 17:07:38 MikeRiley: I think it tries whether H reflects or something 17:08:27 fixed that,,,my bad,,,forgot to change SCKE to SOCK when i copied the instructions... 17:08:41 same problem tho....but worse....ends up spiking my cpu usage.... 17:09:24 and again,,,the P is never actually executed... 17:18:31 I see a S,B, and K command exected and then nothing 17:28:00 -!- asiekierka has quit (Read error: 110 (Connection timed out)). 17:29:41 oh my 17:29:52 sf.net changed theme again 17:29:56 deewiant: it ends up in a loop where it keeps executing t and spawning ips.... 17:30:17 IP=190 X=84 Y=19 CMD=t 17:30:18 IP=191 X=84 Y=20 CMD=t 17:30:18 IP=192 X=84 Y=19 CMD=t 17:30:18 IP=193 X=84 Y=20 CMD=t 17:30:19 heh, well that's not good is it 17:30:29 any idea why??? 17:30:38 there's obviously a bug 17:30:43 obviously.... 17:30:52 but need an idea of what to look for.... 17:31:12 well how did it get to y=20 for starters 17:31:27 let me see if i can get the code just before that...hold on... 17:31:34 y=700 or so is where SCKE is 17:32:52 SOCK:8502 17:32:52 SOCK:done 17:32:52 IP=0 X=84 Y=703 CMD=u 17:32:52 IP=0 X=84 Y=705 CMD=d 17:32:52 IP=0 X=84 Y=711 CMD=" 17:32:53 IP=0 X=84 Y=721 CMD=" 17:32:55 IP=0 X=84 Y=723 CMD=" 17:32:57 IP=0 X=84 Y=743 CMD=" 17:32:59 IP=0 X=84 Y=744 CMD=" 17:33:01 IP=0 X=84 Y=38 CMD=" 17:33:03 IP=0 X=84 Y=39 CMD=# 17:33:05 IP=0 X=84 Y=41 CMD=" 17:33:07 there is the command trace just before y changes to 38... 17:34:08 ah, I see it 17:34:16 hm 17:34:41 here is something curious: 17:34:59 IP=0 X=84 Y=698 CMD=K 17:34:59 SOCK:8502 17:34:59 SOCK:done 17:34:59 IP=0 X=84 Y=703 CMD=u 17:35:09 why from 698 to 703?? 17:35:22 because there are spaces between 699-702 17:35:29 what does B do 17:35:33 oh...ok.... 17:35:39 -!- Hiato has quit (Read error: 104 (Connection reset by peer)). 17:35:47 IP=0 X=85 Y=696 CMD=B 17:35:47 SOCK:8507 17:35:47 SOCK:done 17:35:47 IP=0 X=84 Y=696 CMD=v 17:35:54 ah, bind to local port 17:36:48 any ideas why it would reflect there? 17:37:12 let me see if i can find out... 17:38:13 bind is returning an error... 17:38:56 let me see if i can collect a bit more information about what is being passed to bind 17:39:39 ok,,,starting see potential problem, address is 0.... 17:40:06 so now the problem is, what is B passing a zero... 17:43:04 zero is inaddr_any, that shouldn't be a problem, or? 17:45:11 hmmmmm,,,,ok,,,possible....let me dig a bit deeper... 17:47:01 let me get the exact error it is reporting... 17:48:17 address already in use.... 17:48:51 funktio: Ah, hm, you went to the counter. 17:49:06 Not quite as challenging as those Rubik's Cubes, I imagine. :P 17:49:56 cfunge 0.3.0 is released \o/ 17:50:08 what is new in it??? 17:51:11 Deewiant: do you actually Kill the socket that was originally bound on that port??? 17:52:13 not necessarily 17:52:18 does CCBI work for you? 17:53:18 if you are not killing the originally bound socket, you cannot bind another one to it... 17:54:34 Mycology would output that it killed a socket if it did so 17:54:42 so if it doesn't, I guess it doesn't. does it? 17:55:26 i just checked the socket ids that are created and the ones that are killed...you are not killing the originally bound socket,,,,levaing the address already bound.... 17:55:31 you need to kill that socket... 17:55:44 or you cannot bind another one to the same address... 17:57:20 so you either need to kill the originally bound socket, or use a different port number on the SCKE tests...preference would be to kill the original socket... 17:57:35 MikeRiley, see change log 17:57:50 http://bzr.kuonet.org/cfunge/trunk/annotate/365?file_id=changelog-20080319201658-czs9f8hg18hz0xo7-2 17:57:51 MikeRiley: just wondering why CCBI works there on both Windows and Linux 17:58:10 do not know....but you are leaving a socket connected... 17:58:23 you might be doing something different in your SOCK code... 17:58:32 mine shows the original socket was never killed... 17:59:46 MikeRiley, what is the issue? 17:59:55 bind() two times against same ip/port? 18:00:11 isn't there a socket option to allow that? 18:00:24 maybe the D language sets that by default 18:00:41 there could be an option for it,,,in which case it should not be used for SOCK... 18:00:54 yes,,,there is a resuse option... 18:01:14 SO_REUSEADDR 18:01:27 which is actually a SOCK available option...is it being used tho in the SCKE tests???? 18:01:28 MikeRiley, well maybe the socket code of D sets it by default 18:01:28 brb 18:01:33 or D does some other such stuff 18:01:42 like just pointing at the old socket 18:02:42 or what about Mycology setting it 18:02:43 GOOD: set SO_REUSEADDR with O 18:02:45 ... 18:03:11 back 18:03:17 hm ok 18:03:36 are you doing that with the SCKE socket tho??? 18:03:54 I see it used on the original socket,,,,but not on the SCKE one... 18:04:17 -!- kar8nga has joined. 18:04:32 I see a socket created with S for the SCKE tests,,,,but O is not used on that socket... 18:04:51 ah 18:04:55 well then it wouldn't apply 18:05:03 exactly 18:05:20 so Deewiant that explanation doesn't work 18:05:21 ah well 18:05:25 I'll look at it at some point 18:05:32 because I'd very much like to know why CCBI works on this 18:05:32 Deewiant, well mycology is broken 18:05:35 MikeRiley: or does it work, for you 18:05:52 do not know about ccbi,,,,do not have it... 18:05:55 -!- olsner has quit ("Leaving"). 18:06:01 can you get it and run it on mycology? 18:06:08 I will implement SOCK after you fix this, assuming it happens the next few days, if it takes longer I won't have time 18:06:09 Deewiant, ^ 18:06:13 do you have a linux executable?? 18:06:19 yes 18:06:25 let me see if i can grab it then.... 18:07:00 MikeRiley, you will need to chmod +x the binary after extracting the archive, because Deewiant is too lazy to create the archive that way 18:07:21 AnMaster: because .zip files don't carry permission info... 18:07:32 Deewiant, why not use .tar.bz2 then? 18:07:57 because a computer is much more likely to be capable of opening a .zip 18:08:12 ok,,,,,hold on.... 18:08:13 .zip for ubiquitousness, .7z for compression 18:08:38 Deewiant, any linux computer will be able to open tar.gz 18:08:45 and who else would want the linux binary? 18:08:48 Inconsistency detected by ld.so: dynamic-link.h: 68: elf_get_dynamic_info: Assertion `! "bad dynamic tag"' failed! 18:08:51 cannot run it.... 18:08:56 MikeRiley, nice 18:08:58 bah, bloody dynamic linking 18:09:06 MikeRiley: what does ldd say 18:09:13 just a sec 18:09:25 not a dynamic executable 18:09:32 hmm 18:09:42 that's interesting O_o 18:09:55 MikeRiley, what libc version? 18:10:04 old.... 18:10:07 run /lib/libc.so.6 18:10:17 yes you can run the library 18:10:20 in this case 18:10:24 will print version info 18:10:37 2.2.5 18:10:43 ccbi binary works under glibc 2.6.1 and 2.8 here 18:10:48 I don't have any older 18:10:53 MikeRiley, what is that? Debian stable? 18:11:54 suse 8 18:12:02 maybe time to upgrade anyway 18:12:13 long past time actually1!!! eheehheeheheheh 18:12:18 just been too busy to bother.... 18:12:32 I doubt Suse 8 even gets security patches any longer... 18:12:45 still does not get past the fact mycology has a bug in its socket handling,,,either kill the original socket, or set the reuse option on the new one... 18:12:52 i doubt it does as well... 18:12:55 MikeRiley, hm 18:13:11 i have the newest one,,,just have not had teh time to load it.... 18:13:54 in the meantime,,,i will just have to write my own code for testing SCKE,,,,until mycology gets fixed... 18:13:58 well I prefer distros like Arch Linux and Gentoo Linux that use rolling releases, so once installed the word "release" have no meaning 18:13:59 :D 18:14:00 MikeRiley: lines 684-686, left edge, what happens if you make it so that the GOOD branch goes to where the BAD branch goes and vice versa (i.e. GOOD goes to 686, BAD to 688) 18:14:12 you just run some upgrade command and it upgrades to the last 18:14:24 -!- olsner has joined. 18:14:33 let me try Deewiant....just a sec... 18:16:18 still get the address already in use error.... 18:16:28 anything else change 18:16:30 ? 18:16:43 BAD: A overwrote original socket 18:17:03 nothing else looks different... 18:17:07 hmm? did you change something before that then? 18:17:11 no... 18:17:39 what I wanted was you to change after the GOOD/BAD, not before, so you should still get the same GOOD there :-P 18:18:05 oh....ok,,,,,hold on 18:18:37 same error..... 18:19:17 you must have changed something else since I only wanted you to change something after that... 18:19:31 essentially: move the leftmost v's in lines 684 and 685 one column to the left 18:19:36 get this now.....GOOD: closed original socket with K 18:19:48 interesting 18:19:50 and then align the > in line 686 with the one in line 684 18:20:29 did that... 18:20:47 so now you get that additional GOOD 18:20:54 and nothing else changes? 18:21:33 yes,,,get the additional good,,,,and i see K is killing the right socket,,,,still getting the address in use tho....seeing if i can find out why... 18:21:48 thing is, with that additional GOOD, I now get BAD: trying to receive 10 bytes with R reflected 18:22:11 * AnMaster watches with interest 18:22:55 I will wait for you to figure this thing out before implementing SOCK 18:23:11 I honestly do not feel like going through this properly now 18:23:21 unless it's a simple fix it'll probably be at least a week 18:23:29 my R still shows GOOD... 18:25:00 Deewiant, then I won't have time to implement SOCK for quite some time 18:25:08 the S from the SCKE is now not opening a socket... 18:26:35 MikeRiley, huh? 18:26:42 ok this is strange 18:26:49 and I will wait until you fix it 18:26:55 MikeRiley, didn't your SOCK use to work? 18:27:09 yes,,,,works fine,,,,until i try testing the SCKE stuff.... 18:27:15 all other tests are good on it.... 18:27:28 and SCKE fails because the address is not released... 18:28:45 hrrm 18:29:05 but when you make it release then S from SCKE still fails? 18:30:31 no,,,,S is working,,,,B is not... 18:30:45 hm 18:30:49 what is B? 18:31:50 B binds a socket to an address 18:34:00 ok,,,,getting a bit further now...at one point mycology should be doing a K on socket 9, but is instead killing 0.... 18:34:13 in my SOCK code i put asimple change 0 to 9 and then it went through.... 18:34:19 9?? 18:34:23 so,,,now why is mycology closing a socket on 0???? 18:34:26 there are only 3 sockets there, no? 18:34:47 couldn't the order of the sockets differ? 18:34:48 never know what the ids are,,,,in my system they end up being 7,8, and 9... 18:34:57 ah 18:35:06 ah I see the issue 18:35:11 so if they are 7,8,9 why does closing 0 not give a BAD? 18:35:14 they are simpley file descriptirs,,,,0,1,2 are already used for stdin, stdout, stderr 18:35:15 MikeRiley, you use fd numbers directly? 18:35:20 others could be used for other things... 18:35:21 ah yes 18:35:23 yes i do... 18:35:25 Deewiant, closing 0 would close stdin 18:35:27 nice one 18:35:35 ah right, if they're fd numbers 18:35:38 yes,,,closing 0 closes stdin... 18:35:41 MikeRiley, maybe you should protect stdin/stdout/stderr 18:35:43 well, there's a bug somewhere there 18:35:53 i am protecting those now..... 18:36:03 MikeRiley: and yeah, I'd also say there's a bug if you can use K to close something other than what S has pushed 18:36:03 but still does not explain why mycology is trying to close fd 0... 18:36:42 MikeRiley, REXP use a global buffer right? since the specs doesn't say otherwise that is what I have implemented, and now it is in the release 18:37:05 so update of fingerprint will not really count as valid from my point of view 18:37:24 global buffer???? for what???? 18:37:28 each ip can have its own.... 18:37:33 MikeRiley, for the compiled regex 18:37:40 each ip has its own... 18:37:40 MikeRiley, sorry your docs doesn't say that 18:37:46 so I haven't implemented it that way 18:37:51 and I argue it is an UNDEF 18:37:52 but it does not say global either!!! 18:37:59 MikeRiley, so it is an UNDEF 18:38:06 maybe for you....not for me.... 18:38:06 and will be I think 18:38:13 MikeRiley, well the docs are broken then 18:38:18 I implemented it following the docs 18:38:25 i can accept the docs are broken!!!! eheheheheheh 18:38:30 if you change them now well, I won't update it 18:38:33 that is why it is best to ask if uncertain :) 18:38:49 MikeRiley, I didn't even think it would be non-global until now 18:39:01 so it is an UNDEF 18:39:06 the only thing i know of that uses global data is REFC...no other fingerprint does that... 18:39:19 and it explicitely says so.... 18:39:21 well TURT do 18:39:31 and FILE use a global list 18:39:32 i think it explicitly says so as well... 18:39:39 FILE does NOT use a global list... 18:39:48 typedef struct sFungeFileHandle { 18:39:49 FILE * file; 18:39:49 fungeVector buffvect; // IO buffer in Funge-Space 18:39:49 } FungeFileHandle; 18:39:51 static FungeFileHandle** handles = NULL; 18:39:51 static fungeCell maxHandle = 0; 18:39:56 the handles are valid in other IPs 18:40:03 I think ccbi does it that way too 18:40:10 and the docs doesn't say otherwise 18:40:13 * AnMaster shrugs 18:40:20 does not say they are global either!!! 18:40:23 and I'm not going to change it 18:40:29 MikeRiley, well it is another UNDEF then 18:40:30 :D 18:40:33 that is ok if you do not want to change it... 18:40:52 MikeRiley: seems quite silly if multiple IPs can't read from the same FILE? 18:40:56 both are UNDEF, changing either fingerprint and I won't update it since fingerprints are not versioned and changing fingerprints after release is bad 18:41:01 s/FILE/file in FILE/ 18:41:01 they can read from the same files.... 18:41:13 in my case, i am just using the fd returned from the open calls... 18:41:34 if multiple ips know what the fd was, they could all use it... 18:41:36 -!- optbot has set topic: the entire backlog of #esoteric: http://tunes.org/~nef/logs/esoteric | 2135 or even 2145 in fact. 18:41:50 well live with it, if you don't make the specs clear then people will implement it differently 18:41:50 but each ip has its own list of open files....but what is in that list are the fd numbers returned from the os.... 18:42:01 and you can't say they are wrong either 18:42:13 will not say they are wrong.... 18:42:17 just other than intended... 18:42:25 MikeRiley, make better docs then 18:42:28 :) 18:42:35 never been good at docs!!! eheheheheh 18:43:36 unless noted otherwise I assume all fingerprint variables that need to persist between calls to the fingerprint use a static variable in the fingerprint file 18:43:40 in effect being global 18:44:04 unless noted otherwise, any fingerprint i create uses local data structures,,,, 18:44:25 well then it is UNDEF 18:44:27 but if ids come from the os for anything, these ids remain as the data....instead of an index... 18:44:41 eh? screw that 18:44:45 you may consider it UNDEF if you want....to me they are defined... 18:44:58 in most higher-level APIs there's no way to even get the original ID from the OS 18:45:20 indeed my IDs are translated too 18:45:29 not true...you can get the original id from perl, c, pascal, and others... 18:45:44 well I wouldn't use original ID anyway 18:45:45 yes, as I said, "higher-level APIs" 18:45:56 if you use system calls then of course you can get the original... 18:46:34 MikeRiley, I consider anything not mentioned in the fingerprint docs as UNDEF 18:46:35 anyhow...does not really matter,,,,underlying mechanism does not matter if the code can conform to the spec of the fingerprint.... 18:46:46 that is fine...i have no problem with that... 18:46:46 I implement following the docs 18:47:05 whereas, my specs tend to follow what i implemented!! eheheeheheh 18:47:21 maybe writing spec first would help 18:47:37 sometimes i do.....and often they could change during implementation... 18:47:41 and when you find something not defined in your spec you add it before you implement it in your language 18:47:48 err program* 18:47:49 i always have an idea of what i want to accomplish.... 18:47:54 just do not always write it down first... 18:48:06 MikeRiley, so do doc writing at the same time you do programming 18:48:07 side by side 18:48:21 i usually do....usually implement,,,then write the docs.... 18:48:33 but some things i just tend to assume...and so they do not end up in the docs... 18:48:35 and if you change yourself, fine, unless you don't change the specs too 18:48:46 MikeRiley, well other ppl assume differently 18:48:57 that is why to some extant i do not think the programmer should write teh docs....to easy to assume things that others would not... 18:49:16 i agree,,,other people assume differently... 18:49:17 agreed, but I don't want to reverse engineer your code! 18:49:24 which is why you implemented something different than i did... 18:49:39 just look at your code and look at the docs and make sure that if you had only the docs, you would write the exact same code 18:49:40 understandable...just like i would not want to re-engineer yours...so i would ask... 18:50:03 well I ask when I think it is unclear 18:50:07 again,,,i would end up making assumptions that to me are second nature and never even think about,,, 18:50:16 but I didn't even think global vs. local would be an issue 18:50:32 because fingerprints like HRTI say they store local data in IP 18:50:39 so that is explicit too 18:50:40 to me, never use glocal without a real need to...keep everything local...that is my assumption about programming in gneral... 18:50:57 MikeRiley, well it is not the case for funge I think 18:51:05 funge space is pretty global in itself 18:51:12 could be,,,just telling you my standard assumptions... 18:51:17 yes it is... 18:51:29 but IPs do have their own local data... 18:51:43 their own stack, own loaded fingerprints, position, delta, etc.... 18:51:48 Deewiant, btw you will have to rework the funge frontend/debugger protocol thing if you want support for MVRS. 18:52:19 MikeRiley, only fingerprints that store local data in my ips are HRTI and SUBR 18:52:29 quite a few of mine store local data... 18:52:45 HRTI, SUBR, IIPC, TRDS, IMAP, MODE, off the top of my head 18:52:48 well I guess your docs didn't say, or even Deewiant decided to use global 18:53:06 Deewiant, well I don't implement IIPC, TRDS, IMAP or MODE 18:53:08 yes deewiant, those are others... 18:54:08 they would all need extensive changes to the core of cfunge 18:54:35 MikeRiley, what about TIME? 18:54:43 I use global flag there 18:54:45 and so does Deewiant iirc 18:55:16 i use a local flag.... 18:55:30 well again your fingerprint didn't say so, bad luck 18:55:40 again,,,my assumption is everything is local unless it MUST be global... 18:55:51 it was never written out 18:55:55 so how should we know 18:55:59 ask... 18:56:13 MikeRiley, I didn't know you were still reachable when I implemented it 18:56:17 if i am unsure about somebody's intent,,,i will ask them... 18:56:24 MikeRiley, all I had was the old copy on waybackmachine 18:56:33 I implemented TIME before your return 18:56:38 and I followed of CCBI did it 18:56:46 CCBI *also* use global flag 18:56:54 i can accept that,,,,i was not very findable for awhile....but not impossible to find... 18:57:20 just look at your code and look at the docs and make sure that if you had only the docs, you would write the exact same code 18:57:21 try it :) 18:57:38 and most likely i would.....because of the assumptions would not change.... 18:58:18 ok so get someone else to write the specs for you? 18:58:24 whenever i thought somethign was outside my assumptions,,,i did put it in the docs....if it was not in the docs...then it was too general an assumption for me... 18:58:38 that would be the better answer... 18:58:55 MikeRiley, HRTI states explicitly that it is local to the ip 18:59:07 or else others mention what is not clear to them,,,which you have done,,,and i have altered the docs in response... 18:59:13 yes it does... 18:59:24 make no assumptions? 18:59:25 only REFC do i recall saying the table is global... 18:59:30 better than the other way 18:59:53 and i assume local unless explicitely something says global... 18:59:53 MikeRiley, and only HRTI do I recall saying it is local 19:00:00 so one for each 19:00:07 so does MODE say it is local... 19:00:18 MikeRiley, cats eye say it for each 19:00:23 well TURT say it is global too 19:00:28 so 2 then on each 19:00:40 TURT makes sense for global since you would have only one device.... 19:00:50 -!- asiekierka has joined. 19:00:53 Eh-lo 19:00:57 it says so explicitly 19:01:02 yes it does... 19:01:18 not that the TURT docs are perfect 19:01:24 it got a lot of UNDEF 19:01:38 like what direction the degrees rotate in 19:01:48 and if negative or positive y is up or down 19:01:53 iirvc 19:01:56 iirc* 19:02:58 yeah,,,it was not well defined....again...leaves it up to the assumptions of the implementor... 19:03:28 my assumptions were screen coordinates,,,and positive degrees are clockwise... 19:03:29 and that is an issue 19:03:42 yes it is... 19:03:48 MikeRiley, I reverse engineered CCBI resulting in finding that CCBI's TURT was totally broken 19:03:53 then fixed that 19:03:58 and Deewiant fixed his too 19:05:04 what was broken about it?? 19:05:29 my TURT implementation can show the tquine program,,,so at least i made the same assumptions as that guy did... 19:05:42 MikeRiley, well that it didn't work at all for anything but the dots he test in mycology really 19:05:43 :P 19:05:49 like lines 19:05:52 they didn't work 19:06:03 or changing color, or lifting pen 19:06:25 er 19:06:28 it wasn't /that/ bad :-P 19:06:33 MikeRiley, mine can show the tquine too, except that it is full of small dots from where the pen touch the paper 19:06:45 and that you probably got from CCBI 19:06:47 Deewiant, when I looked at the svg it looked *that* bad 19:06:53 Deewiant, yes 19:06:57 the dots 19:07:15 Deewiant, they are correct aren't they? a real TURT bot would cause those dots too 19:07:42 that's my opinion and the reason why I put them there 19:08:04 Deewiant, well have you been in contact with the author about it? 19:08:29 no 19:08:35 hm 19:08:49 Deewiant, you never contacted the !Befunge author at all about mycology? 19:08:54 nope 19:09:00 why not? 19:09:31 I would try to report bugs :P 19:09:33 I just found the most "alive"-looking place (the Esolang wiki) and posted there 19:09:46 Deewiant, err email? 19:09:48 figuring that if people still care, they'd follow that or find it by themselves some other way 19:10:10 Deewiant, how long did it take for MikeRiley to find it? 19:10:12 AnMaster: I can't be bothered to e-mail 20 people personally about some code I wrote 19:10:16 and how did you find it MikeRiley? 19:10:45 Deewiant, isn't 20 I think? 19:10:48 find what??? 19:10:58 MikeRiley, mycology 19:11:11 did a google search on rc/funge-98.... 19:11:17 heh :) 19:12:13 mainly wanted to see who had links to it since i was bringing it back to life... 19:12:41 MikeRiley, and then you got a shock I bet 19:12:46 i did.... 19:12:53 being listed as something close to "worst" ;P 19:13:06 actually not worst, I think FBBI did worse 19:13:24 yeah,,,but some of the tests were flawed...like the k ones....but yes,,,gave me a chance to clean up the errors... 19:13:26 Fungus and GLFunge too 19:13:50 Deewiant, can you update the mycology result page before you add mycoedge 19:14:00 i went off the cat's eye diagnostics, which were all i had,,,,and i passed those without problems... 19:14:22 MikeRiley, they are hardly very complete 19:14:23 do wish mycology was around when i was originally developing thei nterpreter tho... 19:14:28 i agree... 19:14:35 and hard to read too 19:14:39 yep... 19:14:48 mycology is soooooooooooooooooooooooo much better.... 19:14:53 I *think* I passed all of them, but I'm not sure 19:14:57 well yeah 19:16:01 but then,,,with Rc/Funge-98 being the first fully funge/98 implementation,,,had to expect some problems,,,, 19:16:20 anyway local per-ip data is kind of painful in cfunge, as it means the fingerprint is no longer tame 19:16:23 it need a core change 19:16:36 maybe using some kind of hash table to let fingerprints register their data 19:16:39 well would work 19:16:44 not really,,,just add some additional fields to the ip data structure... 19:16:49 would be slow though 19:16:53 MikeRiley, yes that is a core change 19:17:04 not very much of one tho... 19:17:21 MikeRiley, well need to mess in ip.c internals too to make it works for t 19:17:42 just memcpy doesn't work as I need to deep copy pointers 19:17:44 not sure why,,,in my t i just copy one ip structure to another, and then replace the stack... 19:18:34 MikeRiley, well not just stack-stack need to be duplicated, loaded fingerprint stacks too, and then HRTI timestamp struct pointer 19:19:00 actually I don't copy HRTI data to child ip it seems 19:19:03 I clear it out 19:19:08 after Deewiant recommended that 19:19:10 yeah,,,,at the moment some of those things are static structurs, so copy easily,,,as i replace them with dynamic structurs, i too have to change the copy code... 19:19:30 oklopol! 19:19:38 brb 19:20:12 static huh 19:20:17 MikeRiley, what do you mean 19:20:43 are number of items on fingerprint opcode stacks limited?! 19:25:38 MikeRiley, ? 19:27:30 Deewiant, when will you fix the socket ID issue? 19:27:38 I plan to give mine random IDs if you don't fix it 19:27:43 and non random if you do fix it 19:29:04 hm I probably do same model as FILE for the mapping 19:29:08 AnMaster: it is just a bug in Mycology, it's using 0 instead of the correct value 19:29:15 Deewiant, right 19:29:22 Deewiant, so when will the bug be fixed 19:29:37 like I said, since it seems to be nontrivial, probably next weekend 19:29:50 Deewiant, why is it non-trivial? 19:30:06 just write the ID down using p and later fetch it again 19:30:10 don't see how that is hard 19:30:44 AnMaster: it is written down with p 19:30:48 I don't know where, though 19:30:53 check? 19:30:54 and I can't be bothered to go through the whole thing 19:30:58 because it's 15 lines 19:30:59 you check for me 19:31:03 since it's so easy :-P 19:31:08 back 19:31:09 grep p 19:41:04 Deewiant, it would be readable if you wrote my style of befunge :P 19:42:19 it's not about readability 19:42:23 -!- kar8nga has left (?). 19:42:40 it's about the fact that I don't know what is on the stack or p'd at any given time 19:43:20 that is why you write a lot of comments too :D 19:43:39 hm I may implement SCKE only 19:43:40 not SOCK 19:43:45 seems like the best thing to do 19:43:51 what do you think? 19:44:42 impossible 19:44:44 wait hm 19:44:48 SCKE is unusable without SOCK 19:44:54 Deewiant, so SCKE doesn't just add instructions? 19:45:22 SCKE just adds 2 instructions... 19:45:22 it doesn't copy the existing ones 19:45:22 it adds instructions, yes 19:45:24 oh well 19:45:33 it is not a superset of SOCK then 19:45:35 that is what I mean 19:45:37 meant* 19:45:45 no, it's just two additional instructions 19:45:47 makes it harder to implement in cfunge 19:45:48 no,,,it is meant to be used with SOCK... 19:46:33 just like JSTR is just 2 instructions that change 2 instructions from STRN... 19:47:07 no, JSTR is a fingerprint of its own 19:47:12 well it doesn't depend on accessing internal data of STRN 19:47:18 so I'd say it is separate 19:47:19 it's more like the way in which 3DSP requires FPSP 19:47:29 I implemented JSTR before STRN 19:47:59 3dSP does NOT require FPSP....just easier to use if you have FPSP as well... 19:48:07 MikeRiley, same for JSTR 19:48:25 yes,,,JSTR tho has just the get and put functinos without anything else... 19:48:35 they are useful on their own 19:48:45 loading a string from funge-space is useful 19:49:00 i am a bit confused why mycology has a test to see if SCKE is included in SOCK,,,since technically it should not be.... 19:49:05 MikeRiley: of course you can load SCKE without SOCK as well, but you can't do much with it, just like you can't do much with 3DSP without FPSP 19:49:05 yes,,,i agree it is... 19:49:12 MikeRiley: because it is included, in GL-funge 19:49:27 Deewiant, that is not valid I think 19:49:35 should not have been,,,,, 19:50:39 then not, but because it happened in one version I might as well output an UNDEF that says whether it's the case 19:50:50 can understand that.... 19:50:52 Deewiant, CCBI sock is broken I think, it doesn't actually implement UNIX sockets 19:51:44 it doesn't? 19:52:43 err 19:52:54 MikeRiley, for unix sockets I think the docs make no sense 19:53:00 C(s ct prt addr -- )Open a connection 19:53:05 addr:32 bit destination address 19:53:05 ct:1=AF_UNIX 19:53:05 2=AF_INET 19:53:13 so where is the path of the unix socket 19:53:27 ummmmmmmmmmmm missing from the docs????? 19:53:30 eheheheheheehheeheheheheh 19:53:33 MikeRiley, well seems so 19:54:12 would not be the first item missing!!!! eheheheheheheeheheh 19:54:12 and CCBI doesn't implement unix sockets in connect at least 19:54:35 I just pass AF_UNIX to the socket functions if that was popped 19:54:39 I don't know anything about unix sockets 19:56:25 Deewiant, I suspect trying a unix socket with ccbi could cause it to crash :P 19:57:28 why's that 19:57:52 because iirc that is not how they are created 19:57:54 see man page 19:58:00 I will check that when I get that far 19:58:27 was just looking at unix sockets,,,will have to make a change to the S command documentation... 19:58:41 good do it now 19:58:50 as I'm currently implementing SOCK 19:58:53 so hurry up 20:01:05 Also, there is AF_INET6 (which needs 128-bit address)... :-) 20:01:44 Ilari, yes that would be SCK6 20:01:57 which I plan to make if someone else doesn't first 20:02:08 hmmmmmmm trying to think of a good backwards-compatable way to add unix addresses...hmmmmmmm 20:02:21 MikeRiley, what does rc/funge do? 20:02:23 For added fun, there are Linux abstract sockets. They use AF_UNIX but have names beginning with NUL(!). 20:02:40 Ilari, well that isn't portable 20:02:45 wouldn't work on *BSD 20:03:16 how about: 20:03:22 C (s ct path -1 -- ) Open a connection on unix socket 20:03:22 B (s ct path -1 -- ) Bind a unix socket 20:03:27 err 20:03:45 MikeRiley, what do you currently do? 20:03:52 i dont actually.... 20:03:56 hahah 20:04:01 eheehehehheeheheheheh 20:04:13 never bothered with unix sockets!!! eheheheheeheheheh 20:04:28 so,,,,for unix sockets,,,C and B are as above.... 20:04:49 As sidenote, on systems with unified IPv4/IPv6 stack (such on Linux), only place one needs to understand about IPv4 is when parsing addresses and doing address mapping on resolver replies... But that isn't portable either. 20:05:15 Is that -1 especially necessary in there? 20:05:53 fizzie, for backward compatibility 20:05:58 need a way to distinguies from ports... 20:06:11 either that or move ct to the top...but that would break existing code... 20:06:24 -1 is not an allowed port,,,so makes it possible to tell the difference... 20:06:35 How is address given for IPv4 sockets? As integer? 20:06:36 Isn't that the address field in "old" C/B? 20:06:48 that is the port address... 20:06:48 seems so 20:07:01 err 20:07:02 what?! 20:07:15 MikeRiley, how do you bind to a specific IP then? 20:07:20 ehehehehehe oooppsss....yes,,,,-1 is on the addr argument,,,,port becomes path... 20:07:33 It's (s ct prt addr), and you can't really use a "-1" address since it's 255.255.255.255 in the "standard" representation. 20:07:36 doesn't work 20:07:42 ok,,,,hmmmmmmm 20:07:45 MikeRiley, addr is a unsigned 32-bit right? 20:07:50 yes.... 20:07:54 so doesn't work then 20:08:05 well it works for me, since my funge is 64-bit 20:08:17 You _could_ spec it as (s ct path -1 anything -- ) 20:08:24 Though it's pretty ugly. 20:08:38 yeah,,,not sure i like that,,, 20:08:44 SCKU? 20:08:47 maybe time for that 20:08:52 may have to do that!!! eheheehheeheheheheh 20:08:57 What's that 'ct' there? 's' is socket ID, 'prt' is port and 'addr' is remote address... 20:09:02 or, retcon and add new instructions 20:09:03 USCK, the "you suck" fingerprint. 20:09:06 I think that may be better 20:09:14 -!- LinuS has joined. 20:09:17 ct is the address family, I think. 20:09:18 or else,,,,it is up to the implementation to keep track of what kind of socket s is.... 20:09:32 because accessing data of another fingerprint in cfunge is.... non-trivial 20:09:36 to say the least 20:09:38 and use the correct set of arguments based upon the type s was created as ... 20:10:19 MikeRiley, that works fine for me 20:10:39 does not work well for me,,,,but can alther the code to use it.... 20:11:00 that doesn't work does it 20:11:10 since s is the bottom-most argument on the stack 20:11:16 so you don't know how many cells to pop 20:11:17 true.... 20:11:49 could always do something like: (path s ct prt addr) path only exists if ct is unix... 20:12:15 prt and addr then have no purpose on a unix socket,,,just filler til you can get ct... 20:12:17 why not use a new letter? 20:12:26 because AnMaster does not like adding new letters!!!! 20:12:32 eheheehheeheheheheheheh 20:12:32 well I agree 20:12:39 how about removing unix sockets altogether and making a fingerprint of their own for that? :-P 20:12:42 but SCKU is worse 20:12:45 seems to me that that's the only clean solution 20:12:46 Deewiant, that is worse 20:12:51 much worse 20:12:53 why is that worse 20:12:54 removing stuff 20:12:57 that is why 20:13:06 and that means you have type flag that makes no sense 20:13:15 AnMaster: we're removing something that never worked 20:13:16 i think for the moment i like the path on the stack below s..... 20:13:25 Why is removing stuff bad? 20:13:27 :| 20:13:27 there can have been no implementation nor any code that wanted the current behaviour 20:13:34 because the current behaviour is essentially "segfault" 20:13:44 or that's what I understand from what you've been saying, anyway 20:13:51 well I think it would be 20:13:52 or error 20:13:53 a software release will less features than the last is a plus. 20:13:56 probably error instead 20:14:02 AnMaster: yeah, so why is removing it bad 20:14:06 in this case 20:14:09 i have to run for now....i will think about what to do with it..... 20:14:11 BTW: When implementing 'I', beware of buggy resolver libraries that can return success with h_length == 0 and bogus h_addr... 20:14:14 Deewiant, because it means: 20:14:18 ct:1=AF_UNIX 20:14:19 2=AF_INET 20:14:19 becomes 20:14:25 ct must always be 2 20:14:31 that seems rather silly 20:14:46 Deewiant, agree? 20:14:49 in which case could remove ct alltother.....so do not think AF_UNIX should be removed.... 20:14:57 just C and B altered in a way to allow it,,,, 20:14:58 MikeRiley, err that would break existing apps 20:15:03 removing ct I mean 20:15:06 AnMaster: so is it better to have to pop port and addr even when they're unused? 20:15:15 or rather, how is it better 20:15:19 since you already said that this was "much worse" 20:15:38 Deewiant, because those are still used sometimes 20:15:45 anyway why not just define 3 new fingerprints: 20:15:50 SCK4 SCK5 SCKU 20:15:54 and drop the old ones 20:16:03 SCK5?-) 20:16:08 fizzie, ipv5? 20:16:15 ??????? 20:16:19 no...would not break existing apps if the path was placed below the other arguments....then existing ones would work... 20:16:25 There was really no IPv5. 20:16:29 AnMaster: yes... but if you know you're using unix sockets then you always have to push port and addr 20:16:31 fizzie, why? 20:16:33 there was IPv 1 through 6 20:16:50 only 4 and 6 "really" were, though, as fizzie says. :-) 20:16:55 -!- asiekierka has quit (Read error: 110 (Connection timed out)). 20:16:58 hm 20:17:03 are 20:17:06 not were 20:17:10 Wikipedia has a useful redirect from IPv5. 20:17:15 either that,,,or disallow 255.255.255.255 as an address and use the -1.... 20:17:16 fizzie, to? 20:17:22 MikeRiley, eww 20:17:36 To Internet Stream Protocol, which used the IP version number field of 5. 20:17:37 I got an idea 20:17:40 I know how to solve it 20:17:47 push 2^32+1 20:17:51 problem solved 20:18:01 would not work on 32-bit funges... 20:18:01 not valid ipv4 20:18:01 :D 20:18:07 oh yeah true :P 20:18:10 eheheheheheeh 20:18:24 so,,,choices are: (path s ct addr prt) or (s cd path -1) 20:18:29 s/cd/ct/ 20:18:43 it's prt addr, not addr prt 20:18:45 or break everything and move ct to the top....(i am really really against that) 20:18:53 I suggest dropping SOCK and going for SCK4/SCK6/SCKU, these would be extended to have additional features too 20:18:55 to be exact: 20:18:56 ok,,,,s/addr prt/prt addr/ 20:19:00 block current ip only 20:19:04 non-blocking 20:19:11 block whole process 20:19:39 what about that? 20:19:54 or maybe as one fingerprint, but can't think of a good name for it 20:20:01 NSCK, New Sock 20:20:03 got to go..... 20:20:06 I reserve that name 20:20:07 But you can't really use (s cd path -1) because it's currently in the "prt addr" format, so when you pop the addr, you can't distinguish between -1 and a valid IPv4 address. You'd have to have (s cd path -1 dummyargument) or something. Which perhaps isn't very much better than (path s cd dummyaddr dummyprt) 20:20:07 -!- MikeRiley has quit (" "). 20:20:14 Too late! 20:20:16 Aw. 20:20:40 in fact current SOCK is quite broken 20:20:47 Well, for the record, I won't be too angry if you make a backwards-incompatible SOCK change and I have to fix fungot. 20:21:10 AnMaster: it's fine by me if we semi-formally declare SOCK broken and deprecated 20:21:25 Deewiant, we need to replace it by something better 20:21:29 NSCK probably 20:21:33 and I gather that's your SCK4 20:21:36 -!- Linus` has joined. 20:21:36 would handle all three families 20:21:45 well if you can do that cleanly, whatever 20:21:47 Deewiant, I think there should be one fingerprint for them all 20:22:06 One fingerprint to rule them all, and in the darkness bind(2) them. 20:22:09 Deewiant, anyway I will implement SOCK for now because a lot of the mechanism will be shared 20:22:12 fizzie+++++++++++++++ 20:22:13 :D 20:22:28 Yay, I got incremented. 20:23:19 I should implement some sort of artificial intelligence for fungot, too; since optbot already has one. 20:23:19 fizzie: Sure, sure. But not for writing an IRC bot ;) 20:23:29 Spooky! 20:23:44 heh 20:23:44 optbot; You mean you won't write your own successor? 20:23:44 fizzie: i agree with lament 20:23:58 what did lament say last? 20:24:13 nothing in my scrollback 20:24:26 [2008-08-23 02:05:08] < lament> can anyone in here upload files to the esoteric archive? 20:24:49 strange thing to agree with 20:25:48 Actually I already wrote one artificial intelligence thing for fungot, by simply making a full 5-gram model of my logs of this channel, then using that by generating words based on the probabilities given by the 4-gram of already generated words. 20:26:07 So it's pretty close to the pointless and overused markov chain thingie, but still sometimes amusing. 20:26:36 "i'm differentiating between null string and 1/10 to work... it's merely a less harmful master. clean it up, please. i'm allowed to enjoy things that are childish in addition to mature things. i like small and fnord licenses. of course gpl is good for projects like linux... works fine in dos unless you know what you're doing take off every zig... in bed." 20:28:08 Deewiant, you pop protocol and type? 20:28:17 switch (pop) { 20:28:17 case 1: protocol = ProtocolType.TCP; break; 20:28:17 case 2: protocol = ProtocolType.UDP; break; 20:28:17 default: return reverse(); 20:28:17 } 20:28:18 switch (pop) { 20:28:20 case 1: type = SocketType.DGRAM; break; 20:28:22 case 2: type = SocketType.STREAM; break; 20:28:24 default: return reverse(); 20:28:28 } 20:28:30 sorry for spam 20:28:32 didn't think it was that large 20:28:41 AnMaster: so what is your question? 20:28:42 except TCP is STREAM and UDP DGRAM 20:28:50 that is how they look from C at least? 20:28:55 ?? 20:29:11 to create an UDP socket: 20:29:12 udp_socket = socket(PF_INET, SOCK_DGRAM, 0); 20:29:17 for tcp: 20:29:19 tcp_socket = socket(PF_INET, SOCK_STREAM, 0); 20:29:25 Huh? The SOCK spec specifies those numbers for type and protocol. 20:29:37 fizzie, yes 20:29:40 http://www.elf-emulation.com/funge/rcfunge_manual.html#SOCK 20:29:54 So what was the issue here? 20:29:56 but why the duplicate info here I wonder 20:30:19 Well, why the non-working address family? Maybe it's just not too well written. :p 20:30:29 fizzie, err what? 20:30:50 the example " tcp_socket = socket(PF_INET, SOCK_STREAM, 0);" was from man tcp 20:30:58 the other from man udp 20:31:05 I just noticed that we got duplicate info here 20:31:37 well, it's not necessarily duplicate is it 20:31:47 there can be more than one stream or datagram protocol 20:31:56 Deewiant, yes because TCP *is* STREAM and UDP is DGRAM 20:31:59 although I guess it is in the sense that SOCK only supports TCP + UDP 20:32:04 Deewiant, those sockets are created in other ways 20:32:31 anyhoo I'm going to sleep -> 20:32:40 Well, I'd say SOCK 'S' has typ and protocol fields because socket() has them too. 20:33:40 fizzie, well protocol is just 0 for udp and tcp according to the man pages 20:35:06 Yes, but it's not like it's illegal to give it the TCP protocol explicitly and not rely on the fact that in AF_INET the default stream and datagram protocols are tcp and udp. 20:35:22 And you need to pop the numbers anyway. 20:35:41 ah hm 20:35:51 what are those protocol numbers then? 20:36:53 If you're asking about the numbers, there are both #define constants (IPPROTO_TCP and IPPROTO_UDP) and the getprotobyname() function to get them. 20:37:26 Incidentally, somehow I've always assumed that if S reflects, it would have popped all the arguments. Does that CCBI code you pasted reflect after popping the first invalid argument? 20:37:37 IPPROTO_TCP is not defined in some header then? 20:37:55 I'm not sure how standard that constant is. 20:38:18 RC/Funge-98 at least uses getprotobyname("tcp") and getprotobyname("udp") to get the numbers. 20:38:37 Which I noticed when fungot failed to work in a chroot jail because /etc/protocols was not accessible. 20:39:10 ah 20:42:39 -!- LinuS has quit (Connection timed out). 20:42:48 Well, POSIX does specify exactly, that with AF_INET always SOCK_STREAM and proto=0 becomes IPPROTO_TCP, and SOCK_DGRAM becomes IPPROTO_UDP, and that will have at least most of those defines. So if you wanted to, I guess you could pop and just discard the protocol field. Or just pop and verify it agrees with the "type" field. 20:46:50 -!- kar8nga has joined. 20:47:10 "hm, that's odd :p. but, fnord? the quantum version of "internet relay programming"? : fnord, fnord, fnord" 20:47:26 fizzie, I need to take care of it for unix sockets though iirc? 20:47:52 fnord? 20:47:57 f nor d? 20:48:00 "did you download the fnord files? to update your file to the latest, do cvs update filename. always a good idea to make a program that'll be a bit longer than ihope's version" 20:48:15 cvs? 20:48:16 eww? 20:48:17 I mapped all out-of-vocabulary words (mentioned <2 in my logs) to fnord. 20:48:37 Fnord is a Discordianist term. 20:48:45 err 20:48:51 what is "Discordianist"? 20:49:38 Someone who practices Discordianism, maybe. Just see http://en.wikipedia.org/wiki/Discordianism or read the Illuminatus! trilogy. 20:49:57 (Or maybe don't read, I'm not very certain it was a particularly good book.) 20:51:57 It's a bit like Pastafarianism or that Invisible Pink Unicorn thing, except older and maybe not quite that similar. 20:52:40 I should port that babble-generator to Funge-98 so that I could bolt it into fungot, though. Calling with = would be too much cheating. 20:54:03 -!- RedDak has joined. 20:57:33 -!- KingOfKarlsruhe has quit (Remote closed the connection). 21:12:34 -!- oklopol has joined. 21:17:06 fizzie, is it perl? 21:17:11 then you could use PERL fingerprint 21:18:06 It's C++, actually. 21:18:20 Just had the urge. 21:18:28 And still cheaterooing. 21:20:30 Deewiant, there? 21:20:41 well I got some weird error by listen() 21:20:44 to be exact: 21:20:48 operation not supported 21:21:07 very strange 21:21:12 If he went to sleep 22:32, I doubt he's still awake. 21:21:21 ah he did? 21:21:23 oh well 21:21:26 fizzie, no issue 21:21:30 time is 22:21 now 21:21:30 :D 21:21:37 so i got 11 minutes 21:21:42 before he goes to bed 21:21:44 ;) 21:21:52 fizzie, so what timezone did you mean? 21:21:57 not CEST, nor UTC 21:22:02 His, and mine; EET. 21:22:11 fizzie, well UTC is more portable 21:22:26 Sure, sure. Maybe I should switch my timestamps to that. 21:22:44 fizzie, Use unix timestamps! 21:23:03 I can't do modulo 86400 very well in my head. 21:23:17 EOPNOTSUPP should come if the socket is not of the listen()able type, but I'm sure you already read that man page. 21:23:43 yes 21:23:49 and that makes no sense 21:23:59 GOOD: Created a PF_INET, SOCK_STREAM TCP socket with S 21:23:59 UNDEF: S pushed 0 21:23:59 GOOD: set SO_REUSEADDR with O 21:23:59 GOOD: bound to local port 51959 with B 21:23:59 ergh: Operation not supported 21:24:00 BAD: trying to set listening mode with backlog size 1 with L reflected 21:24:02 GOOD: closed socket with K 21:24:08 how is that not listenable 21:25:00 If your bind() call succeeds, it is indeed quite strange why it wouldn't be listenable. 21:25:12 bind() is successful 21:30:05 fizzie, ah valgrind to the rescue: 21:30:07 ==9842== Syscall param socketcall.bind(my_addr..sa_family) points to uninitialised byte(s) 21:30:58 shouldn't have been successful though 21:31:22 hm still: 21:31:23 BAD: trying to set listening mode with backlog size 1 with L reflected 21:33:47 Indeed. I took a quick peek at the Linux kernel sources, and I only saw EOPNOTSUPP in the default proto_ops functions; when the socket structure is filled with TCP ones, there did not seem any obvious paths that would return EOPNOTSUPP any more. 21:34:15 Of course that's assuming you run Linux there. 21:34:17 so how to track this down 21:34:22 yes Linux 21:34:26 Linux tux.lan 2.6.25-gentoo-r7-1 #2 Sun Aug 3 13:19:47 CEST 2008 x86_64 AMD Sempron(tm) Processor 3300+ AuthenticAMD GNU/Linux 21:35:47 fizzie, so you mean protocol is bad? 21:35:54 It looks like it should return EINVAL if a (tcp) socket is connected, not bound, not a stream socket, or things like that. 21:35:55 I just use 0 currently 21:36:02 0 and SOCK_STREAM should be just fine. 21:36:08 With AF_INET, of course. 21:36:20 AF_INET indeed 21:36:41 I guess you could print out the numbers you give to socket, bind and listen and check that they make sense. 21:37:04 I checked in gdb that it is really AF_INET 21:37:17 And SOCK_STREAM?-) 21:37:34 a sec 21:38:04 ah 21:38:07 hm 21:38:22 that was the issue 21:40:36 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)). 21:40:46 -!- Slereah_ has joined. 21:43:45 -!- jix has quit ("CommandQ"). 21:49:18 -!- kar8nga has left (?). 21:55:23 -!- psygnisf_ has joined. 21:55:23 -!- psygnisfive has quit (Read error: 104 (Connection reset by peer)). 22:03:34 -!- oerjan has joined. 22:08:26 SCHEME. SCHEME NOMADS. 22:09:16 NO NADS 22:09:19 well my SOCK works for mycology 22:09:32 Ew. Your sock is full of mushrooms. 22:09:41 Deewiant, mycology fails to clock it's sockets 22:09:47 ==11003== FILE DESCRIPTORS: 4 open at exit. 22:09:47 ==11003== Open AF_INET socket 5: 127.0.0.1:51959 <-> 127.0.0.1:37397 22:09:47 ==11003== at 0x35FAEC0C00: accept (in /lib64/libc-2.6.1.so) 22:09:47 ==11003== by 0x418756: FingerSOCKaccept (SOCK.c:135) 22:09:55 NOMADS 22:09:58 it forget to close the accepted one 22:09:59 Slereah_: everyone has nads 22:10:52 Even girls? 22:11:27 yes 22:12:47 hm "the vernacular, or slang, use of "gonads" (or "nads") usually only refers to the testicles" 22:13:09 THAT'S UNSCIENTIFIC 22:13:21 the word "nads" isn't scientific. 22:13:37 NADS TO THE BONE 22:14:35 Deewiant, two bugs so far: 22:14:45 1) no newline between SOCK and STRN: 22:14:50 UNDEF: SCKE not included in SOCK 22:14:50 Testing fingerprint SCKE... not loaded. 22:14:50 Testing fingerprint STRN... loaded. 22:14:50 GOOD: A works 22:14:59 should be an empty line there 22:15:11 2) mycology fails to clock it's sockets (the one it accept()ed) 22:17:02 night all 22:19:21 fizzie, there? 22:19:27 url to fungot files again 22:19:33 -!- oerjan has quit ("leaving"). 22:28:10 Was getting ready for the sleepitude. http://zem.fi/~fis/fungot.b98.txt and fungot-load-freenode.b98.txt should be a matching pair, although not the absolutely latest version. 22:28:19 Actually that one is still with FNGR. 22:28:30 You probably want the FING-enabled version. 22:29:09 Updated the latest version there. 22:29:22 It has a disabled and incomplete http:// URL handler and other cruft like that. 22:30:03 fizzie, yes I want FING 22:30:41 fizzie, and the reason I want this stuff is that it is the only SOCK app I know 22:32:34 Guessed as much. 22:32:45 fizzie, you use SCKE too? 22:32:49 well I don't have that yet 22:32:54 so will have to wait till tomorrow 22:32:57 when I implement that 22:32:59 Yes, but only for the http:// URL thing. 22:33:14 so i can just move that out one column to avoid it then? 22:33:25 Yes, or delete the EKCS line and the one under it. 22:33:43 why do you load NULL? 22:34:06 fizzie, ? 22:34:43 fizzie, also where do you set channel to join? 22:35:09 Because I don't really know how to use FING, I guess. At least on RC/Funge-98 FING's 'X' refused to swap things if one of the specified letters and no special semantics loaded on top of it. 22:35:19 -!- dogface has joined. 22:35:22 fizzie, ah true 22:35:40 And there's no automatic channel-joining, I just ^raw JOIN #esoteric every time I restart it. :p 22:35:58 sh: vR: command not found 22:35:58 sh: : command not found 22:35:58 sh: : command not found 22:35:59 err what? 22:36:15 AnMaster: why did you try and run it as a shell script 22:36:16 per se? 22:36:26 I didn't 22:36:27 ... 22:36:30 you did './prog' 22:36:34 there's no shebang 22:36:37 so it runs it as a shell script 22:36:37 no 22:36:38 ... 22:36:51 was misaligned code path 22:36:53 in loader 22:36:56 so it hit a = 22:36:59 Well, err, I guess you could have hitted a =. 22:37:09 yes as I said 22:37:20 I had already written that comment and didn't want it to go to waste. 22:37:38 fizzie, should there be any output? 22:37:55 f2P2f > f2P2f > f2P2f > f2P2f 22:37:58 If you haven't changed it, it should print all raw messages received from the IRC server. 22:38:00 locks up in such a loop 22:38:06 That sounds familiar. 22:38:06 wonder why 22:38:31 fizzie, maybe due to now SCKE? 22:38:36 so remapping issues? 22:39:06 fizzie, anyway any idea of that error 22:39:07 When I had it, it was because of the "FILE" fingerprint usage immediately before it, when it loads the state file. 22:39:36 save settings from the loader 22:39:36 > f2P 41p #vIv 22:39:36 v G1fP1f p10>#<0a".sserdda PI dilavnI">:#,_@ 22:39:40 It uses FING to swap G/K and B/P so that I can use both FILE's and STRN's G/P commands simultaneously. But it should swap them back. 22:39:40 seems to be that f2P 22:39:59 Actually I'm not sure I have ever tested whether it works if the persistence state file does not exist. :p 22:40:12 fizzie, so what file should I touch then? 22:40:51 ah no 22:40:56 that gives "State bad" 22:41:02 fizzie, so how do I create a good state? 22:41:04 sigh 22:41:12 You might be able to use a file which has 10 newline characters. 22:41:25 Although I really should fix the failure code path to work too. 22:41:45 I think there's a single ) missing from that path, actually. 22:42:11 -!- testthingy has joined. 22:42:12 ah 22:42:14 -!- testthingy has quit (Remote closed the connection). 22:42:19 now I didn't have it in a chroot 22:42:23 that is why I quit it 22:42:41 still seems like SOCK works quite well :D 22:43:01 Well, it's supposed to be safe... although it's quite easy to have a misplaced < make it run into a 'o' and start generating fancily named files. 22:43:30 fizzie, it doesn't close FD on quit 22:43:36 ==15034== Open AF_INET socket 3: 192.168.0.64:37119 <-> 85.188.1.26:6667 22:43:37 ==15034== at 0x35FAEC1267: socket (in /lib64/libc-2.6.1.so) 22:43:37 ==15034== by 0x41918B: FingerSOCKcreate (SOCK.c:358) 22:43:37 ==15034== by 0x40E688: HandleFPrint (interpreter.c:135) 22:43:51 Probably not, no. It just gets a "irc read failed" and hits a @. 22:43:55 other than that: 22:43:59 ==15034== LEAK SUMMARY: 22:43:59 ==15034== definitely lost: 0 bytes in 0 blocks. 22:43:59 ==15034== possibly lost: 0 bytes in 0 blocks. 22:43:59 ==15034== still reachable: 40 bytes in 3 blocks. 22:43:59 ==15034== suppressed: 0 bytes in 0 blocks. 22:44:00 :D 22:44:34 One could add "21gC" before the @s in there in most places to fix that. 22:44:54 Have to go to sleep now, wake-up in six hours. Congratulations on the SOCK; now I could use cfunge to run fungot too. 22:45:00 21gC... 22:45:03 so close... 22:46:21 tusho, so close to what? 22:46:27 2g1c, duh. :P 22:46:31 err 22:46:32 and? 22:46:37 what about 2g1c? 22:46:39 don't google it :) 22:48:07 tusho, well I haven't googled but now I remember what you mean 22:48:16 still you are too young to browse such sites 22:48:26 your parents should add a filter 22:48:29 haha 22:48:29 ;P 22:48:36 i haven't actually seen 2g1c 22:48:40 but i've been desensitised to goatse 22:48:44 and tubgirl. 22:49:22 aren't you going to congratulate me on my SOCK too? 22:49:29 i never understood how goatse got so famous, i've seen much bigger assholes 22:49:31 or is that just fizzie who will do 22:49:44 oh well 22:49:47 night all I guess 22:49:52 night 22:49:57 http://www.flickr.com/photos/fuxoft/2023343777/sizes/o/ LMAO 22:50:15 yeah that's what i referenced in our last talk 22:51:13 I've seen a small portion of goatse, black-and-white and distorted. 22:51:24 dogface: From ELER? 22:51:32 Seriously. Goatse isn't that bad. 22:51:38 What is ELER? 22:51:40 Oh. 22:51:47 Everybody Loves Eric Raymond. 22:51:53 It's a comic about linux developers and stuff. 22:51:58 They all live in an apartment. 22:52:01 Also Eric S. Raymond. 22:52:07 http://geekz.co.uk/ 22:52:11 Probably not. 22:53:02 actually anyone shocked by goatse would just get a wtf from me 22:53:04 it's just an anus. 22:53:40 you're not old enough to be shocked by anything 22:53:57 yea i am, goatse actually did freak me out first time 22:53:58 but then 22:53:59 I was like 8 22:54:07 :-p 22:54:28 i guess i was somewhat impressed by the commitment it must have required 22:55:09 god you're lucky, when i was 8, we didn't even have modem iirc 22:56:40 i got interwebnet at 4 :\ 22:57:45 i know 22:58:39 :D 22:58:48 hey oklopol 22:58:52 hey tusho 22:58:53 i'll like try and get you that £20 tomorrow 22:58:57 or like the day after that 22:58:58 I don't know 22:59:16 well do it fast so i can start spending it! 22:59:35 spend it now, get it later :D 23:04:24 I learned Pascal at an early age. 23:04:49 The time period was known as Borland Delphi 4. 23:09:07 So, before 1999. 23:09:47 oklopol 23:09:48 tusho, what did you know in 1999? 23:09:48 dogface 23:09:51 psygnisf_ 23:09:56 -!- psygnisf_ has changed nick to psygnisfive. 23:09:59 dogface: things. 23:10:01 damn you freenode! 23:10:07 psygnisfive: later. 23:10:11 :( 23:10:24 I have important things to do. 23:10:34 dogface: Like ask me what I knew in 1999? 23:10:41 Yeah. 23:10:53 in 1999, i knew more than you, tusho. 23:10:57 take that! 23:11:05 oklopol: in 1999, you were older than me. 23:11:06 take that! 23:11:12 In 1991, most people knew more than me. 23:11:12 :< 23:11:24 dogface: Uh, I knew some things I guess. I dunno. An example of an answer to what you're asking? :P 23:11:27 tusho: that hit me hard. 23:11:30 oh wow 23:11:44 somebody used dpkg dependency resolver logic to solve sudoku 23:11:46 oklopol: :D 23:11:47 Uh oh, the ops have come to take us away. 23:11:52 lament: yes, so 3 days ago 23:12:03 lament: also ... resolvers are meant to uhh you know... resolve 23:12:05 what's weird about that? 23:12:07 i don't think it's that crazy :D 23:12:10 i mean 23:12:13 tusho: your face is so 3 days ago 23:12:14 any resolver which couldn't do it 23:12:16 would kind of suck. 23:12:18 as it couldn't resolve 23:12:18 sudoku is simple to program a solver for. o.o; 23:12:32 I have an essay to write. If I'm mistaken, not getting this essay done within the next half hour will result in me not being accepted into Rose-Hulman. 23:12:39 So yeah. See you later. 23:12:44 -!- dogface has quit ("ChatZilla 0.9.83 [Firefox 3.0.1/2008070208]"). 23:12:47 what's rose-hulman 23:12:51 psygnisfive: they didn't. They used dpkg instead. 23:13:21 dpkg is a progarm. 23:13:24 that resolves things. 23:13:31 sudoku is a thing that is resolved. 23:13:31 dogface missed a crucial "not" in his sentence 23:13:33 so... 23:13:41 :P 23:13:43 indeed 23:13:50 or not 23:14:06 if not, he better not write that essay :) 23:14:32 lament: he could be mistaken about something else. 23:14:42 true 23:14:54 somebody used dpkg dependency resolver logic to solve sudoku 23:14:56 link? 23:15:20 AnMaster: http://algebraicthunk.net/~dburrows/blog/entry/package-management-sudoku/ 23:15:46 someone wake me up in 7 hours 23:15:52 like, yell my name in caps 23:16:00 i'm too lazy to set an alarm clock 23:16:23 sudoku's can just be brute-forced 23:16:32 9x9 ones 23:17:16 your mom can just be brute-forced 23:17:31 81 times 23:17:40 oklopol: i could make optbot do that 23:17:41 tusho: hah 23:17:43 but i won't 23:17:46 optbot: :) 23:17:46 tusho: that should explain the equivalence, the first uses NEXT while the second uses NEXT FROM 23:17:50 tusho: do what? 23:17:52 oklopol: why not set an alarm on your computer 23:17:52 solve a sudoku? 23:17:55 oklopol! 23:17:55 oh! 23:18:01 wake me up k k 23:18:01 that's easier than a real alarm 23:18:03 * psygnisfive sits on oklopol 23:18:12 yay i'm a chair 23:18:26 with a penis 23:18:39 im sitting on his chest, you pervert. 23:18:59 i need to sleep, don't forget to wake me up -> 23:19:08 i won't wake you up oklopol! 23:19:09 <3! 23:19:10 fifteen men on oklopol's chest 23:19:16 yo-ho-ho and a bottle of rum 23:19:29 dont need rum to get oklopol naked with a bunch of guys 23:21:27 yeah i just love gay gangbangs, just bring it on, i can take it. 23:21:28 -> 23:21:38 night oklopol <3 23:28:43 oklopol: does your girlfriend also love gay gangbangs? 23:32:10 she likes watching them! 23:32:17 awesome 23:34:01 yeah 23:34:06 wanna join in? she'd love to watch 23:38:20 glaaah i can't sleep 23:45:11 oklopol: cool 23:45:13 let's have sex 23:45:15 wait wut 23:45:16 optbot! 23:45:16 -!- optbot has set topic: the entire backlog of #esoteric: http://tunes.org/~nef/logs/esoteric | i don't know how to find any prior discussion though. 23:45:20 haha 23:45:22 how ironic 23:49:33 oklopol 23:49:36 since you cant sleep 23:49:40 lets talk about english syntax :) 23:54:03 nono i have to tryyyy 23:54:12 early morningggg 23:55:34 psygnisfive: a subject you don't appear to be very good at. 23:55:52 oh? how do you figure? 23:55:54 "lets"? 23:57:23 and "cant" 23:57:35 and, uh, the general lack of punctuation 23:57:38 (Not that I'm any better.) 23:58:31 i'm perfect, but you don't see capitals in my irc speech