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