00:00:03 FireFly, I guessed right thne 00:00:05 then* 00:00:08 Or stones 00:00:26 00:00:36 stones? 00:00:37 what? 00:00:47 [23:58:16] [...] really rocks :) 00:00:56 oh 00:00:58 bouldering along... 00:01:03 oh my 00:01:21 no no 00:01:30 right way is to say jazz along 00:01:31 duh 00:01:50 I was thinking about something once 00:01:53 that sounds distinctly non-geological 00:02:00 oerjan, rocks. Rock and roll 00:02:01 FireFly: me too! 00:02:03 thus jazz 00:02:05 :D 00:02:08 oh 00:02:14 oerjan, makes perfect sense 00:02:17 as well 00:02:23 Translating some english named music genres into swedish sounds really awkward 00:02:36 Heavy metal -> tungmetall 00:02:39 jazzå 00:02:46 FireFly, rock and roll -> stenar och rullar? 00:02:49 err 00:02:54 rock and roll -> sten och rullar 00:02:55 even 00:03:03 :D 00:03:04 cule, even 00:03:06 rulle* 00:03:12 oh yeah 00:03:18 FireFly, sax! 00:03:22 err 00:03:22 wait 00:03:25 påse! 00:03:26 even 00:03:32 that is the right answer I think 00:03:40 Rulle wins over påse 00:03:42 :> 00:03:48 For some reason 00:03:50 rulle isn't in the game 00:03:54 sch 00:03:56 Details.. 00:04:00 it is sten, sax, påse 00:04:20 rock, scissors, bag in English I think 00:04:25 or something like that 00:04:34 http://www.thinkgeek.com/tshirts-apparel/unisex/generic/b597/ 00:04:37 paper 00:04:44 For påse 00:04:53 paper, scissors, stone? 00:05:10 impomatic, maybe. Different variation than the Swedish one then 00:05:29 It's the same game >_< 00:06:06 Just that in english they s/bag/paper/ 00:06:12 Or something 00:07:02 rock paper scissors 00:08:27 ah 00:11:45 http://www.thinkgeek.com/tshirts-apparel/unisex/generic/9080/ <-- a lil' tad overkill 00:15:28 I like it 00:24:05 -!- GreaseMonkey has joined. 00:29:40 -!- Sgeo has joined. 00:30:43 -!- impomatic has left (?). 00:33:10 NetHack style is a recent addition, yes. 00:33:24 ^style 00:33:24 Available: agora alice darwin discworld europarl ff7 fisher ic irc lovecraft nethack* pa speeches ss wp 00:33:33 fizzie: make a fungot style 00:33:34 ehird: you're going into the surrounding walls and ceilings of the god of craftsmen. he gazed after tron, asking himself what in the middle ages, people swinging on chandeliers, swordfights over the lower body of a horse which was swifter than the sword. 00:33:39 Not more than a week or so, I guess. 00:33:40 feed it all the lines its blabbed so far 00:33:41 >:D 00:33:50 NetHack style what? 00:34:12 ... 00:34:17 fungot, hi 00:34:17 AnMaster: disenchanter: ask not, as if a deity is pushing you, my friend." " true!" she laid aside the bag, bag of gems. 00:34:21 Sgeo, that ^ 00:34:58 fizzie, "he gazed after tron"? 00:34:59 what? 00:35:17 There's a Tron quote in the "grid bug" entry. 00:35:22 oh 00:35:35 ^style nethack 00:35:35 Selected style: nethack (NetHack 3.4.3 data.base, rumors.tru, rumors.fal) 00:35:39 That's the files it's from. 00:36:02 ok 00:37:10 fungot: give me some nonsense 00:37:11 ais523: ulch! that meat was painted! i'm being held prisoner in a mirror to notice. i once saw a crowd, a long sword named frost brand makes you feel cooler than you are aware of that kind. born in 1226, he crops in the dungeon it's not for the weak of heart. 00:39:46 -!- Slereah has joined. 00:42:09 grammatical sense. That line made none. 00:42:23 ais523, ^ 00:43:05 * Sgeo paints some meat with lead 00:43:16 Sgeo, dangerous 00:45:02 " Four-core machines are already widely available, with affordable six processors on the horizon. As if that's not enough, some hard-core gamers have dual quad-core processors installed" 00:45:10 err is it just me or are 8-core machines common 00:48:59 Out of pure random change, that nethack style was built with trigrams only, so for each word only the two previous ones matter when selecting it. 00:52:22 -!- Slereah_ has quit (Read error: 110 (Connection timed out)). 00:56:47 -!- ais523 has quit (Read error: 110 (Connection timed out)). 01:01:39 fizzie, hm ok 01:01:50 fizzie, the other ones used quattrograms? 01:01:58 or whatever you call them 01:02:06 quadgrams? 01:04:53 I think when it gets to >= 4 it's just n-gram with n=4 or whatever. Uni-, bi- and trigrams are the only names I've commonly heard. 01:05:03 ok 01:05:49 Must sleep now, g'night. 01:07:42 a=$(mktemp); (echo 'int main(int argc, char **argv){'; cat; echo 'return 0;}') | cc -x c - -o "$a" && $a 01:09:18 && rm $a 01:18:48 night too 01:20:04 -''- 01:20:13 Nighty 01:20:16 -!- FireFly has quit ("Later"). 01:29:09 -!- olsner has joined. 01:30:36 Rob Pike's email is r@google.com 01:31:51 clearly he needs us to send him some more letters 01:34:32 :D 02:12:06 :D 02:22:01 http://www.plan9.bell-labs.com/wiki/plan9/why_static/ 02:38:00 ....plan 9 doesn't do dynamic linking? 02:50:58 oh haha didn't realize this was in here 02:51:30 saw the pike comment then when I looked back in there it was gone 02:51:36 * Robdgreat .oO(wtf) 03:10:07 -!- Slereah_ has joined. 03:23:28 -!- Slereah has quit (Read error: 110 (Connection timed out)). 03:24:38 -!- revcompgeek has joined. 03:54:46 my Ans interpreter is working beautifully 03:58:00 Robdgreat, why'dyou do ".o0(stuff)"? A certain thingy for an RPG does that 03:58:40 approximates a cartoon thought bubble 03:59:18 jParanoia does that 03:59:32 ah, not familiar with it 05:05:16 -!- oerjan has quit ("leaving"). 06:11:14 -!- Sgeo has quit (Read error: 104 (Connection reset by peer)). 06:11:59 Ans interpreter has been posted (http://esolangs.org/wiki/Ans#Interpreter) 06:35:00 -!- neldoreth has quit (Read error: 113 (No route to host)). 06:45:21 -!- GreaseMonkey has quit ("X-Chat -> http://xchat.org <- At least when I quit I don't look like a lamer"). 06:51:00 -!- Slereah has joined. 07:05:10 -!- Slereah_ has quit (Read error: 110 (Connection timed out)). 07:49:02 -!- Slereah_ has joined. 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:02:45 -!- Slereah has quit (Read error: 110 (Connection timed out)). 08:03:03 -!- Slereah has joined. 08:13:00 -!- Slereah_ has quit (Read error: 110 (Connection timed out)). 09:19:12 -!- Mony has joined. 09:20:06 plop 09:28:09 -!- cherez has joined. 09:28:11 -!- cherez has quit (Remote closed the connection). 09:28:37 -!- cherez has joined. 09:28:39 -!- cherez has quit (Client Quit). 09:28:46 -!- cherez has joined. 09:28:47 -!- cherez has quit (Client Quit). 09:28:53 -!- cherez has joined. 09:28:55 -!- cherez has quit (Client Quit). 09:29:10 -!- cherez has joined. 09:29:13 -!- cherez has quit (Client Quit). 09:29:29 -!- cherez has joined. 09:29:31 -!- cherez has quit (Remote closed the connection). 09:29:56 -!- cherez has joined. 09:29:59 -!- cherez has quit (Client Quit). 09:30:27 -!- cherez has joined. 09:30:29 -!- cherez has quit (Remote closed the connection). 09:32:01 -!- cherez has joined. 09:32:08 -!- cherez has left (?). 09:38:46 ew mony 09:38:48 dont you plop on us 09:38:49 :| 09:39:01 .. 09:39:02 why ? 09:39:08 its disgusting! 09:39:51 for me, it's just a word without any meaning 10:04:47 -!- andreou has joined. 10:10:52 -!- andreou has quit ("leaving"). 10:11:25 -!- andreou has joined. 10:31:49 -!- kar8nga has joined. 10:35:25 -!- neldoreth has joined. 10:50:41 -!- dbc has quit (Read error: 60 (Operation timed out)). 11:01:17 -!- neldoreth has quit ("leaving"). 11:01:42 -!- neldoreth has joined. 11:16:07 -!- FireFly has joined. 11:21:41 -!- BeholdMyGlory has joined. 11:27:47 Meh, #esoteric-style spam 11:27:48 This is yoour penis: 8--o 11:27:49 This is yoour penis on drugs: 8=====O 11:29:28 -!- KingOfKarlsruhe has joined. 11:30:05 -!- neldoret1 has joined. 11:44:00 -!- neldoreth has quit (Read error: 113 (No route to host)). 11:56:18 FireFly: you talking about viagra? 11:57:05 I've deleted the spam, but I guess it was something similar 11:57:22 Reminds me of the ASCII weapons of #esoteric 12:00:12 -!- Slereah_ has joined. 12:06:46 -!- Slereah has quit (Read error: 110 (Connection timed out)). 12:14:18 -!- kar8nga has quit (Read error: 60 (Operation timed out)). 12:23:10 -!- Slereah_ has quit (Read error: 110 (Connection timed out)). 12:34:00 -!- Mony has quit ("Quit"). 12:37:18 -!- lifthras1ir has changed nick to lifthrasiir. 13:18:53 -!- KingOfKarlsruhe has quit (Remote closed the connection). 13:19:20 -!- neldoret1 has quit (Client Quit). 13:19:25 -!- neldoreth has joined. 13:34:29 -!- Slereah has joined. 13:37:18 hello 13:38:22 -!- neldoreth has quit (Remote closed the connection). 13:38:27 -!- neldoreth has joined. 13:49:16 hello all 13:51:12 -!- neldoreth has quit ("leaving"). 13:51:16 -!- neldoreth has joined. 14:07:24 * AnMaster pushes lots of changes to cfunge 14:16:39 Yay, bzr assumes that gethostname() returns ASCII 14:17:53 https://bugs.launchpad.net/bzr/+bug/193089 14:18:50 well, hello AnMaster and Deewiant 14:19:14 Oh, Mr. Pyfunge, hi :-) 14:19:21 haha 14:19:34 hi 14:19:55 * AnMaster is writing changelog for ~60 new revisions atm 14:20:18 i forgot the bouncer... :S 14:20:19 Deewiant, btw I'm down to 0.036 seconds wall time for mycology when using a clean environment now. :) 14:20:45 * AnMaster wonders if lifthrasiir can beat that in Pyfunge 14:20:49 or is that not the goal? 14:20:58 Not in Python it isn't ;-P 14:21:03 ah true 14:21:12 Pyfunge is the next-slowest interpreter after Language::Befunge, I think 14:21:18 At least of the ones that pass Mycology 14:21:21 Possibly of all 14:21:24 AnMaster: if that's goal i must speed up 100x or 200x 14:21:37 lifthrasiir, heh ok. Not realistic in python I guess 14:21:50 Deewiant, that is using fully buffered output though (the -b switch) 14:22:00 That's cheating 14:22:01 I think it is slightly more with the default life buffered 14:22:12 Deewiant, no it isn't. The specs doesn't forbid it 14:22:22 "Most Significant Bit 4 (0x10): high if unbuffered standard I/O (like getch()) is in effect, low if the usual buffered variety (like scanf("%c")) is being used. " 14:22:27 Deewiant, as long as I fflush() before reading any user input 14:22:33 I submit that "the usual buffered variety" is line buffered for terminals 14:23:00 Deewiant, scanf() isn't intrinsically line buffered 14:23:11 Deewiant, also I'm talking about output not input 14:23:23 input is line buffered as usual 14:23:24 No, but using it on approximately all terminals will be 14:23:35 And that also says I/O, the examples just happen to be input 14:24:11 AnMaster: i just optimized an important class to get 2-3x speed-up, but yet slower... 14:24:18 Deewiant, err no, it doesn't depend on terminal. It depends on setvbuf(), or implementation defined default if app didn't call it 14:25:03 (myco takes 25-30s with some fingerprint enabled, and now takes 10s....) 14:25:05 lifthrasiir, Well you can't seriously expect to beat C with some inline asm for performance critical parts (with pure C fallbacks for other compilers/platforms of course) with Python can you? 14:25:17 lifthrasiir, oh, without fingerprints it is even less of course 14:25:40 of course not all fingerprints are implemented, so it should be slower... :S 14:25:54 AnMaster: Yes, and the defaults for approximately all libraries are that if it's a terminal it's line buffered 14:25:59 well I don't implement them all either 14:26:26 Deewiant, that is true, which is why I only enable fully buffered with -b passed 14:27:11 $ env -i bash --noprofile --norc -c 'time ./cfunge -bF ../../trunk/mycology/mycology.b98 >/dev/null' 14:27:11 real 0m0.019s 14:27:11 user 0m0.011s 14:27:11 sys 0m0.007s 14:27:14 what about that? 14:27:15 :P 14:27:37 -F disables all fingerprints 14:28:06 woah. 14:28:56 is there any kind of runtime optimization, aside from bottleneck code? 14:29:00 if outputting to terminal and without -b it is closer to 0.070 seconds. But that isn't really odd. 14:29:09 lifthrasiir, you mean JITing or such? No 14:29:26 JITing doesn't work well with threads anyway 14:29:34 i agree. 14:29:51 lifthrasiir, jitfunge (which fizzie is working on) will likely be even faster once it is done 14:29:53 Hmm, so I guess you're around 2-3 times as fast as CCBI? 14:30:07 Deewiant, well CCBI is much slower here 14:30:14 Something like 0.1 to 0.2 seconds, right? 14:30:18 maybe you have a faster computer 14:30:18 Or do I misremember 14:30:19 let me check 14:31:13 give me segmentation fault huh 14:31:14 * AnMaster looks 14:31:18 heh 14:31:26 Testing fingerprint SCKE... loaded. 14:31:26 UNDEF: 0"1.0.0.721"H pushed 2130706433 14:31:26 GOOD: P pushed 0 for socket without data 14:31:26 bash: line 1: 26252 Segmentation fault ../../trunk/other/ccbi/ccbi_linux/ccbi ../../trunk/mycology/mycology.b98 14:31:27 like that 14:31:35 Which version? 14:31:47 Deewiant, 1.0.13 it seems 14:31:50 maybe it is outdated 14:31:59 1.0.19 was released in january :-P 14:32:05 ok 14:32:13 And I think 1.0.14 fixes that one, looking at the changelog 14:33:00 ok last version now segfaults in another place 14:33:01 GOOD: A claims 2008-04-01 minus 32 days is 2008-02-29 14:33:01 GOOD: D claims the number of days from 2008-04-01 to 2008-02-29 is -32 14:33:01 bash: line 1: 26320 Segmentation fault ../../trunk/other/ccbi/ccbi_linux/ccbi ../../trunk/mycology/mycology.b98 14:33:12 Heh 14:33:25 Deewiant, real 0m0.516s for reaching that point of segfault btw 14:33:46 Hmm, that slow 14:34:02 Is that a repeatable result? 14:34:06 Deewiant, but this is not 100% fair anyway, my cfunge was compiled for x86_64, while your is just 32-bit. Though that is not the only reasonj 14:34:09 reason* 14:34:11 Or wait 14:34:12 the segfault? yes 14:34:17 I meant the time 14:34:18 GOOD: A claims 2008-04-01 minus 32 days is 2008-02-29 14:34:18 GOOD: D claims the number of days from 2008-04-01 to 2008-02-29 is -32 14:34:18 bash: line 1: 26332 Segmentation fault ../../trunk/other/ccbi/ccbi_linux/ccbi ../../trunk/mycology/mycology.b98 14:34:22 that is what I get 14:34:24 it is from DATE 14:35:06 the number in front of the Segmentation, is the PID I think 14:35:13 Yes, it is 14:35:29 I wonder what on earth could segv in DATE, there's practically nothing there :-P 14:35:45 What's the test at that point? 14:35:47 Deewiant, search me. gdb or valgrind both doesn't work properly on D source 14:35:50 that's most recent version? 14:35:59 Probably if he said it is ;-) 14:36:14 lifthrasiir, I just downloaded CCBI a few minutes ago from http://users.tkk.fi/~mniemenm/files/befunge/interpreters/ccbi/ccbi_linux.zip 14:36:18 hmm... i have to install tango in mac os x... 14:36:32 since I just can't build it myself 14:36:34 You might want to get LDC if you want to build it 14:36:40 D is the most messy language to get working 14:36:57 AnMaster: LDC is pretty much unzip, cmake, and go. 14:37:11 Deewiant, really? What about the stdlib thing? 14:37:17 LDC comes with Tango. 14:37:25 Deewiant: assuming LLVM is installed, right? 14:37:27 Deewiant, and if you need the other one for some program? 14:37:37 lifthrasiir: Yep. 14:37:40 lifthrasiir, well I have llvm installed in ~/local/llvm-svn 14:37:53 AnMaster: Then you get tangobos. 14:37:53 svn head as of ~1 week ago 14:38:16 Deewiant, short for tango-bossanova? ~ 14:39:17 anyway Deewiant how do you mean "what test is run"? 14:39:19 how would I check? 14:39:31 -!- kar8nga has joined. 14:39:33 AnMaster: You have a working interpreter, right? 14:39:44 Deewiant, yes, called cfunge indeed 14:39:56 I think I implmenet DATE 14:40:45 huh I get some BAD in cfunge for DATE suddenly, wth 14:40:49 :-D 14:40:50 it worked this morning 14:41:11 Deewiant, ^ 14:41:14 I think DATE just doesn't like us 14:41:21 Deewiant, it makes no sense 14:41:24 DATE hate 14:41:32 err 14:41:36 it works in another build 14:41:46 just -O0 works... 14:41:50 -O1 or above doesn't 14:41:52 ARGH! 14:42:09 so... I'll have to go debugging GCC now I guess 14:42:25 :-D 14:42:25 GOOD: A claims 2008-04-01 minus 32 days is 2008-02-29 14:42:25 GOOD: D claims the number of days from 2008-04-01 to 2008-02-29 is -32 14:42:25 GOOD: T claims the 366th day of 2008 is 2008-12-31 14:42:25 GOOD: T reflects given day 400 of 2008 14:42:28 Deewiant, anyway that is it ^ 14:42:39 Okay, so T probably fails 14:42:46 what was T now again? 14:43:03 Looks like it's given a year and a doy and it gives the date 14:43:10 Deewiant, I suggest reproducing it locally 14:44:18 I don't have D properly set up so it'll take some work 14:44:31 But yeah, I'll have to take a look at some point 14:45:26 Deewiant, I have to add a notice to the README about mycology test of R in FILE is broken. I plan to release a new cfunge version very soon 14:45:36 as in 1-2 days 14:45:48 geez, it needs LLVM 2.5... 14:46:08 * lifthrasiir tried to compile LDC with LLVM 2.3 (maybe) 14:46:33 lifthrasiir, Btw if you compile LLVM manually, avoid using old GCCs. At least GCC 4.1.2 miscompiles LLVM. 14:46:44 Silently miscompiling, resulting in runtime bugs 14:46:49 Gotta love broken compilers <3 14:47:28 Deewiant, oh yes. I wouldn't have noticed if I didn't bootstrap llvm-gcc. 14:47:36 stage1 was broken 14:47:47 thus unable to compile stage2 14:48:04 failed with an assert() 14:48:10 * lifthrasiir gave up 14:48:14 -!- oerjan has joined. 14:48:31 lifthrasiir, what? compiling llvm isn't hard. Just time consuming 14:48:38 which is why I leave it running in the background 14:48:45 I love multitasking OS ;P 14:48:55 that's exactly why I gave up. :p 14:49:12 lifthrasiir, it isn't really an issue. And I don't even have multi-core 14:49:15 I just leave it running 14:49:41 hi oerjan 14:50:07 hi AnMaster 14:50:36 I know, but I have other things to do besides funge things ;) 14:51:05 lifthrasiir, I use llvm for other stuff too 14:51:39 Deewiant, what is the version specification for mycology? I have no idea how you would refer to a specific version of it 14:51:45 as in the current last one with broke FILE check 14:51:53 AnMaster: 1.0.x 14:52:07 Deewiant, mycology? Not CCBI.. 14:52:12 Oh, Mycology 14:52:18 Just use the release date 14:52:26 It's in the readme 14:52:39 hm DMM left out the obvious tvtropes link today 14:53:05 maybe he has linked it before 14:55:57 oerjan, what would that obvious link be? 14:56:36 http://tvtropes.org/pmwiki/pmwiki.php/Main/MeanwhileInTheFuture 14:56:53 He has 14:58:49 "The actual phrase is only ever used seriously in Fan Fic, since the only people who can say it with a straight face generally can't get published." :D 15:02:11 heheh 15:23:17 almost 80 lines in Changelog for this release. With the major important changes. 15:23:18 heh 15:23:26 wait more 15:23:36 85 even 15:24:36 -!- revcompgeek_ has joined. 15:29:18 Deewiant, http://bzr.kuonet.org/cfunge/trunk/annotate/628?file_id=changelog-20080319201658-czs9f8hg18hz0xo7-2 15:29:28 lifthrasiir, you may be interested too 15:32:11 With mycology, RCS's 3DSP test and some tests included with the cfunge source I now have about 97% coverage of the source according to gcov. Most of the rest is code handling malloc() returning NULL and such. Branch coverage around 85% IIRC. 15:32:40 (tested a few days ago, don't have the output files around any more due to slightly typoed rm command) 15:32:49 -!- revcompgeek_ has left (?). 15:40:38 -!- revcompgeek has quit (Read error: 110 (Connection timed out)). 15:46:49 -!- Mony has joined. 15:53:42 lifthrasiir, did you say you used OS X? 15:57:02 if yes I would like to ask a favour... If you have cmake 2.6 (or later) installed, could you try building http://kuonet.org/~anmaster/tmp/cfunge_r631.tar.bz2 on OS X? I made some changes in this version that I'm not sure will work on OS X you see.. 16:06:06 -!- Dewio has joined. 16:06:21 "Working on" is a bit over-optimistic term in this context. 16:06:48 fizzie, could you check http://kuonet.org/~anmaster/tmp/cfunge_r631.tar.bz2 on your OS X thingy? If you have it around. 16:07:53 I did find one bug in the build system or possibly in FreeBSD headers, not sure yet. If cmake fails with a message about netinet/tcp.h, please comment out the line "CFUNGE_REQUIRE_INCLUDE(netinet/tcp.h)" in CMakeLists.txt. I'm working on figuring it out atm. 16:08:26 Guess so. It's inside our TV stand (the box we were using for DVB-watchery gave up the magic smoke) but there's always SSH. 16:08:40 heh 16:09:36 For the record, I have "cmake version 2.6-patch 0" on that thing. 16:09:36 fizzie, the main reason I'm wondering about OS X is that I did some changes to the build system regarding linker flag handling. I just hope the detection of supported linker flags works as it should on OS X... 16:09:46 fizzie, that should be new enough 16:12:54 aha, cmake fails to include before 16:13:05 -!- oklowob has quit ("PJIRC @ http://webirk.dy.fi"). 16:13:08 Well, here cmake/ccmake did not complain or anything, and "make" finished the build just fine. 16:13:16 -!- oklowob has joined. 16:13:18 fizzie, nice :) 16:13:25 There were two warnings from lib/genx/genx.c, though. 16:13:30 fizzie, expected. 16:13:39 about discarding const iirc 16:13:53 Yes. Well, "discards qualifiers"; I guess it's usually const. 16:14:04 yes 16:17:03 AnMaster: well i tested it and it works well, though mycology reports one BAD (1R reflected). 16:17:13 lifthrasiir, known bug in mycology 16:17:17 Deewiant just hasn't fixed it yet 16:17:27 thanks a lot :) 16:17:28 well then works correctly ;) 16:18:47 -!- Dewi has quit (Read error: 101 (Network is unreachable)). 16:42:31 01:36 bsmntbombdood: ....plan 9 doesn't do dynamic linking? 16:42:43 i said that! 16:44:19 Yes. 16:44:21 It's a feature. 16:44:28 (That it doesn't.) 16:45:37 that's stupid 16:45:47 No, it's not 16:47:51 yes it is 16:48:03 talking to you is so pointless. 16:48:25 ehird, interesting, how does it justify it? I can see there are reasons to avoid dynamic linking certainly, as well as advantages with it. 16:48:46 There are no tangible advantages. Did you click my link? No? Do so. Or don't because the server is down actually. 16:49:06 * AnMaster looks for the link 16:49:18 It's not on google cache or wayback. 16:49:24 ehird, I can't see it? I unignored you like 15 minutes ago or so 16:49:30 so that may be why I didn't see the link 16:49:37 My timestamp: '01:36' 16:49:40 It is 15:48. 16:49:43 Take a guess. 16:49:50 I guess I ignored you back then 16:50:06 01:36 bsmntbombdood: ....plan 9 doesn't do dynamic linking? <-- first line after unignoring 16:50:15 01:36 16:50:17 15:49 16:50:20 it was HOURS AGO 16:50:25 surely this isn't hard for you to understand 16:51:19 ehird, you sent that line mentioning what bsmntbombdood said at 01:36 at the time 15:41:30 in your timezone. And yes I know you commented on something way before 16:51:22 http://www.plan9.bell-labs.com/wiki/plan9/why_static/ is a broken link 16:51:28 ah that is the link 16:51:31 Deewiant: I said the server is down. 16:51:42 So you did. 16:52:27 is pi^e useful in any way? 16:52:57 oklowob: being roughly 22 1/2? 16:53:23 i'm not sure what you're implying 16:53:47 you may consider that a useful property 16:54:03 it's not that close to 22.5, and 22.5 isn't that useful 16:54:04 Yes, it's a useful approximation for 22.5 16:54:23 oklowob: .459 16:54:25 i already got tons of useless answers on #math 16:54:32 approx -> .46 16:54:35 approx -> .5 16:55:00 well admittedly it's .4591 16:55:06 my point exactly, you can't get a much worse approximation 16:55:12 But .459157! 16:55:13 oklowob, why do you think it would be useful? Any specific reason? 16:55:22 it's listed in schaum's mathematical handbook 16:55:27 72 is not a very good approximation for 22.5. 16:55:28 in "special constants" 16:55:42 fizzie: ^ = exp, sillay 16:55:48 oklowob, heh 16:56:06 ehird: Yes, I just mentioned 72 since oklowob said you couldn't get worse approximations. 16:56:08 fizzie: i wouldn't classify it as an approximation, since it doesn't get rounded to it using any common rule. 16:56:14 hm... 16:56:23 o 16:56:34 ehird, what operation did you think fizzie did instead of exp? 16:56:48 xor 16:56:49 or sht 16:56:50 sth 16:57:29 Does xor on a non-integer even make sense? 16:57:51 * AnMaster tries to figure out what it would do... 16:58:24 does it make sense on an integer? 16:59:04 IEEE, bitchez. 16:59:11 it's an operation on the polynom (mod 2) you can represent with a binary number 16:59:20 on numbers it makes no sense 16:59:29 bitwise operations are pretty stupidz as far as mathsssss goes 16:59:35 no they aren't 16:59:43 -!- ais523 has joined. 16:59:55 ehird, agreed 17:00:04 hai ais523 17:00:05 then you'd be wrong too 17:00:06 ais523, hi ais523 17:00:07 hi 17:00:17 * ais523 wrote another Enigma level 17:00:22 oh? 17:00:29 it's rather more action-oriented than the others, because I wanted to please AnMaster 17:00:30 let me paste it 17:00:43 ais523, and I merged several API breakage changes back into cfunge trunk. Had to be done 17:00:52 that's fine 17:01:05 AnMaster: shit, all 1 users of your API will have to change their code. 17:01:10 ais523, you may want to look at http://bzr.kuonet.org/cfunge/trunk/annotate/head:/ChangeLog the list is rather long 17:01:13 in edge-case circumstances. 17:01:16 that's disasterous 17:01:37 ehird: I'm the only person who uses the TAEB API too, I think 17:01:41 well, two now, me and shabble 17:01:45 ehird, err. It changes the parameter count of some core functions. And renames some data type (to make the API more consistent) 17:01:49 ais523, huh? 17:01:53 and I'm forever moaning about API changes in there, although it's for a good cause 17:01:59 AnMaster: shit shit shit! your 1 users will sue you for everything you've got 17:02:05 how can you break their enterprise applications 17:02:12 ais523: I will be your lawyer. 17:02:13 http://filebin.ca/gexxmq/ais52306_1.xml anyway 17:02:15 ah TAEB.. 17:02:21 ais523, what sort of level is it? 17:02:27 AnMaster: a speed level 17:02:32 ah this could be interesting 17:02:33 with a bit of intelligence and knowledge too 17:03:24 * oklowob wants a database of useful reals 17:03:27 what does the ais52306_1.xml mean? I mean the first bit is your nick, but the 06_1? 17:04:36 AnMaster: there's a filename convention 17:04:48 in this case, it's the sixth level I've started creating (although the third I've distributed) 17:04:52 and the _1 goes up if I make a breaking change 17:04:59 heh 17:05:02 to a released version 17:05:02 breaking change :D 17:05:22 ais523, as in changes what max time could be or? 17:05:26 or min time rather 17:05:40 no, that's a change to score compatibility 17:05:49 yes, isn't that a breaking change? 17:05:55 or what is a breaking change then 17:05:56 the revision number, that's the _1, goes up if you change the nature of the level 17:06:10 as in, it looks substantially different, it's a different shape, or a different concept, or whatever 17:06:19 ais523, but not score compat? 17:06:30 well, changing the revision generally changes score compat too 17:06:37 but you can change score compat without changing the revision 17:06:42 say if you changed the friction of the floor 17:06:46 mhm 17:06:48 that would change score compat but not revision number 17:06:59 IMO that would be a breaking change 17:07:06 oklowob: There's that old joke-"proof" for the interestingness of all natural numbers, but you must've heard that one. And interesting is not really the same as useful. 17:07:32 fizzie, hm? I don't think I heard it 17:07:44 I have* 17:07:50 fizzie: yes, but you can't apply that to reals 17:08:08 AnMaster: trivial 17:08:12 fizzie: the proof works for usefulness too 17:08:13 unless you think there's nothing useful about the lowest useless number 17:08:18 AnMaster: the first uninteresting number is interesting 17:08:22 in that it's the first uninteresting number 17:08:27 hah 17:08:28 therefore, it's not uninteresting, it's interesting 17:08:33 therefore, all numbers are interesting. QED 17:08:33 an interesting real is a number for which there is a turing machine that outputs their digits 17:08:38 hehe 17:08:52 oklowob: err isn't that every real 17:08:56 mathematically speaking, actually i just want the ones that have actually been used 17:08:58 ehird: no 17:09:00 :| 17:09:01 k 17:09:33 I'm not sure how useful even the lowest useless number is. 17:09:51 yeah 17:09:53 fizzie, wouldn't that be -aleph_0 ? 17:09:59 or something 17:10:00 well it's useful as an example of a useless number 17:10:12 AnMaster: that's useful is it not 17:10:19 ehird, well true. 17:10:20 also 17:10:25 does -aleph_0 even make any goddamn sense? 17:10:26 Well, talking of natural numbers here, to avoid that. 17:10:30 ehird, unknown 17:11:07 why would negative infinity not make sense? 17:11:19 err do you know what aleph 0 is 17:11:59 ehird, one type of infinite. To be specific it is related to the set of all natural numbers (iirc) 17:12:12 x.x 17:12:24 I may be wrong 17:12:53 ehird, I think the word I'm looking for instead of "related" is "cardinality" 17:13:15 That sounds distinctly like you looked it up on wikipedia 17:13:48 ehird, no I didn't. I just didn't remember it at first 17:14:10 which part sounded like wikipedia? 17:14:28 16:11 AnMaster: ehird, I think the word I'm looking for instead of "related" is "cardinality" 17:14:32 after a long delay 17:15:27 ehird, yes I was grepping /usr/share/dict/words for the right word. I remembered it was something like "cardinal" but not what the ending was 17:15:52 I think someone here categorically defined that all interesting sets have a cardinality of at most ℵ₀. 17:16:23 fizzie: therefore my "doesn't work for reals" comment 17:16:35 fizzie: reals are uninteresting? :D 17:16:37 ehird, I know what I was looking for was the right word to mean "size of set" basically. Just "size of set" wasn't the correct term... 17:16:39 also fuck you and your unicode 17:16:42 well not therefore, but same thing 17:16:52 ehird, that unicode renders fine here? 17:17:00 when did I say it didn't 17:17:09 well i assume he meant that's the biggest kinda of set all of whose members can be interesting 17:17:11 why did you say "fuck you and your unicode" then? 17:17:16 it sounded like you didn't like it 17:17:54 not liking it isn't the same as saying it doesn't render well on your computer 17:17:57 That subscript-0 is a bit silly in that at least here it doesn't go lower than the baseline of other text. 17:18:08 oklowob, what other reason would he have for not liking it? 17:18:12 i was implying that fizzie was pretentious for using fancy schmancy unicode to represent "N0" or "aleph0" 17:18:27 fizzie, here it goes about 2 pixles below or so 17:18:35 AnMaster: well it might not render well on his computer 17:18:52 ehird, heh 17:18:54 you see i'm just being pedantic 17:19:13 urgh one whole page of special constants to memorize 17:19:18 saying \aleph_0 might be more interesting 17:19:28 oklowob, why do you need to memorize them? 17:19:36 I just happen to think that since someone went and defined all those codepoints, I might as well use them. 17:19:39 because i don't remember them yet 17:19:49 how's the enigmising going? Anyone tried the level yet? 17:20:10 ais523: sadly no time for that 17:20:12 ais523, yes and I gave up, too stressful. 17:20:15 oklowob: ah, o 17:20:17 *ok 17:20:18 but o too 17:20:28 after memorizing these, need to start reading about my processor architectures 17:20:28 ais523: lol pleasing AnMaster is impossible I think 17:20:28 AnMaster: "stressful"? 17:20:34 you need a relaxing action level. 17:20:35 ais523: oko 17:20:39 it's not like it's obvious whether you've won or not after 40 seconds 17:20:40 oklowob, ok... I meant: why do you need to remember those constants? 17:20:40 oklowob: okoko 17:20:48 *not obvious 17:21:32 AnMaster: it's an axiomatic need 17:21:37 i cannot break it down any further 17:21:39 ais523, I think I mentioned before I like levels that are full of items to use and such. Exploring and such 17:21:44 oklowob, ah... 17:22:00 i can just say something gay like "why do swallows breathe" 17:22:18 oklowob: to verify that they're unladen 17:22:32 AnMaster: I hate those levels, you play for 40 minutes and then one slip and you die, and you have to start again 17:23:23 ais523, so you hate nethack too? You play for weeks, and then one Arch-Lich... 17:23:28 ais523: well okay, maybe a safer gay philosophy question would be something like "why do people want to stay alive" 17:23:52 AnMaster: but the games are always different 17:24:07 does it make sense on an integer? 17:24:24 oklowob, ok that is true, but you could randomise enigma levels using it's scripting language. 17:24:27 xor = nimber addition, which makes sense not just on integers but also on transfinite ordinals 17:24:46 oerjan: logical xor is addition 17:24:50 binary isn't 17:24:53 on numbers 17:24:59 huh? 17:25:07 _nimbers_ 17:25:12 oerjan, "nimber"? 17:25:17 oh sorry 17:25:21 i thought it was a number 17:25:23 what's a nimber 17:25:27 equivalence classes of nim games 17:25:30 right 17:25:38 well anyway it's polynomial addition too isn't it 17:25:50 when operating mod 2 17:25:51 basically every nim game is equivalent to a single heap of a certain size 17:26:10 well yes. ordinal numbers have base expansions 17:26:22 oerjan: so it's an infinitiary number? 17:26:23 with infinite bases, even 17:26:36 polynomials are basically that 17:26:48 of course not so simple when you start taking modulos but anyway 17:26:53 well an ordinary finite nim game gives a finite heap when you add (i.e. xor) 17:27:00 nimber 17:27:02 that's hot 17:27:24 http://en.wikipedia.org/wiki/Sprague%E2%80%93Grundy_theorem 17:27:31 also, bus -> 17:28:00 have a bus. 17:28:08 -!- oerjan has quit ("leaving"). 17:30:23 What was the name of that golf programming page? 17:30:34 golf.shinh.org? 17:30:39 http://golf.shinh.org http://codegolf.com are the too main onces 17:30:41 *ones 17:30:55 codegolf is updated approximately 4 times in a blue moon 17:31:03 Ah, it was the shinh one I had in mind 17:31:05 thanks :D 17:31:35 http://golf.shinh.org/p.rb?Walk+the+line 17:31:37 This is my problem 17:31:40 You know what I hate? 17:31:47 I hate that 90% of the solutions are cheats. 17:31:49 It's killing anagolf. 17:31:55 -!- neldoreth has quit ("Lost terminal"). 17:31:55 agreed 17:32:04 That's the meal of the day there all the time, just embed embed embed. No skill, no fun, shinh should ban them 17:32:08 it's very hard to propose a puzzle where a legit solution is shorter than a cheat 17:32:15 AnMaster: DATE doesn't segfault here 17:32:17 personally I favour a technological solution 17:32:22 Deewiant, mhm. 17:32:24 like codegolf's randomly generated puzzles 17:32:28 Deewiant, let me try gdb then 17:32:30 although it would be harder to code in 17:32:39 Programmers are obsesesd with technological solutions 17:32:53 well, it's a programming website, what do you expect? 17:33:06 (gdb) bt 17:33:06 #0 0x080fec41 in ?? () 17:33:06 #1 0x00000001 in ?? () 17:33:06 #2 0x00000001 in ?? () 17:33:13 Deewiant, yay for no debugging symbolks 17:33:18 *symbols 17:33:19 AnMaster: quite 17:33:27 I might be able to get you a debugging binary 17:33:32 64-bit, to boot 17:33:37 AnMaster: I seriously doubt 0x00000001 is in one of your code pages anyway 17:33:39 -!- kar8nga has quit (Read error: 60 (Operation timed out)). 17:33:43 ais523, true 17:33:48 ais523, no frame pointer I guess 17:33:51 so that looks like stack corruption to me 17:33:57 ais523, or no frame pointer? 17:34:14 AnMaster: you can get a debug backtrace even without a frame pointer 17:34:20 if you have enough information about the code, and gdb does 17:34:28 ais523, no debugging symbols though 17:34:33 and if there wasn't enough, it wouldn't even be able to give the address 17:34:34 gdb said it at load 17:34:40 "no debugging symbols found" 17:34:46 -!- neldoreth has joined. 17:35:57 AnMaster: Try http://88.114.248.232/ccbi.lzma 17:36:07 (I assume you can decompress that?) 17:36:08 -!- kar8nga has joined. 17:36:14 yeah 17:36:40 It's 7 megs big so I guess it has some info ;-P 17:36:42 Deewiant, no segfault 17:36:47 Well yay 17:36:57 Deewiant, but the one you uploaded before was 32-bit 17:37:01 while this one is 64-bit 17:37:03 So I guess I can just upload a new binary then :-P 17:37:09 Yeah, you can try a 32-bit one too 17:37:13 One moment 17:37:17 k 17:37:53 AnMaster: Same file 17:38:28 no segfault 17:38:31 Heh 17:38:47 So I guess I'll have to roll out 1.0.20 today :-P 17:38:56 Deewiant, maybe mycology update too? 17:39:14 For the FILE thing at least, yes, since I've already committed the fix to CCBI ;-P 17:39:20 Deewiant, I ran valgrind on that one... "==6989== ERROR SUMMARY: 11900 errors from 28 contexts (suppressed: 6 from 1)". Just wow. 17:39:28 heh 17:39:32 things like: 17:39:33 ==6989== Conditional jump or move depends on uninitialised value(s) 17:39:33 ==6989== at 0x80A418C: _D3gcx3Gcx4markMFPvPvZv (in /home/arvid/src/cfunge/trunk/mycology/ccbi) 17:39:48 no idea how to unmangle that one 17:39:48 So the GC is broken. What else is new? ;-P 17:40:00 gcx.Gcx.mark and the rest is type info 17:40:09 Can't read the types myself, I think the v at the end means it returns void 17:40:12 Deewiant, lots of other GC funcs too 17:40:15 And Pv might mean pointer to void 17:40:41 ==7004== More than 10000000 total errors detected. I'm not reporting any more. 17:40:45 :-D 17:40:46 first time I ever seen that one 17:40:52 ==7004== Final error counts will be inaccurate. Go fix your program! 17:41:05 more than 10 million errors? How? 17:41:06 ==7004== Rerun with --error-limit=no to disable this cutoff. Note 17:41:07 ==7004== that errors may occur in your program without prior warning from 17:41:07 ==7004== Valgrind, because errors are no longer being displayed. 17:41:12 ais523, broken GC it seems 17:41:31 Deewiant, that was the 64-bit version btw 17:41:40 Yeah, I can see those too 17:42:08 But I think it might make sense since it's from scanStaticData 17:42:19 And those scan* functions in general 17:42:34 I mean, of course they can run into uninitialized data 17:43:19 But whatever, I'm off to sauna -> 17:43:23 hrh 17:43:24 heh* 17:45:32 -!- kar8nga has quit (Remote closed the connection). 17:52:46 ais523, err.. your IFFI test suite thing doesn't work 17:52:53 in what wat? 17:52:55 *way? 17:52:58 docs say last line should be XVIII 17:53:04 but I get XV 17:53:06 run with -a 17:53:14 ./iffit1: can't grok -a 17:53:17 well, compile with -a 17:53:25 ah that helped yes 17:53:26 in addition to the other switches 17:53:34 that last bit can only be tested with -a given 17:54:26 right, then I'll soon push some IFFI fixes for current cfunge trunk (which will be released soon, working on some build system issues on *BSD atm) 17:54:29 AnMaster: as it happens, I'm trying to get C-INTERCAL finished off atm 17:54:38 that too heh 17:54:40 for a beta release on April 1 17:54:56 what do you think of 0.-2.0.29 as a version number? 17:54:58 ais523, I was planning Mars 31 17:55:04 for cfunge 17:55:07 just becase 17:55:20 ais523, err that is CLC style isn't it? 17:55:21 why don't you use english dates when talking in english 17:55:37 afk urg 17:55:50 what 17:55:57 ais523: i have used such version once, e.g. starting at 0.9.-999, ... 17:56:18 version scheme* 17:56:46 but i never heard of negative minor version... hmm, 17:59:27 -!- ais523_ has joined. 17:59:29 ehird: "u r gay" 17:59:32 -!- ais523 has quit (Nick collision from services.). 17:59:34 -!- ais523_ has changed nick to ais523. 17:59:44 oklowob: o 17:59:48 ehird: oko 17:59:55 okoffffff 18:00:18 -!- ais523_ has joined. 18:03:29 I must never use two OSes at the same time ever again. 18:03:37 I keep using features from one in the other. 18:07:30 Something in Windows that doesn't work in OS X? 18:08:10 hmm... there are a few things that work in windows xp/vista but not os x, mostly ui paradigms 18:08:24 for instance, going to a window via the task bar using opening-order memory 18:08:35 in os x / windows 7, you'd use the dock instead which works differently 18:11:54 Deewiant: os x / plan9 18:12:03 Why Plan 9? 18:12:04 well, those are very different I imagine 18:12:09 although they have some things in common 18:12:12 Deewiant: Plan 9 is good. 18:12:15 ais523: er, they do 18:12:15 ? 18:12:22 ehird: So no particular reason? 18:12:23 I mean apart from unix heritage under the seams 18:12:30 Deewiant: It's good and I like to use it. 18:12:31 ehird: well, they're the two OSes that I'd think are most likely to have a global spellchecker 18:12:33 Is that a good reason? :P 18:12:39 as opposed to a separate spellchecker in each application 18:12:46 am I right? 18:12:51 ais523: plan 9 doesn't really have a global spellchecker, it's manual (ie you pipe it to spell) 18:12:54 but same sort of thinkg 18:12:58 yep 18:13:06 os x has it baked into the text input controls 18:13:43 os x is sort of like an inside-out version of plan 9 ui-wise, in a way 18:13:51 in plan 9, you have wrapper programs, and pipes, that process data from things 18:14:01 in os x, each program uses libraries which make them all work the same way, from inside 18:14:07 it's not quite so simple to spellcheck a document in acme 18:14:18 wait, maybe it is 18:14:27 ehird: How well do programs work in it? I imagine you can't find many binaries but POSIX stuff generally compiles and runs as you'd expect? 18:14:37 Deewiant: No, it is not posix compatible. 18:14:40 Deewiant: I think POSIX stuff would probably need porting 18:14:41 And it does not use X11. 18:14:45 ais523: no, there is APE 18:14:47 Doesn't it emulate POSIX somehow/ 18:14:47 a posix port environment 18:14:50 but you generally don't use it 18:14:51 s:/:?: 18:14:52 Yeah, that 18:14:53 Oh 18:14:59 because posix programs aren't very, well, plan9. 18:15:00 ehird: does it translate pathnames? 18:15:05 ais523: no 18:15:15 afaik 18:15:57 well, even if it isn't POSIX, it would be nice to get C-INTERCAL running on Plan9 18:16:09 after all, I got it running on DOS and that isn't POSIX either 18:16:19 ais523: To get it working "plan9y" you'd have to change, for instance, every call of printf 18:16:24 to use Bio and the unicode Rune sytem 18:16:25 system 18:16:32 (it has stdio, though) 18:16:46 there isn't a whole lot of I/O in C-INTERCAL, and what there is is confined to a few functions 18:17:10 except for the big main() glop, but AnMaster refactored that a while back so it isn't as bad nowadays 18:17:13 ais523: I think it also has its own replacement for the string.h functions 18:17:24 and also, its own argument parsing facility 18:17:27 (no optparse) 18:17:28 err 18:17:29 no getopt 18:17:42 please tell me it uses the new string-handling functions from C94 18:17:42 ehird: What, ANSI C doesn't work by default? 18:17:45 which nobody cares about 18:17:49 ais523: It'd be a full port rather than a fixup if you wanted it to work properly 18:17:56 Deewiant: It does work, you just shouldn't do it like that. 18:18:06 Aha 18:18:15 Considering it's the same people I think they pretty much are entitled to make their C whatever they want :P 18:18:20 Also their C does have extensions 18:18:24 and removes some ansi things 18:18:35 the C94 functions seem to be a perfect fit for Plan9, maybe they were invented for it 18:18:40 after all, nobody else seems to use them 18:18:43 ais523: link? 18:18:48 they're in C99 18:18:55 they mostly handle multibyte strings 18:19:03 Then no. 18:19:13 plan 9 has its own, custom 16-bit unicode system called Runes 18:19:18 (I guess it doesn't handle the astral planes) 18:19:23 (Because they didn't exist at the time) 18:20:23 wow, C94 is sufficiently obscure that even Google has few relevant results 18:20:35 I'm searching for C94 199409L in an attempt to find it 18:20:51 (199409L is the STDC_VERSION code for C94) 18:20:52 Everyone else seems to do the non-BMP characters as silly surrogate pairs, too. Java and something else I ran across very recently, to just mention two. 18:21:35 UTF-16 does that, which is why Java and Windows and others do that. 18:22:24 a structure or union may contained unnamed substructures and subunions; the fields of the substructures or subunions can then ebe used as if they were members of the parent structure or union 18:22:29 (the resolution of a name conflict is unspecified) 18:22:34 when a pointer to the outer structure r union 18:22:41 is used in a contxt that is only legal for the unnamed substructure, 18:22:51 the compiler promotes the typw and adjusts the pointer value to ppint at th subtructure 18:23:00 if the unnamed struct or union is of a type with a tag name specified by a typedef 18:23:00 C94 was basically a point relase to C89, it wasn't anything near as radical as the C99 changes 18:23:02 statement, the unnamed struc- 18:23:08 ture or union can be explicitly referenced by 18:23:12 . 18:23:23 ^^^^ that's badly typed from the screen, but, also, that's pretty non-ansi 18:23:46 this is valid int a[] = { [3] 1, [10] 5 }; 18:23:47 guess that it does 18:23:58 it's 18:24:05 int a[11]; a[3] = 1; a[10] = 5; 18:24:40 sweet, they eliminate the linker's -l 18:24:45 #pragma lib "foo.a" 18:24:46 -> 18:24:52 link with /$objtype/lib/foo.a 18:25:17 heh, they accept // comments 18:25:18 hmm... interesting; lots of compilers /can/ do it like that I think, but nobody ever does 18:25:21 That's been in VC++ and D forever 18:25:28 and their long long is 64 bit in 32 bit code 18:25:36 I expect GCC has something like that as well 18:25:40 ehird: I wouldn't be surprised if they were one of the 3 compilers in the world which were fully C99-compliant 18:25:47 and long long is always at least 64 18:25:47 they also support: 18:25:49 3? 18:25:50 by definition 18:25:53 struct foo = { .x 1, .y 3 }; 18:25:55 without the = 18:25:57 Deewiant: are there more nowadays? 18:26:00 or did I remember too many? 18:26:03 ais523: Are there that many? 18:26:03 ais523: no, they're not c99 18:26:03 there aren't a lot, I know 18:26:07 they don't like c99, I believe 18:26:13 I can think only of Comeau 18:26:20 "Some features of c99 [...] are implemented" 18:26:21 Deewiant: well, IIRC Sun have a c99-compliant C compiler 18:26:42 Deewiant: "Amazing C99 Support" 18:26:46 does that mean "total"? 18:26:46 ais523: Evidently so 18:26:51 ehird: Probably not 18:26:55 c99 is probably self-contradictory 18:27:40 personally, I think you'd be mad to use any of the C99 features which aren't supported in gcc+glibc 18:27:48 as they do all the easy-to-implement ones, and some of the harder ones 18:27:53 ehird: Well, they claim they do support C99 fully 18:27:54 back 18:28:28 ehird, " what" <-- "afk urg" meant "away from keyboard, urgent". In this case because of a bleeding nose 18:28:49 that's gotta be one epic bleeding nose to warrant "urg" instead of "urgent" 18:29:08 ehird, that would be a good description yes 18:30:42 Where will we be ten years from now? CRT’s will be 18:30:43 a thing of the past, multimedia will no longer be a buzzword, 18:30:44 pen-based and voice input will be everywhere, and university 18:30:46 students will still be editing with emacs. 18:30:48 — Rob Pike, 1992 18:30:59 interesting 18:31:00 Add a few years and drop the pen/voice and he's dead on. 18:31:01 " ais523: To get it working "plan9y" you'd have to change, for instance, every call of printf" " (it has stdio, though)" <-- printf is part of stdio... 18:31:07 Were CRTs a thing from the past in 2002? 18:31:14 AnMaster: that's what I meant; pls read. 18:31:18 Deewiant: "add a few years" 18:31:20 ehird: In other words, he wasn't dead on. :-P 18:31:24 ehird: most students don't use emacs IME, Rob Pike missed the huge rise of Windows 18:31:33 ehird, if it has stdio, then printf should work fine? 18:31:39 ais523: computing students use a Real Editor, surely? 18:31:54 ehird: I find that most use nano or gedit 18:31:56 AnMaster: do you understand what 'though' means in a parenthical remark? no. 18:31:57 look it up 18:32:00 Or Eclipse, for Java 18:32:15 ehird: here at university for programming sources they try to get us to use unpaid shareware versions of TextPad 18:32:18 ehird, I see no reason to change it if it will work.. 18:32:19 although I used Emacs anyway 18:32:38 AnMaster: because stdio is deprecated in plan 9 18:32:45 and it won't integrate well 18:32:46 when I don't have access to Emacs, I either use Notepad if Notepad is capable of what I'm doing (which is rare), or Notepad++ from my USB stick 18:32:57 ha, the plan 9 c compilers's preprocessors don't support #if 18:33:05 AnMaster: put it this way, would you write C programs using implicit int 18:33:06 (compilers, plural, it has one per architechture) 18:33:19 ehird: do they share front-ends? 18:33:28 ais523: dunno. almost certainly 18:33:30 let me check 18:33:32 * ehird cd /sys/src 18:33:43 _that's_ how you do open source. 18:34:12 the disappointing thing is that UNIX had directories for sources, and still does IIRC, but nobody uses them 18:34:53 ais523: /sys/src/cmd/8c just has some optimization and code generation files, so I assume the frontend is elsewhre 18:34:54 let me look 18:35:39 aha 18:35:42 /sys/src/cmd/cc/ 18:35:52 (found by looking at 1c/mkfile) 18:36:20 ais523: they just compile w/ the frontend files, so each binary has its own frontend 18:36:21 but it's the same code 18:36:30 although the same frontend per binary is just how plan 9 does it, so not surprising 18:36:31 err 18:36:32 separate 18:36:33 frontend 18:36:58 as for C94, ##c managed to track down some people who are still selling it, apparently the PDF costs £39.78 18:37:07 ais523: link? 18:37:16 http://infostore.saiglobal.com/store/Details.aspx?DocN=isoc00076751 but it isn't very useful 18:37:17 tempted to buy it, that thing must be bitrotting to extinction 18:37:18 just a price list 18:37:34 There is a problem with the page you are trying to reach and it cannot be displayed. 18:37:34 We apologise for the inconvenience. Please try again in a few moments. 18:37:44 err, sorry 18:37:45 heh, they have an advert for LAW 9000: the framework for good legal practice management 18:37:49 http://infostore.saiglobal.com/store/Details.aspx?DocN=isoc000767513 18:37:51 it's exactly equal to nine thouuuusand 18:37:53 copy-paste fail 18:38:05 -!- Slereah has quit. 18:38:32 hmm 18:38:37 do you think the hard copy comes with a pdf, ais523? 18:38:38 probably not 18:38:39 AnMaster: put it this way, would you write C programs using implicit int <-- not unless golfing 18:38:40 :( 18:38:52 (ais523: i think he missed your metaphor) 18:39:26 implicit int is weird 18:39:32 ais523, FreeBSD uses /usr/src to contain kernel and userland. If you install them 18:39:33 what the fuck 18:39:35 (which I have installed) 18:39:39 cc/lex.c 18:39:44 so what did you mean with " the disappointing thing is that UNIX had directories for sources, and still does IIRC, but nobody uses them" 18:39:45 if(argc > 1 && systemtype(Windows)){ 18:39:51 yes 18:39:52 that windows 18:39:56 in the plan 9 source tree 18:39:57 I am bemused 18:39:58 AnMaster: there are directories in the FHS for reserving source code 18:40:08 ehird: maybe plan9 cc has been ported to Windows? 18:40:15 ais523: but that's crazy 18:40:16 ! 18:40:18 why? 18:40:22 ais523, which ones do you mean? /usr/src and such? 18:40:24 because because because windows! 18:40:26 AnMaster: yes 18:40:36 well as I mentioned freebsd does use that 18:40:37 ehird: it's no crazier than porting C-INTERCAL from UNIX to Linux to DOS 18:40:48 sure it's more crazy 18:40:58 because c-intercal isn't a bastion of platonic amazing purity. 18:41:02 of researchity. 18:41:15 ehird, you forgot +4 18:41:20 what 18:41:26 ehird: would you say it is more or less crazy than translating the source code of Windows into Haskell? 18:41:31 ehird, ... 18:41:33 ais523: . 18:41:34 .. 18:41:36 ... 18:41:42 .... 18:41:49 ..... 18:41:49 ffffffffffff 18:42:00 admittedly, nobody's seriously tried that AFAIK 18:42:14 ais523, that anyone even considered it amazes me 18:42:22 well, I invented it just now 18:42:26 You should've added some context: if(argc > 1 && systemtype(Windows)){ print("can't assemble multiple files on windows\n"); errorexit(); } 18:42:29 the idea of considering it, I mean 18:42:39 fizzie: no, not assemble 18:42:41 cc 18:42:47 s/assemble/compile/ 18:42:52 Well, this was from 2a/lex.c. 18:42:54 also, the fact is that they took special considerations for windows. 18:42:59 fizzie: you want cc/lex.c 18:43:05 I'm not sure I *want* it. 18:43:28 ehird, is this plan9 or plan9port? 18:43:29 ais523: digraphs, , more additional specification of wide and multibyte characters and additional functions and macros. 18:43:33 AnMaster: plan 9 18:43:35 <--- ##c on what's new in C94 18:43:43 -!- Slereah has joined. 18:43:44 ehird, hm ok that is even odder 18:43:46 ais523: is poppavic there? 18:44:01 ehird: yes, but with different capitalisation 18:44:06 damn 18:44:09 I was just about to join 18:44:39 http://ortdotlove.net/poppavic_wisdom.html 18:45:04 every time i've been in ##c when he's there I get multi page markov-esque rants about things I didn't ask, instead of answers 18:45:23 wow, I clicked on the "people who bought this also bought" thing for C94 18:45:28 and there was loading for about 5 seconds 18:45:31 and then a blank list 18:45:35 it seems there's no love for C94 at all 18:45:54 * ais523 has a sudden urge to translate C-INTERCAL to C94 18:45:59 ais523: should I get the hardback, or the pdf, or both 18:46:07 the hardback is more awesome, the pdf is more... snippet-pastingable. 18:46:09 ehird: what, you're actually planning to buy it, why? 18:46:13 and the both is expensive 18:46:26 ais523: because in 5 years, you won't be able to buy it any more, I bt 18:46:26 bet 18:46:42 also, why not buy a spec for which there are no compilers? 18:46:53 well, I'd say that /if/ you're planning to buy it, go hardcopy for awesomeness, but I'd advise against buying it altogether 18:47:22 I could OCR it I suppose 18:47:24 not to mention that the PDF is probably DRMed if it's that expensive 18:47:27 Although that would require cutting it u 18:47:28 p 18:47:31 and so may not be copy-pastable at all 18:47:37 ais523: PDF DRM is only relevant if your reader respects it. 18:47:41 and why cut it up? just take photos and OCR those 18:47:51 ais523: because it's hundreds of pages? 18:47:54 ehird: I assumed there was encryption so that readers that didn't respect it couldn't read protected contents at all 18:48:00 also, scanning would be far more accurate 18:48:05 ehird: if you're only pasting snippets, you only need to OCR the snippets 18:48:13 ais523: how does that work? accept the drm, get the text, then allow it to be copy pasted 18:48:17 and, well, true. 18:48:43 ehird: I assumed that they were encrypted somehow and Adobe only gave the privkey for decrypting to people who put DRM in their readers 18:48:58 ais523: open source readers can read protected files 18:49:01 and allow you to copy 18:49:02 so /shrug 18:49:22 PDF encryption is defined in the released spec. And it's not a asymmetric-encryption-thing. 18:49:43 (Not in the spec as it was originally released, but they did finally release the encryption-specific parts.) 18:50:04 PoppaVic is so infamous that someone I've talked to from ##c started ##free-c, which is "##c sans PoppaVic" in practice 18:50:12 xpdf upstream does respect the DRM, though. I think at least Ubuntu or someone patched it to have a "--force"-style flag, too. 18:50:24 pipe through gpg 18:50:26 fizzie: is it illegal not to or sth? 18:50:28 THERE IS NO MACHINE CODE 18:50:35 fizzie, for kpdf it is a option in some menu iirc 18:50:37 ehird: probably only in the US 18:50:42 bsmntbombdood: people need to wake the fuck up and stop pointing their finger at you, right? 18:50:56 UNIX PHILOSOPHY MAN 18:51:16 tar c|gzip|gpg -c|netcat FUCK YES 18:51:29 ehird: also, I suspect that that C94 is only the diff from C89 18:51:34 as that's how it was released originally 18:51:41 ais523: hmm, that's less epic 18:51:44 so you'd need C89 too to get the whole thing, and it's a lot more expensive 18:51:54 :< 18:51:58 no afirs 18:51:59 fairs 18:52:44 so I suspect it isn't worth it 18:53:44 Debian-packaged xpdf has debian/patches/02_permissions.dpatch which adds #ifdef ENFORCE_PERMISSIONS around most of the permission-checking blocks and does not define that symbol. 18:54:09 JOIN US NOW AND SHARE THE SOFTWARE 18:54:11 YOU'LL BE FREE HACKERS 18:54:14 YOU'LL BE FREEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE 18:54:16 Upstream author disagrees, though: http://www.foolabs.com/xpdf/cracking.html 18:54:22 JOIN US NOW AND SHARE THE SOFTWARE 18:54:23 YOU'LL BE FREE HACKERS 18:54:26 YOU'LL BE FREEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE 18:54:32 HOARDERS MAY GET PILES OF MONEY 18:54:34 THAT IS TRUEEEEEEEEEEEEEEEEE 18:54:35 HACKERS 18:54:37 THAT IS TRUEEEEEEEEEEEEEE 18:54:40 Sorry, i turned into rms there. 18:54:43 Excuse me -> 18:54:48 <- what 18:55:47 ITYM "→" and "←" there. Another Useless Use of Unicode. (U³) 18:56:04 fizzie: I need hotkeys for jew knee code 18:56:08 and I don't know how to make 'em 18:56:17 (Notably superscript-3 is latin-1.) 18:56:52 AnMaster: finally i managed to make PyFunge 9x faster. *sign* 18:56:54 sigh* 18:57:00 oh? 18:57:01 lifthrasiir is the pyfunge guy? 18:57:03 an cool 18:57:05 well yes 18:58:56 ais523, I just pushed a patch to IFFI that makes it works against cfunge r633. 18:59:00 which is the very last one 18:59:08 AnMaster: ah, good 18:59:14 where's the website to pull from, again? 18:59:20 now mycology takes 3.5s average, compared to 30s+ for first ever version passes mycology (without any fingerprints) 18:59:23 sec... 18:59:51 ais523, http://rage.kuonet.org/~anmaster/c-intercal/darcs/ 19:00:08 https://kuonet.org/~anmaster/c-intercal/darcs/ should work too btw 19:03:14 ais523, there may be other changes from before you are missing 19:03:15 not sure 19:03:32 AnMaster: the way darcs works, I get all the changes in your repo that aren't in mine 19:03:59 ais523, yes I know 19:04:10 but I mean, better check in case there are other things too 19:04:26 It's time to write another toy Scheme. 19:04:31 To try a Concurrent & Parallel gc. 19:05:52 ehird, that sounds interesting, and hard 19:05:57 No. 19:05:59 No. Very easy. 19:06:01 i would imagine that that is the way to make garbage collection faster than manual memory allocation 19:06:13 bsmntbombdood: gc is already faster than manual allocation in many cases 19:06:16 this is just an extra boost 19:06:18 ehird, really? Not stopping the mutator should make things complex. 19:06:19 and it's automatic paralellism 19:06:20 albeit a huge one 19:06:21 AnMaster: no 19:06:25 which is rather exciting 19:06:31 ehird, really? 19:06:39 AnMaster: how many freaking times will you ask that?!! 19:06:53 ehird: well, sarcasm isn't always easy to detect 19:06:59 ehird, I mean, I thought you had to care about stuff like memory barriers and so on... 19:07:02 AnMaster: no 19:07:04 watch; 19:07:06 and by analogy, non-sarcasm isn't always easy to detect either 19:07:33 make a new thread { fork { run mark stage. send list of unused objects back to parent }; free unused objects } 19:07:51 ehird: that's what i was talking about yesterday 19:07:54 bsmntbombdood: yep 19:07:56 i know 19:07:57 don't steal my idea 19:08:00 er no 19:08:01 :P 19:08:02 I saw it elsewhere before 19:08:05 on a mailing list 19:08:11 which made me talk about concurrent gc 19:08:14 then you said the same thing 19:08:24 notice the ":P" 19:08:26 ehird, hm so the actual collection is done in the mutator thread? 19:08:29 bsmntbombdood: yah 19:08:33 AnMaster: no 19:08:35 you do it in another thread 19:08:44 see those { }s? 19:08:45 they match up. 19:08:45 copy on write is awesome 19:08:46 yes 19:08:47 read them. 19:08:55 ehird, which thread is the "parent" then? 19:08:57 all of it happens in a separate thread 19:09:04 AnMaster: GRIHAUHSAKFdhADJALS:adfs;as;d'kas 19:09:04 g 19:09:08 the mutator or the collector? 19:09:10 it's freaking obvious 19:09:13 also bbiab phone 19:09:16 did you actually read what i asid 19:10:13 AnMaster: if(fork()){run mark stage, return free objects to parent} else {schedule a signal handler to recieve free objects, then resume computation} 19:10:30 bsmntbombdood: you should just do that as a thread 19:10:32 trivial-er 19:10:39 and less 'global' 19:10:42 errrrr, my clauses are backwards 19:10:46 heh 19:10:54 also, mine is just one thread 19:10:59 yours has the overhead of fork() + signal handler 19:11:07 i guess signal handler is quite fast 19:11:38 a signal is elegant 19:11:48 -!- olsner has quit (Read error: 110 (Connection timed out)). 19:11:52 bsmntbombdood: threads are as elegant as forks in theory. 19:12:02 also it's a fuckin' gc, I think speed trumps elegance 19:12:30 signals are also fast 19:12:41 and threads are useless here... 19:13:04 signals are the wrong way to do this 19:13:08 no 19:13:13 bsmntbombdood: the signal handler has to execute asynchronously 19:13:15 to free them 19:13:19 you can't fork() in a signal handler, iirc 19:13:36 you don't do any freeing 19:13:39 ... 19:13:41 what 19:13:49 you just use the unmarked objects for allocation 19:14:02 um when you use malloc that's what free() does. 19:14:12 you're not using malloc... 19:14:15 o rly 19:14:17 you should do the sweep while executing the program 19:14:20 bsmntbombdood: even GC languages use malloc 19:14:22 they just don't use free 19:14:27 (well, normally they don't call it malloc) 19:14:28 if you don't, my solution is more async than yours 19:14:53 (and sometimes it's implicit in .copy() or = or whatever else makes copies in the language) 19:15:00 signal_handler(){ read(pipefromchild, free_objects); } 19:15:09 bsmntbombdood: that's bullshit 19:15:10 and then the allocator just looks at free_objects to allocate 19:17:02 shit, half my actions are plan 9 ones that aren't working on this system 19:17:04 i'm dying here 19:17:05 I don't see how you can do the mark-and-sweep find-unreferenced-objects stuff while threads are running and mutating whatever they want, without doing a fork() so you get that copy-on-write "snapshot" of the process. 19:17:23 actually, you can just put the free map in shared memory, and then you don't even have to notify the parent of anything 19:17:33 -!- kar8nga has joined. 19:17:37 fizzie: you do a fork(), that's the point 19:17:38 fizzie: I do do a fork 19:17:41 I just do a thread too 19:18:44 bsmntbombdood, aha 19:19:01 what 19:19:07 i explained that like 30 mins ago AnMaster 19:19:40 I was afk for phone I said. And before that you were incoherent 19:20:00 it's not my fault that you can't understand the most basic english pseudocode possible 19:20:05 good lord 19:20:08 stop being a douche 19:20:19 yay, now we get to argue over who that was targeted at. 19:20:21 ehird: Ah, so the "overhead of fork() + signal handler" wasn't meant to imply that you don't fork around. Sorry, that's just what it sounded like. 19:20:29 fizzie: I did the fork in another thread 19:20:33 so the overhead was just that of creating a thread 19:20:38 err 19:20:58 what would forking in another thread save you... 19:20:59 hmm 19:21:04 but you can do it without threads OR signal handlers 19:21:06 AnMaster: not setting a signal 19:21:10 Uh, it's not like the fork would magically execute without consuming any resources, even if it happens in its own thread. 19:21:16 with shared memory 19:21:18 fizzie, exactly 19:21:25 fizzie: overhead = HOW LONG THE PROGRAM BLOCKS 19:21:27 when a gc is triggered 19:21:49 fizzie: it will execute on a different proc 19:22:03 I still don't see why you would want to fork() at all. 19:22:27 you can't scan the object graph as it's being mutated 19:22:31 you need a static copy 19:22:58 bsmntbombdood, that is much less of an issue in single assignment languages 19:23:16 ... 19:23:17 no it's not 19:23:24 the object graph still mutates when you create objects 19:24:25 I'm not very sure the system will keep threads running while it's doing whatever the fork machinery needs to do to get a real copy of the process with all its threads, no matter in which thread you actually call the fork(). (Admittedly I guess it should be pretty fast.) I do rather like the at-least-superficial-simplicity of (presumably) doing fork+wait+"free" in one thread, though. 19:24:59 fizzie: fork() blocks all threads? I don't think so... 19:25:11 bsmntbombdood, The fork() one does have some interesting aspects though. If a object is found to be unreferenced it would be that in the parent too even after it mutated (since you can't magically reference an unreachable object legally) 19:25:28 AnMaster: yep 19:25:38 using forks and threads together is insane 19:25:39 Oh, right, in a pthreadsy system the child is created with just the fork-calling thread. 19:25:41 bsmntbombdood, however you can't do compacting GC this way... 19:25:45 fizzie: exactly 19:25:50 which is _absolutely_ what you want 19:26:26 -!- olsner has joined. 19:26:34 bsmntbombdood, so there is no way to handle memory fragmentation, except having a different GC strategy that is run less often and isn't concurrent 19:26:55 no, you can always use a concurrent gc 19:27:34 ehird, btw you depend on that the Linux fork() is copy-on-write it seems. On some systems it may be a lot slower because it copies all at fork() time 19:27:50 AnMaster: which of these systems are in actual use? 19:27:55 tell me so that I can destroy every one of them. 19:28:00 ehird: older versions of Sun UNIX 19:28:07 I may have one here which doesn't cow 19:28:11 ehird, Older UNIX. Windows (iirc) 19:28:11 ais523: out of shit legacy code 19:28:12 let me check the definition of vfork 19:28:21 though it doesn't call it fork() at all 19:28:22 which won't be running newer interps anyway 19:28:29 AnMaster: oh, yes, cygwin fork isn't copy-on-write, but it was a big struggle to get it to work at all 19:28:36 ais523, exactly 19:29:08 * ais523 opens Solaris 9 running CDE 1.5 19:29:11 but why couldn't you do COW without fork()? I mean, implement what the kernel is doing for COW basically 19:29:15 I don't know how it does it 19:29:34 if it is some ring-0 hardware trick I guess it wouldn't work 19:30:12 Pre-10 Solaris also had fork() behave as fork1() (child with just that single thread) when linked with -lpthread, but like forkall() (child with all threads) when linked with -lthread. Or that's what this Solaris 10 man page says. 19:30:13 hmm... CDE doesn't want to load atm 19:30:24 I suppose that ever since I got this Linux laptop, nobody's bothered to log into it at all 19:30:39 I suppose you could do it by basically marking the pages as non-writable and then handle the page faults by copying the pages (and adding the writing flag back) 19:30:56 if I remember how x86 works correctly 19:31:40 basically it would be same thing as how swap works, except you only trigger on writing. Right? 19:32:32 * AnMaster wonders why this pdf just opened with a zoom of 400%... 19:33:37 fork without copy on write is pointless 19:33:39 Our silly 16-processor "Tru64/OSF1 V5.1a" Alpha box seems to also have been let go. How sad. 19:33:49 "The vfork() function creates new processes without fully copying the address space of the old process." 19:33:53 yep, Solaris 9 is non-cow 19:34:02 and yeah, i haven't figured how to do compaction yet 19:34:05 Solaris 9? 19:34:06 bsmntbombdood, not pointless. Rather the cow bit is rather new 19:34:08 how modern's that 19:34:08 ais523: You mean lactose-intolerant?! 19:34:19 ehird, "modern's"? 19:34:27 AnMaster: it's a contractoin 19:34:28 contraction 19:34:30 heard of them? 19:34:38 rather new? 19:34:42 i don't think so 19:34:53 ehird, ah, not as in "ehird's client" or such then? 19:35:09 modern-is 19:35:14 "how cool's that?" 19:35:17 how cool-is that 19:35:33 I would say modernish probably or such 19:35:46 it's possible to have a simple compactor that runs synchronously 19:35:49 what :D 19:35:49 that's ridiculous AnMaster 19:35:54 modernish means nothing like modern's 19:35:58 i mean... what 19:36:02 -!- M0ny has joined. 19:36:02 that makes no sense whatsoever 19:36:11 AnMaster: one of the meanings of "'s" is " is" 19:36:13 ehird, so what would "ehird's" mean? "how ehird's car is that?" 19:36:14 :D 19:36:26 no it doesn't make any sense 19:36:45 and adjectives don't have a genetive, so in "modern's" it must be " is" 19:37:28 oklowob, hm. Let me go get that English grammar book downstairs... Think it was Oxford or Cambridge... 19:37:40 AnMaster: have fun doing that 19:37:44 oklowob, oh? 19:37:54 ah you mean this is slang or? 19:38:09 no 19:38:10 it's not slang 19:38:17 it's just highly trivial 19:38:19 you've heard it in things like "it's" 19:38:24 and I can't believe you don't know it 19:38:25 oklowob, yep. 19:38:27 but you can use it pretty much anywhere. 19:39:05 and it's slang in that you oxford might not say it's good english. 19:39:08 *your 19:39:41 oklowob, oh possibly, I think it is from ~1985 anyway, so probably not worth even checking then 19:39:46 but then again are contractions ever 19:39:59 Yes, in 1985 we talked like the proper gentlemen that we were. 19:40:10 ehird, ah good old jolly chap! 19:40:18 No 19:40:22 It's :jolly good old bean" 19:40:22 wait.. I got them in wrong order didn't I? 19:40:23 it's funny because none of us were alive back then 19:40:26 s/:/"/ 19:40:29 ehird, ah yes 19:40:35 ehird, when is "chap" used then? 19:40:42 never. chap is phony bullshit! 19:40:54 mhm 19:41:06 I guess Hollywood got that wrong too :) 19:44:26 Our moon seems to disappear during an eclipse. Some people say this is because an old lady covers the moon with her cloak. She does this so that thieves cannot steal the shiny coins on the surface. Which of these would help scientists to prove or disprove this idea? 19:44:27 A) Collect evidence from people who believe the lady sees the thieves 19:44:29 B) Shout to the lady that the thieves are coming 19:44:31 C) Send a probe to the moon to search for coins 19:44:33 D) Look for fingerprints 19:44:35 — http://news.bbc.co.uk/1/hi/education/7967600.stm 19:44:37 * ehird facepalm 19:45:17 absurd... 19:47:12 Look for fingerprints in what, exactly? 19:47:52 i seem to remember memcached switching to a custom memory allocator after discovering malloc was too slow 19:47:56 i wonder how that works 19:48:02 not very hard 19:48:40 ??? 19:48:46 I would think most non-mallocy memory allocation things use either sbrk to grow the data segment, or mmap to allocate. 19:48:51 bsmntbombdood, simple even, 1) get some huge chunk of memory from system at the start or such, use malloc() or mmap() or whatever. From that point onwards allocate from this block 19:48:58 AnMaster: uh, no shit 19:49:14 it's step 2 that's interesting 19:49:15 'AnMaster: uh, no shit' <-- how redundant 19:50:03 bsmntbombdood, yes then you need to find a good way to allocate for your app, it might be memory pool style with fixed item sizes if you always use the same size, or some other style. 19:50:11 jesus lord 19:50:15 but I thought you asked about the first step rather than the second 19:50:18 bsmntbombdood: :DD 19:50:27 bsmntbombdood: now try this every day and you become me 19:50:42 bsmntbombdood, you weren't precise enough in your question anyway. 19:51:03 I would suggest studding the source of various allocators if you want to know how they work. It can be rather interestign 19:51:07 interesting* 19:51:28 i asked how the memcached memory allocator worked 19:51:32 how is that not precise enough? 19:51:35 The interwebs say it's a slab-style allocator. There's a free-list of all 2^n sizes for 64, 128, ... 1MB, and they just round up. 19:52:02 -!- Mony has quit (Read error: 110 (Connection timed out)). 19:52:11 bsmntbombdood, " i wonder how that works" I interpreted as custom allocators in general 19:52:26 So no memory fragmentation in the classic sense, but high overhead for wonky-sized allocations. 19:52:26 ... 19:52:27 fizzie, interesting 19:53:08 btw, it seems x86_64 supports the following pages sizes: 4 kb, 2 MB, 4 MB, 1 GB 19:53:21 interesting jump to 1 GB there.. 19:53:42 fizzie: you mean internal rather than external fragmentation 19:53:58 or something like that 19:54:16 Linux kernel has that SLAB allocator for in-kernel use, and I think they relatively recently switched to SLUB ("unqueued allocator") as the default allocator there. I don't know how the newer one works. 19:54:40 "minimizes cache line usage instead of managing queues of cached objects" is about all the help text says. 19:55:00 * kerlo frowns at the idea of "A is evidence for B" meaning something other than P(A and B) > P(A)*P(B) 19:55:25 Sauna-time. → 19:55:27 fizzie, iirc they recently changed to one called "SLUB", don't know the details 19:55:39 That is just what I said, isn't it? 19:55:46 oh yes 19:55:48 misread 19:55:50 fizzie: he has no scrollback, remember 19:56:20 A single-line window with no scrollback would make for quite a surreal IRC experience. But → really. 19:56:35 finns 19:56:37 and you sauna 19:56:37 s 19:59:20 ehird, I agree about finns and saunas 19:59:33 even though we have saunas in Sweden too we aren't as crazy about them 20:00:42 hey, I have my ghc setup working 20:00:43 I just remembered 20:00:56 ehird, did you have issues with ghc before? 20:01:05 AnMaster: bootstrapping ghc is a bitch. 20:01:08 ah 20:01:10 and it has some issues on os x 20:01:12 you gotta patch i 20:01:12 t 20:01:14 that "splitting the heap" thing with compacting gcs really bugs me 20:01:17 configure.ac and stuff 20:01:30 ehird, iirc they provide binaries for most platforms that are already patched? 20:01:40 AnMaster: that they do. 20:01:52 ehird, so why did you need to build your own? 20:01:57 but they're compiled with the extralibs package, which I don't want, and for something I use as heavily as ghc I like to compile my own 20:02:00 you aren't on gentoo! 20:02:08 ah ok 20:02:27 it'll be easier next time 20:02:33 since I'll have a ghc already installed to bootstrap with 20:02:40 btw, do you have saunas in UK? 20:02:41 and the new build system they're making 20:02:43 AnMaster: no 20:02:48 hm ok 20:02:51 well, maybe. 20:02:59 http://www.google.com/search?client=safari&rls=en-us&q=uk+sauna&ie=UTF-8&oe=UTF-8 20:03:03 Gay Sauna Listings 20:03:03 Gay and gay friendly sauna listings for the whole of the UK. Simple easy to read layout make the list the most comprehensive on the Internet. 20:03:06 yeah uh thanks. 20:03:09 hah 20:04:19 cool 20:04:52 Deewiant: ping 20:04:54 pong 20:05:14 Deewiant: i get .cabal/config contains the stuff for docs & profiling, but what about when I'm manually installing a cabal package 20:05:20 [like to get cabal-install's deps :P] 20:05:41 ehird: runhaskell Setup.hs configure --help 20:06:15 I don't see anything relevant 20:06:23 --enable-profiling for the other 20:06:23 well 20:06:29 Can't remember the other 20:06:46 haddock Generate Haddock HTML documentation. 20:06:51 wonder if install will do that 20:07:15 * ehird modifies cabal-install's bootstrap.sh 20:07:36 AnMaster: How can I make CMake use a C++ compiler which needs flags to work? It either looks for 'foo --bar' and says file not found or tries to test it using only 'foo sometestfile' which fails 20:07:54 Deewiant: does haddock go before or after build? 20:07:58 After 20:08:06 Deewiant, err you mean passing CXXFLAGS= 20:08:24 --hoogle Generate a hoogle database 20:08:24 like: CXX=foo CXXFLAGS="--blah" cmake .. 20:08:25 Huh. 20:08:25 AnMaster: I'm editing stuff in ccmake and putting them in CMAKE_CXX_FLAGS doesn't work 20:08:55 Deewiant, ah you can't set CC or CXX there. Those two must be set before. Once cmake or ccmake starts they are fixed for this build directory 20:09:00 don't know why 20:09:11 Right, that makes sense. (Not!) 20:09:18 Deewiant, agreed it doesn't make sense. 20:09:32 Error during cabal-install bootstrap: 20:09:32 The Haskell package 'parsec' is required but it is not installed. 20:09:35 Deewiant, however, not sure about the flags bit if it is needed to work 20:09:44 can't you fucking install that, dipshit program 20:09:51 Deewiant, you really need to be more specific about what the issue is 20:09:54 ehird: Well, it expects you have the extralibs that come with GHC 20:10:04 Deewiant: yeah, I don't want extralibs :) 20:10:27 AnMaster: I'm trying to use 'schroot -pq -- g++' as my C++ compiler. 20:10:44 And not succeeding. 20:11:47 Deewiant: --prefix=${HOME}/.cabal" 20:11:48 err 20:11:50 Deewiant, hm.. 20:11:53 does that actually do anything? 20:11:55 It has --user before 20:11:57 ehird: I don't know 20:12:00 k 20:12:21 Deewiant, the easiest way is probably creating a shell script which runs that. like #!/bin/sh\nschroot -pq -- g++ "$@" 20:12:26 then using that as the C++ compiler 20:12:32 Deewiant: there's not --enable-profiling, just --enable-{library,program}-profiling 20:12:40 Deewiant: I assume I just want library profiling? 20:12:43 Deewiant, I suspect you can do it some other way too, I just got no idea how 20:12:52 ehird: Well, unless you want profiled executables. :-P 20:12:59 Deewiant: what would that entail 20:13:08 ehird: I don't know, I've never used it. 20:13:11 ksu 20:13:13 kay 20:13:14 Deewiant, stuff like: CC=$HOME/local/llvm/bin/llvm-gcc cmake .. works fine 20:13:19 Setup.hs: At least the following dependencies are missing: 20:13:19 mtl -any 20:13:20 Kill nao 20:13:38 mtl is needed by approximately every second program :-P 20:13:41 kill nao? why? Apart from the lag from europe 20:13:42 Europe* 20:13:55 ~~ 20:14:15 Warning: The documentation for the following packages are not installed. No 20:14:15 links will be generated to these packages: rts-1.0 20:14:16 err 20:14:20 Deewiant: is that normal? 20:14:27 ehird: Yes. 20:14:29 -!- FireFly has quit ("Later"). 20:14:36 Deewiant: can you generate docs for rts? 20:14:46 I don't think so, no. 20:14:56 Kay 20:14:56 You can try. :-P 20:15:55 The Haskell package 'parsec' is required but it is not installed. 20:15:56 what 20:15:57 I just installed it 20:15:59 ? ? 20:16:08 og 20:16:09 oh 20:16:11 I installed parsec 3 20:16:13 it wants 12 20:16:14 2 20:19:22 Deewiant: yow, profiling libs compiles everything twice 20:19:26 -!- ais523 has quit (Read error: 104 (Connection reset by peer)). 20:19:37 ehird: Yes, that's rather the whole point 20:19:42 :P 20:20:35 -!- ais523 has joined. 20:21:34 http://gandolf.homelinux.org/~smhanov/blog/resume_comic.png "-1 Has Ph.D" s/programmers/shit \0/ 20:22:19 Deewiant: I have no .cabal/config 20:23:09 Best create one then 20:23:19 Deewiant: You said read .cabal/config to see the defaults 20:23:25 If I create one htf do I do that 20:23:38 ehird: Have you run cabal-install even once? 20:23:43 Yes. 20:23:50 You can edit the cabal configuration file to set defaults: 20:23:50 :-/ 20:23:50 /Users/ehird/.cabal/config 20:23:51 No I can't. 20:24:40 ah 20:24:43 had to run an actual operation 20:24:44 "Writing default configuration to /Users/ehird/.cabal/config " 20:25:24 that was nice and easy 20:25:49 ais523: I am about to make you scream, with just three words. 20:25:53 ais523: "Nethack in Haskell". 20:26:12 that doesn't make me scream 20:26:16 I was planning to rewrite it in Prolog 20:26:16 http://www.ioccc.org/1987/wall.hint <- Perl v0.1 20:26:43 -!- Sgeo has joined. 20:27:07 Silly compilers confusing =+ and += 20:27:18 itt: 1987 20:27:40 THINGS THAT MAKETH ME SAD: ghc doesn't work on osx/64bit 20:29:11 THINGS THAT MAKETH ME KILL BITCHES: quitting ghci not stopping the lagfsest of "let a a= a" 20:29:13 a = a 20:31:33 Deewiant: but =+ was used in ancient C 20:31:52 which was later changed to += 20:31:55 lifthrasiir: Yes, I know 20:31:57 yes he knows 20:32:13 Doesn't stop me from calling them silly :-P 20:35:00 THINGS THAT MAKETH ME KILL BITCHES: quitting ghci not stopping the lagfsest of "let a a= a" <-- process still running invisible or something? 20:35:12 * AnMaster is confused 20:35:18 AnMaster: forked ghc or sth 20:35:21 aha 20:35:23 why is (let a a = a) a loop anyway? 20:35:40 I find it hard enough figuring out what it does at all 20:35:43 ehird, I assume killing the relevant processes help? 20:35:44 helped* 20:35:50 yes. 20:35:55 ais523: i said 20:35:56 let a = a 20:35:59 as a correction 20:36:01 oh, ok 20:36:03 ehird: THINGS THAT MAKETH ME KILL BITCHES: quitting ghci not stopping the lagfsest of "let a a= a" 20:36:03 19:28 ehird: a = a 20:36:04 that makes a lot more sense 20:36:11 ais523: let a a = a is just \x -> x 20:36:13 aka id 20:36:23 ais523: because it's 20:36:23 ehird: That could easily have been a correction from 'a= a' to 'a = a' 20:36:27 let a = \a -> a 20:36:29 do the first and second as there have different scopes? 20:36:32 so the binding trivially shadows it 20:36:36 ah, ok 20:36:42 it's just very confusing seeing that particular shadowing 20:36:48 I suppose that's why shadowing is looked down on 20:37:02 Prelude> let a a a = a a a 20:37:02 :1:6: 20:37:03 Conflicting definitions for `a' 20:37:05 In the definition of `a' 20:37:13 Prelude> let a = \a -> \a -> \a -> a a a 20:37:13 :1:26: 20:37:14 Occurs check: cannot construct the infinite type: t = t -> t -> t1 20:37:18 So it does check for argument shadowing. 20:43:30 huh 20:43:36 cabal-install says I can upgrade cabal, haddock and process 20:43:42 I guess upgrading cabal isn;t too clever 20:44:02 No, you can do that fairly safely IME 20:44:12 haddock and process too? 20:44:17 process probably not 20:44:28 why; what's wrong with upgrading process? 20:44:34 It's a base lib 20:44:36 GHC depends on it 20:44:45 ah 20:44:47 Upgrading such libraries tends to break things 20:44:59 Eh, I'll leave them unupgraded for now 20:45:01 Or at least, make it hard to get them working properly :-P 20:45:05 Haddock should be fine though 20:45:07 Why would cabal even offer the possibility then? 20:45:12 what's scroll-down in less if you can't use the arrow keys? 20:45:18 ais523: j? 20:45:26 Deewiant: apparently not 20:45:28 I guessed j too 20:45:29 ais523, why can't you use the arrow keys though? 20:45:32 ais523: enter 20:45:35 ais523: space? 20:45:36 and why would j do it? 20:45:49 AnMaster: because I'm using CDE over X forwarding, and it doesn't seem to like arrows 20:45:57 AnMaster: vi keys 20:45:57 enter 20:46:00 and I guessed j because less is similar to vi 20:46:12 ais523, enter and space works here 20:46:16 space jumps one page 20:46:19 enter one line 20:46:21 oh, I see what happened 20:46:25 19:44 ehird: ais523: enter 20:46:25 it opened more, not les 20:46:27 *less 20:46:29 y'all blind? :P 20:46:32 and more doesn't support arrow keys 20:46:32 ais523, h opens help 20:46:34 ehird: enter worked fine 20:46:39 ehird, I saw it 20:46:44 ais523: yes, but everyone kept saying other things after 20:47:29 I wonder why more even exists? 20:47:36 AnMaster: it's older 20:48:01 what a stupid question 20:48:05 why does ed exist? 20:49:00 ais523, what do you gain with more? 20:49:19 AnMaster: it's smaller and simpler 20:49:33 for instance, I imagine more is a better fit for busybox than less 20:49:50 AnMaster: more was made before less 20:49:54 ais523, you don't even gain any memory unless the user scrolls down, but if the user waits until all output is produced you still have to wait as much 20:49:55 do you want a time machine or something 20:50:00 busybox more works, and busybox less doesn't 20:50:04 s/wait as much/load as much/ 20:50:16 AnMaster: more is a smaller binary than less, I imagine 20:50:25 busybox more works, and busybox less doesn't <-- it has both iirc? 20:50:27 my more is less(1) anyway 20:50:30 so wtf are you talking about 20:50:33 $ ls -l `which more` `which less` 20:50:34 -rwxr-xr-x 1 root root 30316 2008-09-25 14:08 /bin/more 20:50:36 -rwxr-xr-x 1 root root 120884 2008-02-02 03:51 /usr/bin/less 20:50:43 AnMaster: well, my busybox doesn't have less compiled in 20:50:48 why would it, that's missing the point of busybox 20:50:49 (~) more 20:50:49 Missing filename ("less --help" for help) 20:50:50 mine has both 20:50:58 ) busybox emacs 20:50:59 ais523, why should it have http at all? 20:50:59 also, interesting to see that more is in /bin but less is in /usr/bin 20:51:04 httpd* 20:51:17 that is a way more interesting question 20:51:27 that means that more has to fit on the root partition, but less can be in a separate /usr partition 20:51:40 makes sense, you have more for troubleshooting mount problems, and the larger less for everyday use 20:52:35 http://sources.busybox.net/index.py/trunk/busybox/networking/httpd.c?view=markup btw 20:52:46 from time to time i reduce all learning into one integer, which simply measures the time spent learning, and start wondering whether it's actually any use studying, as people will learn from everything anyway 20:52:47 httpd makes senes 20:52:48 sense 20:53:06 i mean clearly there's a different learning factor for each activity 20:53:07 wow, busybox httpd actually works on here 20:53:11 I wonder how good the httpd is? 20:53:15 and it makes more sense than less 20:53:21 if you sleep, you won't learn as much as when actually studying 20:53:23 ais523, hah hah 20:53:26 busybox httpd is a very small and simple httpd 20:53:31 busybox more is a very small and simple more 20:53:34 ais523, was the pun unintentional? 20:53:35 ais523: it has a config size 20:53:40 ais523: file 20:53:42 ais523: and does cgi 20:53:56 ehird: still pretty simple compared to most 20:53:58 but for some reason my intuitive factors oscillate between sensible values, and equals for all activities 20:54:02 ais523, well? 20:54:03 just wanted to share this 20:54:03 ais523: i agree 20:54:09 use it wisely 20:55:33 ais523: that httpd is 743 lines with comments, cpp and blank lines stripped 20:55:37 well 20:55:39 not cpp removed 20:55:44 cc -E httpd.c | sed 's/#.*//' | sed '/^$/d' 20:55:51 pretty small for its features 20:55:55 yep 20:55:58 ehird, it uses some commented out areas with #if 0 though 20:56:01 so not accurate 20:56:05 AnMaster: cc -E 20:56:07 removes those 20:56:08 duh 20:56:08 ah right 20:56:45 ehird, -E would include headers though 20:58:29 AnMaster: it ony lincludes libbb.h 20:58:33 which I don't have, so that works fine 20:58:39 ah true 21:02:58 this mouse wheel is unfortunately tall; finger that rests on it's hurting 21:03:10 ehird: you rest a finger on the mouse wheel? 21:03:16 yes 21:03:20 when I use a mouse, I have a finger on left-click and a finger on right-click 21:03:28 and move from left-click to wheel to use the wheel 21:03:33 ais523: I use the scrollwheel every few seconds, and I middle click to open links in a new tab 21:03:39 ais523, same for me 21:03:43 I use the middle button and wheel more than the right button 21:04:09 index finger on left button, middle finger on scrollwheel, ring finger on right button 21:04:26 wish I was polydactyl 21:04:42 that would be awesom 21:04:43 e 21:04:47 index finger on right, middle finger on left for me, or the opposite. I tend to use the mouse equally well with either hand 21:05:56 I always move the index finger when scrolling though it seems 21:06:06 oklowob: are you polydactyl 21:06:10 seem the type 21:06:16 ehird: so have you started writing that gc yet? 21:06:42 bsmntbombdood: no, because it'd be like 35 lines in a scripting lang [for a prototype i don't care about speed] 21:06:44 only issue is that I can type well with only left hand, but not with only right 21:06:53 ehird: NO 21:06:56 you must write in C 21:07:48 bsmntbombdood: fu _|_ 21:08:03 the gc itself would be trivial but i cba to write memory management shit for a proof of concept interp 21:08:37 trival = not fast 21:09:14 bsmntbombdood: i said proof of concept 21:09:33 sure I could spend my whole life perfecting it like the boehm guys but I don't want to at first, just want to prove it works 21:09:34 the concept is already prooft 21:09:46 I've never seen an impl. 21:10:15 so? 21:10:30 So I want to write one. 21:10:47 so write a fast one 21:11:16 why? that's wasted work until I can prove it works well 21:11:20 and doesn't sound as fun. 21:12:50 bsmntbombdood, ehird is right in this case. 21:13:14 AnMaster: retract that statement, not because ehird is wrong but because it'll cause a rift in the universe if you personally say that too much 21:13:37 ais523: i'm talking with a slight swedish accent these days 21:13:43 can I panic now? 21:14:27 Don't panic. 21:14:35 that confirms it 21:14:35 * ais523 hopes ehird is lying, to save the integrity of their brain 21:14:36 * ehird panics 21:14:55 I was just quoting HHGTTG 21:14:58 ais523: oh I'm sorry, do you need ~ markers to detect jokes? ;P 21:15:04 ... AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 21:15:08 ehird: not normally 21:15:11 not even that time 21:15:11 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 21:15:13 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 21:15:14 AAAAAAAAAAAAAAAAAAAAAA 21:15:16 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 21:15:18 ehird, even I saw it was a joke... 21:15:18 :( 21:15:20 but the mere possibility you weren't joking was too horrible to contemplate 21:15:30 you all missed the metajoke 21:15:32 jerks 21:15:33 also I thought ais523 was meta-joking... 21:15:34 duh 21:15:43 20:14 ehird: ais523: oh I'm sorry, do you need ~ markers to detect jokes? ;P <---- this is something AnMaster would say 21:15:51 well, I thought someone was metajoking, but I couldn't figure out who 21:15:53 especially the ;P 21:16:02 and I mentally filter out smileys 21:16:05 they tend not to mean much anyway 21:16:06 the AAAAAAAAAAAAAAAA was the last vestiges of ehird panicing inside 21:16:08 ais523, aren't we still meta-joking? 21:16:11 apart from :>, because it brings back fond memories 21:16:11 ... 21:16:22 wait, I think we've got up to at least two metas now 21:16:22 ais523, fond memories or what? 21:16:24 maybe three 21:16:27 AnMaster: *of? 21:16:31 ais523, four in my count 21:16:32 and eso-std.org 21:16:33 ais523, yes 21:16:36 aha 21:16:38 sometimes I fly around in a spaceship :> 21:16:53 it's still parked, by the way 21:17:04 every time I read that line I get a full mental picture of the lil' :> smiley in a tiny spaceship buzzing around space 21:17:22 ais523: it's not parked parked; i could renew it for the regular cost right now 21:17:45 ehird: I get a mental image of a spaceship that looks like a :> 21:18:01 ais523: oh, that wasn't the intention, the :> was what the author of the sentence looked like 21:18:14 I suppose a :> spaceship could work, but it's less amusing IMO 21:18:24 so which side of the keyboard you prefer to put the mouse on? Or are you equally good with either side? 21:18:34 AnMaster: er, right handed people at right sid 21:18:35 e 21:18:37 left at left 21:18:44 ehird, I manage both equally well 21:18:51 then you're ambidextrous 21:19:00 ehird, yet I'm right handed when I use a pencil 21:19:09 can't use a pencil with my left hand at all really 21:19:20 maybe you're ambisinistrous 21:19:40 oh and for fork/knife I'm definitely left handed. Always swap compared to the usual style 21:19:49 http://moonpatio.com/vacuum/gallery/dblist.html 21:19:53 http://moonpatio.com/vacuum/ 21:20:28 a long on a 64 bit platform is 64 bits right? 21:20:33 yes. 21:20:36 an int should be but isn't. 21:21:00 bsmntbombdood, depend on *which* 64-bit platform... 21:21:10 but usually yes 21:21:11 AnMaster: the answer is 'yes' 21:21:41 ehird, Not always. 21:21:45 usually yes 21:22:24 ehird: did you try my Enigma level, btw? 21:22:42 nope; relink and i'll dl 21:23:37 * ais523 digs out the URL 21:24:07 http://filebin.ca/gexxmq/ais52306_1.xml 21:24:08 brb -> 21:24:10 not sure if it's still there 21:24:18 ehird, Is it specified anywhere that long corresponds to machine word size? 21:24:24 you seemed to say so above 21:24:25 AnMaster: no 21:24:31 in theory int corresponds to machine word size 21:24:35 but that fails on an 8-bit system 21:24:38 and on some 64-bit systems 21:24:48 in practice, long corresponds to machine word on 32 and 64 bit 21:24:52 but in theory that's incorrect 21:25:08 ais523, C99 specs indicate that long must be at least 32 bits. It specifies minimum acceptable values for LONG_MAX and such 21:25:18 C89 indicates that long's at least 32, too 21:25:29 which means it never corresponds to machine word if the machine word's shorter than 32 21:25:30 that would fail on a 8-bit machine 21:25:36 exactly 21:25:40 back when systems were either 16 or 32, int was the one that corresponded to word size 21:25:52 but so many programmers assumed int=32 that most 64-bit C compilers also have int=32 21:26:04 even though int=64 is theoretically correct on those 21:26:18 bsmntbombdood, thus long is 64 bits in practise on 64-bit platforms, but it isn't guaranteed. 21:26:21 (not to mention, you'd have to use int16_t to get a 16-bit int, because short would presumably be 32-bit) 21:26:24 bsmntbombdood, might be useful to know 21:26:45 in theory, long can be 128 on a 64-bit platform, but nobody does that 21:26:56 normally even long long is 64, although it can be 128 21:27:06 ais523, in practise long long is also 64 bits on 64 bit platforms iirc 21:27:14 yep 21:27:17 what about long long long long long long? 21:27:18 :P 21:27:24 bsmntbombdood: only two longs can be stacked 21:27:24 bsmntbombdood, syntax error I think 21:27:32 AnMaster: no, it's equivalent to long long I think 21:27:40 just like you can write const const int and it works, IIRC 21:27:42 bsmntbombdood, use C99 and then include stdint.h. Much better 21:27:46 not sure, though 21:27:47 and use int32_t and such 21:27:55 stdint doesn't have int128 does it? 21:28:04 bsmntbombdood, that is non-standard 21:28:13 bsmntbombdood, most implementations doesn't have it 21:28:21 GCC does as __int128_t 21:28:39 stdint is allowed to have an int128_t by the standard 21:28:42 but it isn't mandatory 21:28:52 indeed 21:28:55 in fact, it's allowed to have an intN_t for any N 21:29:01 even if it isn't a multiple of the bitwidth of char, IIRC 21:29:09 ais523, intt_t? 21:29:10 err 21:29:14 int3_t* 21:29:14 although uintN_t must have N a multiple of CHAR_BIT 21:29:22 ais523, that would make no sense 21:29:23 because uintN_t can't have padding 21:29:34 ais523, err... why can't they? 21:29:38 AnMaster: yes it would, most likely it would be stored in one byte, with 3 bits value and 5 bits padding 21:29:41 and because the standard says so 21:29:50 http://i33.photobucket.com/albums/d87/peavypeavy/farnsworth.jpg 21:29:52 any reason for the no padding bit? 21:30:12 AnMaster: presumably so you can specify exact-sizes properly 21:30:24 if you don't care about exact size, why aren't you using uint_fastN_t? 21:30:26 ais523, what about bit addressable systems? 21:30:38 AnMaster: C doesn't support those directly 21:30:42 because CHAR_BIT has to be at least 8 21:30:49 ais523, maybe because you need to optimise memory usage rather than speed in the specific application? 21:30:56 uint_leastN_t, then 21:31:10 ah true, forgot about that one 21:32:23 why does most system only use ring 0 and ring 3? I mean there are two more levels in between on x86... 21:32:40 what would they be useful for anyway? 21:35:55 -!- k has joined. 21:36:18 -!- kar8nga has quit (Nick collision from services.). 21:36:20 -!- k has changed nick to kar8nga. 21:38:19 -!- revcompgeek has joined. 21:44:48 -!- FireFly has joined. 21:54:23 heh some x86 data structures are crazy 21:54:40 a processor has datastructures? 21:54:42 I mean 20 bit field for segment limit? 21:54:54 SimonRC, stuff like TLBs, segment descriptors and such 21:55:15 well not TLBs, they are the caches for the page translations 21:55:26 If you can see segments, you're likely to be doing it wrong 21:55:32 SimonRC, you know about interrupt vectors? 21:55:46 SimonRC, what? 21:56:11 well, the first thing most modern OSes do on the x86 is turn off segmentation 21:56:26 SimonRC, well yes, but the registers are still used partly for some stuff 21:56:29 what are x86 interrupt vectors like? 21:56:30 even in 64-bit mode 21:56:46 SimonRC, don't remember off hand. Anyway the page entries have crazy formats too 21:57:13 -!- ais523_ has quit ("http://www.mibbit.com ajax IRC Client"). 22:01:10 SimonRC, the stuff it pushes on the stack though for interrupt vectors seems crazy 22:01:47 SimonRC, packed odd sized words... 22:01:58 I think 22:02:07 heh 22:02:36 SimonRC, I'm reading the AMD64 docs btw.. 22:03:50 ok 22:04:24 -!- ais523 has quit (Read error: 104 (Connection reset by peer)). 22:04:39 SimonRC, ever seen the x87 saved state format? It is possibly even worse 22:04:55 that is used during task switching to store and restore the register state 22:05:21 80-bit FP stack saved in a funny way? 22:05:52 SimonRC, yes and SSE registers are saved into some reserved space in there :D 22:05:58 -!- revcompgeek has left (?). 22:06:54 causing slow context-switches, surely? 22:08:19 SimonRC, not really, also the OS can do it lazily, that is set some flag that causes an interrupt when the app tries to use floating point, thus avoiding setting it up when not used 22:08:22 :D 22:08:33 I know Linux makes use of that, at least in recent versions 22:08:34 yeah, cool beens 22:09:30 AnMaster: I heard of it first in Synthesis (which you must have read about) 22:09:43 err what? 22:10:08 anyway the format of the dump from FSAVE is described using a diagram which covers two pages in the pdf 22:10:17 AnMaster: (ah, you might be interested to read about the synthesis OS then) 22:10:36 -!- ais523 has joined. 22:10:44 SimonRC, link? 22:10:59 waitamo 22:10:59 AnMaster: New CCBI/Mycology up. 22:11:15 (its idea is that you don't do lots of ifs and table lookups every time someone wants to read a load of bytes froma file, instead you compile a custom reading function when the open the file.) 22:11:22 Deewiant, oh? Nice 22:11:55 Deewiant: Link? 22:12:10 ais523: iki.fi/deewiant 22:12:38 * ais523 looks 22:13:17 SimonRC, not sure how much that would help. Also self modifying code would mean invalidating lots of cache lines 22:13:22 and so on 22:13:32 so usually not a good idea for files 22:14:33 what does G in STRN do? 22:15:06 AnMaster: http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.29.4871 22:15:25 ais523: Reads a zero-terminated string from funge-space with a fixed delta of x=1, y...=0. 22:15:43 mhm 22:15:43 oh, and it infinite-loops if there isn't a zero 22:16:09 * oklowob started doing teh lottery 22:16:11 well, it's pretty hard to test for a tight infinite loop using nothing but standard Befunge... 22:16:11 Thanks to Mycology most interpreters actually reflect there :-P 22:16:16 mhm 22:16:23 ais523: Yeah, that was my original thought 22:16:28 Deewiant: how? by checking the entire Lahey-line to see if there isn't a 0? 22:16:33 i'm going to be a millionaire 22:16:52 oklowob: seriously? the lottery has negative expectation, on average you lose money 22:16:53 ah postscript.. heh 22:16:55 no matter what you do 22:17:08 ais523: Once you've come back to where you started you know there's no 0 22:17:13 I'm sure oklowob's reality-warping properties can help there. 22:17:15 Deewiant: yep 22:17:18 ais523: yes, but it has a great standard deviation, and that's all that matters if you only live once 22:17:30 actually runtime specialising constants is a cool idea... 22:17:35 oklowob: err... but what if you lose rather than win? 22:17:38 that's more likely, after all 22:17:38 I was considering it for cfunge (seriously) 22:17:45 -!- tombom has joined. 22:17:56 I mean I can know if tracing is enabled once I parsed arguments 22:17:57 it's much more probably to become a millionaire playing lottery than playing a game with smaller prices and 99% expectation 22:18:00 *probable 22:18:11 oklowob: well, yes 22:18:17 but on average, you'll lose more than a million pounds trying 22:18:23 and you don't /have/ a million pounds 22:18:30 i won't live nearly long enough to use that much 22:18:42 i'll probably stop after losing a few thousand 22:18:44 No, but he weighs a million pounds 22:18:46 *rimshot* 22:18:51 that's a rubbish rimshot 22:18:56 but at least i've given perfect life a shot 22:19:06 I wouldn't say a million is enough for a perfect life nowaday 22:19:08 *nowadays 22:19:18 you'd be hard-pressed to buy a 1-bedroom house in Central London for that 22:19:40 Deewiant, iirc you reflect if you pass the edge at all? 22:19:43 in G I mean 22:19:55 Deewiant, I think that is what you made me implement as a result. IIRC 22:19:58 AnMaster: ah, but the code do 22:20:00 AnMaster: Possibly... that's a bug then ;-) 22:20:03 oops 22:20:09 Deewiant, you suggested that iirc. 22:20:09 sure is, you can get two pizzas every day just from the interest 22:20:10 :P 22:20:21 I meant, the problem of chache lines is analysed in the paper 22:20:27 AnMaster: Well, it's UNDEF as usual. 22:20:38 Deewiant: You could also argue that since G doesn't do space-suppression, passing the edge means you have to return an infinite string. 22:20:41 ais523: why would i want a bigger house than i have now 22:20:43 Deewiant, not going to be corrected for this version anyway 22:20:52 fizzie: Ah right, that'd explain why. 22:20:54 oklowob: not a case of bigger, it's a case of nearer 22:21:01 and not at today's interest rates you won't 22:21:05 yes 22:21:05 AnMaster: What fizzie said. 22:21:10 i just want to be able to universitize all my life 22:21:14 Deewiant, I reflect though 22:21:33 Well, Funge doesn't support infinite strings. 22:21:35 oklowob: you'd be hard-pressed even paying international university fees + accomodation on the interest from a million pounds 22:21:39 ais523: the uni is about 500 meters away 22:21:41 So reflecting is the only option. 22:21:42 ah, ok 22:22:27 international maybe not. finnish definitely yes. 22:22:30 Deewiant, indeed. Also you could argue that it was due to OOM. My computer doesn't support a string that is 2^31 chars (and even less 2^63) 22:22:31 Deewiant: You could fake it by marking that particular stack-stack to return 32 on underflow instead of 0. Although then there's y and such. 22:22:39 Deewiant, I have 1.5 GB RAM "only" 22:23:05 though you could write a bit at either extreme 22:23:06 fizzie: Heh. 22:23:06 I guess 22:23:31 AnMaster: And yes, that's exactly why. 22:23:54 Deewiant, anyway I think fizzie's explanation makes sense 22:24:03 which is why I will continue to reflect 22:24:39 Are you sure? You could save a few cycles by looping infinitely ;-) 22:24:50 hah hah 22:25:09 Deewiant, profiling doesn't show it as a major bottle neck currently 22:25:16 I prefer to spend time where it actually helps 22:25:29 AnMaster: For kicks you can try the 64-bit CCBI binary and see how slow it is 22:25:46 Deewiant, 32-bit or 64-bit funge space? 22:26:05 I'm not sure actually. Probably 32-bit. 22:26:07 int_fast32_t. 22:26:37 Deewiant, I thought it was D not C..? 22:26:53 AnMaster: I've told you many times before that the D standard libraries include the C standard library. 22:27:14 Deewiant, well here that ends up as 64-bit 22:27:18 On this box, based on a very cursory header-look, I've got an 8-bit int_fast8_t, and 64-bit in_fast{16,32,64}_t. 22:27:22 hope your y reflects that correctly Deewiant? 22:27:26 * ais523 wonders how easy it would be to write a Funge-98-like interp that gets a BAD on every single test in Mycology that it can without exiting, yet nevertheless manages to run through to the end 22:27:27 -!- GregorR has quit (Connection timed out). 22:27:31 -!- GregorR has joined. 22:27:36 AnMaster: Of course. 22:27:59 anyway that is plain wrong. 32-bit funge space is always faster for cfunge on x86/x86_64 22:28:02 ais523: Relatively easy. 22:28:26 ais523, there are a few tests you must do GOOD on to continue though 22:28:56 yes, I know, that's why I said "without exiting" 22:28:57 can someone link current mycology? 22:29:08 iki.fi/deewiant 22:29:11 even more interestingly, is it possible to fail sanity.bf yet pass mycology.bf? 22:29:17 ais523: No. 22:29:28 Archive: ccbi-linux-x86.zip 22:29:28 inflating: ccbi-linux/ccbi 22:29:28 replace ccbi-linux/changelog.txt? [y]es, [n]o, [A]ll, [N]one, [r]ename: y 22:29:30 Deewiant, very fun 22:29:35 try different directory names 22:29:45 No, that was intentional. 22:29:52 well, maybe it might fail on small files for some reason 22:30:23 Deewiant, you managed to get the +x bit correct this time. Congrats! 22:30:35 AnMaster: Well, I'm on Linux. 22:31:02 Also, it's 4 bytes here. 22:31:04 Deewiant: that's not current mycology, but thanks anyway 22:31:13 oklowob: It's close enough. 22:31:15 Deewiant, then D differs from C. 22:31:29 $ time ~/src/cfunge/trunk/other/ccbi/ccbi_linux/ccbi.32 mycology.b98 >/dev/null 22:31:29 real 0m0.631s 22:31:29 user 0m0.599s 22:31:29 sys 0m0.018s 22:31:42 time ~/src/cfunge/trunk/other/ccbi/ccbi_linux/ccbi.64 mycology.b98 >/dev/null 22:31:42 real 0m0.663s 22:31:42 user 0m0.612s 22:31:42 sys 0m0.038s 22:31:59 That's somewhat unexpected. 22:32:11 Deewiant, still quite a bit to go to reach even cfunge with full env and output to stdout 22:32:16 Deewiant: yes, that's why i thanked 22:32:34 -!- neldoret1 has joined. 22:32:35 Deewiant, when not redirecting ccbi to /dev/null I get times around real 0m0.812s 22:32:52 and 0m0.895s for the 64-bit one 22:32:54 got that's a lot of befunge 22:32:56 *god 22:32:59 I wonder why the 32-bit one is faster. 22:33:20 probably asked this, but is that time traveling thing tested? (TRDS?) 22:33:23 Deewiant, no idea. Maybe your compiler sucks? 22:33:27 oklowob: mycotrds.b98 is there. 22:33:30 ahhh 22:33:30 AnMaster: LLVM... 22:33:31 Deewiant, also didn't you test locally? 22:33:40 No, I didn't time them. 22:33:43 Deewiant, that should work well 22:33:45 llvm I mean 22:33:54 -!- revcompgeek has joined. 22:33:56 Deewiant, what CPU did you optimise for though? 22:34:06 Either my own or none? 22:34:10 for me you would need whatever means the same as GCC's -march=k8 22:34:17 I didn't pass any -march 22:34:21 well -march=k8 -msse3 22:34:22 even 22:35:24 For LDC it's -mcpu and not -march, evidently. In any case, I guess it's best to not do anything for public binaries. 22:36:38 Deewiant: I've just noticed something in your Mycology testing output 22:36:42 -!- neldoreth has quit (No route to host). 22:36:44 Deewiant, oh ok. I always do that when comparing. setting CFLAGS='-O3 -march=k8 -msse3' at least 22:36:49 you're marking programs as wrong when they claim the path separator is / on Windows 22:36:52 I have tested and found that: 22:36:57 ais523: Quite. 22:36:59 -O3 -march=k8 -msse3 -ftree-vectorise -DNDEBUG -pipe -fweb -ftracer -frename-registers -fprefetch-loop-arrays -fomit-frame-pointer -fmodulo-sched -fgcse-sm -fgcse-las -fgcse-after-reload -funsafe-loop-optimizations -fno-math-errno -fno-trapping-math -ftree-loop-linear -ftree-loop-im -ftree-loop-ivcanon -fivopts -fvariable-expansion-in-unroller -fbranch-target-load-optimize 22:37:01 works very well 22:37:05 yeah insane I know 22:37:08 modern Windows supports either / or \ as the path separator, certain methods of determining the separator on Windows give / as the output 22:37:10 because after all it works 22:37:11 that is gcc 4.1.2 too 22:37:38 ais523: It doesn't work in all contexts, which is why I'd prefer \. 22:37:54 \ doesn't work in all contexts either, IIRC 22:37:58 * AnMaster waits for anyone to comment on that list above... 22:37:59 AnMaster: I wonder how much difference the UPX compression makes? 22:38:01 ais523: Really? 22:38:05 AnMaster: For CCBI, that is. 22:38:09 Deewiant, oh that would slow down definitely 22:38:10 I'm not entirely sure, I haven't used Windows for ages 22:38:13 that is my experience 22:38:16 but if you're trying to create a file called CON or something 22:38:17 Deewiant, try removing that 22:38:17 AnMaster: Yes, but how much. 22:38:28 there's a trick involving multiple forwards slashes and various other incantations 22:38:31 Deewiant, I don't remember. time it yourself 22:38:39 Deewiant, I haven't used UPX for years 22:38:51 oh, apparently prefixing \\.\ works too 22:38:57 so maybe it can be done with just backslashes 22:39:08 AnMaster: I don't have cfunge to test against, since bzr is broken. 22:39:20 Deewiant, your bzr is broken? huh 22:39:28 Deewiant, even 0.92 should work iirc... 22:39:28 AnMaster: Not mine, all bzr are broken. 22:39:35 AnMaster: I posted the bug report earlier today. 22:39:35 -!- oerjan has joined. 22:39:36 Should've used ctdrl, eh? 22:39:37 Deewiant, what do you mean all bzr are broken? 22:39:45 Deewiant, how are they broken? 22:39:48 2009-03-28 15:15:34 ( Deewiant) Yay, bzr assumes that gethostname() returns ASCII 22:39:50 and which bug report 22:39:52 2009-03-28 15:16:48 ( Deewiant) https://bugs.launchpad.net/bzr/+bug/193089 22:39:52 ah 22:39:59 i spent all night optimizing PyFunge... (it's 6:30 AM here) it's now 20x faster than original. hmm. 22:40:06 Deewiant, err how does that affect cfunge? 22:40:19 AnMaster: It means that no matter what bzr command I run it crashes at start. 22:40:32 $ host 67.202.82.20 22:40:32 20.82.202.67.in-addr.arpa domain name pointer rage.kuonet.org. 22:40:39 oh you mean local host 22:40:40 right 22:40:41 AnMaster: My hostname, not yours. 22:40:50 * oerjan ponders an alternative way of making unlambda palindromes 22:41:05 AnMaster: -mcpu=core2 made practically no difference for CCBI here, maybe 0.01s. 22:41:09 Deewiant, Read the last comment to that bug 22:41:13 Deewiant, I don't have a core2 22:41:25 AnMaster: Yes, but I do, my point being that the difference is likely to be small. 22:41:30 Deewiant, anyway for cfunge -msse3 does make a difference since I use -ftree-vectorise 22:41:41 AnMaster: Yes, I read it and laughed: "we should probably" a year ago. 22:41:45 how can every bzr everywhere be broken 22:41:52 surely they wouldn't have pushed an update that didn't work? 22:41:55 Deewiant, hm 22:42:03 ais523: A bug tends to affect all binaries, not just one. ;-) 22:42:18 Deewiant: I mean, why didn't they test before distributing the binaries? 22:42:20 ais523: Of course, whether that bug affects you or not depends on various things, but the bug still exists. 22:42:24 ais523, it is broken when you have a hostname like ööö.lan 22:42:26 or such 22:42:27 Deewiant: I hate to say it, but I think it's your fault for having a "funny" hostname. 22:42:34 it's not "why does the bug affect all binaries", but "why did they let everyone have a buggy binary" 22:42:42 Deewiant: is the non-ascii hostname common btw? 22:42:45 ais523: Bugs happen, you can't fix them all. 22:42:47 lifthrasiir: I doubt it. 22:42:54 fizzie: Yeah, I figured someone would say that. :-P 22:42:57 lifthrasiir: does PyFunge pass Mycology yet? 22:43:00 ais523: Yes. 22:43:02 Deewiant, actually is that even valid? I mean DNS uses the odd -- notation for a reason 22:43:03 ... 22:43:10 AnMaster: No reason why it shouldn't be. 22:43:15 I have to agree with fizzie here 22:43:16 ais523: I'll test. 22:43:23 test with it.* 22:43:52 Deewiant, anyway, fix your hostname I'd say 22:44:06 AnMaster: I don't want to. 22:44:16 um i thought there was international agreement that unicode hostnames were to be made legal 22:44:18 Deewiant, I think it isn't valid currently. 22:44:35 It's not a valid DNS name as-is, but I don't see why it couldn't be a hostname. 22:44:36 oerjan, err what about the punnycode thing or whatever the name was. 22:44:41 AnMaster: I'd rather that programs wouldn't do stupid things like crash on non-ASCII. 22:44:53 anyway why should it care about encoding at all 22:44:57 Exactly. 22:44:59 it is just bytes for gods sake 22:45:02 oh wait 22:45:02 Exactly! 22:45:04 it is python 22:45:09 AnMaster: i didn't read the conversation 22:45:10 AnMaster: It is also X.org and KDE. 22:45:11 it is a high level unicodeish stringy 22:45:15 Well, they need to show the bytes to the user. 22:45:16 Deewiant, err? 22:45:20 Deewiant, they crash too? 22:45:21 AnMaster: Two other things that have broken. 22:45:33 Or I'm not 100% sure about KDE. 22:45:39 fizzie, that's up to the terminal! 22:45:49 Deewiant, how should the system know what encoding is used 22:45:51 it can't 22:45:52 But 'iceauth' in X.org had a completely pointless isascii() check for the whole of the hostname. 22:45:55 AnMaster: Locales! 22:46:11 Deewiant, well I use sv_SE locally on some system that has en_US for root 22:46:14 where I don't have root 22:46:22 If you want locales, then gethostname should return the name in the current ctype. 22:46:23 In any case, Postel's law, for crying out loud. 22:46:23 Deewiant, still think locale makes sense? 22:46:31 AnMaster: Yes? 22:46:37 Deewiant, the locale that root user could differ from the user locale 22:46:39 Deewiant: well... it seems to be unbuffered I/O still get BAD 22:46:40 that is even common 22:46:44 AnMaster: So use the root user's locale? 22:46:48 lifthrasiir: O_o 22:46:54 lifthrasiir: It shouldn't, I tested it 22:46:58 message has been changed but condition looks same 22:47:02 Deewiant, how would you be able to find that in a distro independent way? 22:47:03 you can't 22:47:05 Deewiant: by the way, are you planning to get comparisons between Befunge-93 interps using Mycology-93? 22:47:07 hmm... starnge. 22:47:12 ais523: Nope. 22:47:16 ais523: Most of them work. 22:47:17 Deewiant, your idea just doesn't work. 22:47:20 period. 22:47:21 Deewiant: well, I suppose so 22:47:28 there are lots of fun corner cases in -93 too 22:47:33 AnMaster: Is there no way to find it out? 22:47:39 for instance interfunge crashes if given a program bigger than 80x25, rather than trimming it 22:47:45 but I think that's legit behaviour 22:47:55 Deewiant, well you could have a list of distros and try to find the relevant file in /etc, which varies between distros 22:48:00 some might not even have it there at all 22:48:04 AnMaster: And in any case, how likely is it that you run sv_SE.iso88591 under en_US.utf8 or whatever 22:48:05 but I don't think that is a good idea at all 22:48:16 Deewiant, the opposite happened though 22:48:45 AnMaster: In which case there'd be no special characters in the hostname since it's en_US :-P 22:48:53 Deewiant, fr_CA.isowhatever for system and locally I used sv_SE.utf8 22:49:02 O_o 22:49:02 now that could have odd chars 22:49:29 Deewiant, I don't even remember what distro it was, it might have been bsd even 22:49:42 Deewiant, anyway point is you can't really solve this 22:49:50 so I'd say: tough luck 22:49:51 iconv exists. 22:49:59 Deewiant: http://pastie.org/430096 22:50:13 Deewiant, how can you figure out what encoding is used?... A lot of strings could be several 22:50:19 Personally I would really not rather mix up gethostname and locales. 22:50:24 fizzie, same 22:50:32 I'd say "not a bug" for that bzr bug 22:50:36 if I was a developer 22:50:36 -!- revcompgeek has left (?). 22:50:40 (of bzr) 22:50:42 it screwed stack and terminates early. 22:50:47 lifthrasiir: So what's your 1y pushing?? 22:51:03 the former is 0x01, the later is 0x11 22:51:16 Deewiant, did you fix that incorrectly? heh 22:51:24 as in change the text but not the check 22:51:26 AnMaster: Well, it was already broken. 22:51:34 AnMaster: No, I'm not that stupid. :-P 22:52:15 * lifthrasiir analyzes the forest of funge codes 22:52:18 lifthrasiir: What exact value? 0b10011? 22:52:22 That this Funge has 1 dimensions 22:52:24 BAD: should be 2, or we wouldn't have got this far 22:52:26 beautiful 22:52:28 Deewiant: yes 22:52:37 ais523, it is off by one in the stack 22:52:47 AnMaster: ah, ok 22:52:49 Deewiant, he already said 0x11 22:52:53 still a beautiful error message though 22:52:54 They still could easily make the bzr code not *crash* when given strange bytes from gethostname, and that way make it more robust. 22:53:00 AnMaster: Right, x and not b 22:53:03 Misread 22:53:25 Deewiant, you should be able to convert that to binary easily :P 22:53:40 I'm no good at reading hexadecimal 22:53:49 00010001 22:53:54 I'm pretty good at reading hex 22:53:58 1> io:format("~.2B~n", [16#11]). 22:53:58 10001 22:54:03 that is what I would do 22:54:15 erlang rocks for working with unusual bases for numbers 22:54:25 "bc" works for that too. 22:54:31 Gah, now it works only for 0b11111 or anything below 0b10000. 22:54:44 Deewiant, how did you manage that? 22:55:05 I don't know, but I have a hunch. 22:55:22 I wonder why q(). in erlang returns you to a prompt and then quits about a second later 22:55:33 I guess it is async but it seems a bit weird 22:55:45 (also that is just a erlang shell mapping to init:stop() iirc) 22:56:23 -!- kar8nga has quit (Remote closed the connection). 22:56:54 Man, this piece of code is starting to annoy me. 22:56:57 Deewiant, interesting hostname btw. Why did you select that? 22:57:02 This is like the 20th time I've fixed it. 22:57:19 Deewiant, test it for all possible combinations. There aren't that many 22:57:20 AnMaster: Is it visible somewhere? 22:57:39 Deewiant, it says "bartimäus" in https://bugs.launchpad.net/bzr/+bug/193089 yes 22:57:39 ... 22:57:43 AnMaster: Yes, I know, the problem is more fixing it. 22:57:46 AnMaster: Not my bug report. 22:57:49 oh 22:57:55 Deewiant, I thought you said it was? 22:58:01 You thought wrong. 22:58:05 Deewiant, so what is your host name then? 22:58:14 Does it matter? :-P 22:58:40 Deewiant: Yes. If it's sufficently funny, we might let you keep it. 22:58:49 Deewiant, anyway my plan is to release cfunge 0.4 on Monday. Just FYI. 22:58:54 I'm going to keep it anyway and bitch at broken programs 22:59:08 POSIX gethotname just says it returns a null-terminated array of bytes, and does not specify any limits except a maximum length of HOST_NAME_MAX bytes, so we don't even have the law on our side, really. 22:59:21 gethotname? 22:59:22 :D 22:59:32 s/hot/host/ 22:59:38 Heh, that would be a useful library function. 22:59:45 :D 22:59:53 I could just call gethotname() when I need a name for a project. 23:01:05 host names are defined as "network host names" it seems 23:01:18 Yes, but that does not really imply any rules. 23:01:58 The 'nodename' field for uname is defined to "contain the name of this node within an implementation-defined communications network". 23:02:45 And anyway, you could argue that it's legal and sensible to have a (say, UTF-8) hostname and a punycoded unicode-DNS-name pointing at that host. 23:04:12 I wouldn't, though. 23:05:36 OS X probably has a reasonably well-defined encoding for the host name, actually; and I'm sure non-ascii names are far more common there, since it's very logical to write funny characters in pretty dialogs. 23:05:52 "it's very logical to write funny characters in pretty dialogs" 23:05:53 haha 23:05:55 why 23:05:56 ? 23:06:02 Windows also. 23:06:22 AnMaster: Well, I guess his point was that command line users know to be careful with non-ASCII. 23:06:27 With an interface that pretty, I personally would have the feeling that it's okay to stuff unicode in. 23:06:59 Though gethostname() on OS X seems to do some sort of magic related to reverse-lookups and whatnot, based on the fact that the hostname shown in bash prompt tends to change when I connect to different wlans and such. 23:07:14 While the defined-in-the-pretty-dialog "computer name" does not. 23:07:37 Still, I'd guess it uses that name *somehow* if there's no network connection. 23:11:44 On that system the hostname corresponds to a kern.hostname sysctl entry, but I can't find any documentation about what "string" there means, encoding-wise. Just the property names are specified to be ASCII. 23:13:00 "hostname shown in bash prompt tends to change when I connect to different wlans and such" 23:13:03 how irritating 23:13:13 fizzie, that would seriously suck 23:13:16 Heh, Linux sysctl syscall manpage: "Glibc does not provide a wrapper for this system call; call it using syscall(2). Or rather... don’t call it: use of this system call has long been discouraged, and it is so unloved that *it is likely to disappear in a future kernel version*. Remove it from your programs now; use the /proc/sys interface instead." 23:13:20 I hope you can turn it off 23:13:41 I haven't seen how to turn it on, but generally most things tend to be possible. 23:13:44 fizzie, yeah because it was a pain to maintain iirc 23:14:08 fizzie, for gentoo just tell dhcpcd to not accept hostname 23:14:31 fungot: show me some nonsense 23:14:32 ais523: mine*: made by the way. it captures its prey by remaining very still and blending into the dust; the red marble table in front of him does not imply being happy and that another covered his ears, and elrond their child. ( knight of the tatra mountains. 23:14:33 config_eth0=( "dhcp" ) 23:14:33 dhcp_eth0="nodns nontp nonis nosendhost" 23:14:42 well 23:14:45 nodns isn't for that 23:14:56 it is because I have a local caching dns server 23:15:23 fungot, nethack? 23:15:23 AnMaster: trolls are born again. 23:15:31 hehe 23:15:33 ^style 23:15:33 Available: agora alice darwin discworld europarl ff7 fisher ic irc lovecraft nethack* pa speeches ss wp 23:15:34 direct quote? 23:15:38 ^style nethack 23:15:38 Selected style: nethack (NetHack 3.4.3 data.base, rumors.tru, rumors.fal) 23:15:40 about trolls 23:15:40 Quite probable. 23:16:06 rumors.fal:They say that most trolls are born again. 23:16:59 I'm not sure why that's classified as a false rumor, since I think trolls do revive? Unless you do something to the corpse, anyway. 23:17:09 lifthrasiir: Mycology should be fixed now. 23:17:15 thanks 23:17:22 :) 23:17:33 I didn't try all 32 permutations but it really should work this time. :-P 23:17:57 That wikia-nethack-thing has some very "practical" methods for troll removal: "Completely fill the level with monsters so that the troll has nowhere to revive." 23:18:12 lifthrasiir: Does it work now? 23:19:20 nighr 23:19:22 night* 23:19:24 night 23:19:39 http://mailman2.u.washington.edu/pipermail/alpine-info/2008-September/001220.html says that iPhones can have UTF-8 hostnames. 23:19:53 fizzie: well, that's the only known way to get rid of the Horsemen of the Apocalypse 23:19:59 so you may as well kill spare trolls while you're at it 23:20:02 ais523: `?d`?c`?d`?c`?d`?c`?d``v````````````.H.e.l.l.o.,. .W.o.r.l.di`d```````````````d`id.l.r.o.W. .,.o.l.l.e.H.````````````v``d?`c?`d?`c?`d?`c?`d?` 23:20:12 Alternative method 23:20:31 oerjan: what does `?d do if you've never input anything? 23:20:37 Deewiant: well, this time it doesn't work correctly with buffered i/o... :S 23:20:50 Sigh. 23:20:50 same as no match, iirc 23:20:54 lifthrasiir: Which bit pattern? 23:21:00 also, you're rather taking advantage of the fact that hello world ends in a legal Unlambda comman 23:21:02 *command 23:21:02 "Death farming", what an amusing concept. 23:21:06 i'm testing with all possible 32 combinations. 23:21:10 fizzie: fastest way to score points 23:21:26 ais523: yes, but i explained on the wiki the substitution we discussed 23:21:46 lifthrasiir: Oh, wait, you're right, it doesn't work here either. O_o 23:21:56 I think I'm just too tired, I shouldn't be doing this now. :-P 23:22:10 ais523: It still sounds hilarious. "If the number of death-dropped items exceeds 32,767 on the same square, the game will probably crash, so periodically checking Death's square and redistributing the items (possibly by teleporting them away, or polymorphing them together) is necessary." 23:22:18 Well, looks like it just broke the stack, the test itself works. 23:22:44 oerjan: really? I see in the recent changes log your solution, but not an explanation of it 23:22:46 as for taking advantage, i have a feeling it should be possible for this particular case to do some of the work in the padding, e.g. by starting with `.d 23:22:48 should I look at the actual page? 23:23:16 um last line 23:23:23 it mentions the substitution 23:23:27 yes the test works. sanity test (is it less than 32?) is also okay. 23:23:37 of course i don't use it here because it's unnecessary 23:24:11 There's a 0 on the stack; where is it coming from, I wonder? 23:24:32 * lifthrasiir wonders if some crazy interpreter returns negative number for 1y 23:25:00 lifthrasiir, I do in efunge for size of cells. Since it use bignums I just say -1 23:25:00 are you using `vd`padding to get rid of the padding? 23:25:04 but not 1y 23:25:14 is that 2y? 23:25:17 anyway 23:25:21 lifthrasiir, don't remember 23:25:26 ais523: um neither wiki example avoids the padding 23:26:26 but if i were to let the padding do work then it would have to be v d based rather than e of course 23:26:41 using e is cheating 23:26:48 you think so? :D 23:27:00 cheating in esolangs is generally allowed, though 23:27:08 (_a)0*= does nothing, right? 23:27:13 it has the advantage that you return the right evaluated result 23:27:18 Would (_a)0= make _a hold a pointer? 23:27:38 lifthrasiir: Now at last?? 23:27:42 http://qoid.us/cgi-bin/scribd.cgi 23:27:44 thoughts 23:27:52 -!- tombom has quit ("Peace and Protection 4.22.2"). 23:27:55 Deewiant: mycology updated? 23:27:58 Yes 23:28:26 ais523: until today i thought it couldn't be done without e 23:28:54 uugh... 23:28:54 since the padding must start with `. or `?, and without e there is no way to avoid applying those 23:29:26 because you'd get spurious printing? 23:29:26 you may be able to do it with k and d, actually 23:29:26 (well, for general programs. since Hello, world ends with d that might still work 23:29:27 not needing v 23:29:32 lifthrasiir: That doesn't sound good ;-P 23:30:07 Deewiant: it now screws the stack for 16(0b10000) to 31(0b11111)... i think. 23:30:18 But the previous one didn't? 23:30:18 um well since ?x without a previous @ always applies to v .... 23:30:34 -!- swistakm has joined. 23:30:40 Hmm, you're right, why did that change do that 23:30:50 -!- calamari has joined. 23:30:53 I thought this code wasn't even run for that case :-/ 23:31:10 Oh, aha 23:31:13 Here we go 23:31:18 Now /this/ better work 23:32:03 lifthrasiir: Uploaded 23:32:34 now if it was possible to avoid both ?x and e altogether we might have an 1.0 solution 23:33:51 Deewiant: still same. ...well do i have the most recent version? 23:34:26 Ah, that's another one where 0b11111 works but not any other unbuffered one 23:34:33 How do I manage this? :-P 23:35:28 I blame all my troubles on zero-terminated strings 23:35:30 heh. 23:35:47 Deewiant: what do you use when editing funge code? 23:35:51 what editor* 23:35:55 Seriously, for the past 15 minutes all I've been doing is trying to zero-terminate a string 23:35:58 lifthrasiir: vim 23:36:05 just vim? 23:36:08 Yep 23:36:18 * SimonRC recalls a trefung editor written in trefunge somewhere 23:36:19 O_O 23:36:25 Yep 23:36:33 I forget what it's called but it should be googlable 23:37:01 lifthrasiir: Perhaps now? 23:37:17 well... it may be GLFunge editor mode. 23:37:53 lifthrasiir: And what do you use, then? 23:38:28 Deewiant: okay! it works correctly. 23:38:35 Finally! 23:38:48 (i tried some of combinations and all works) 23:38:55 Annoying piece of string-printing code that can be entered from four different contexts :-P 23:39:04 I don't think there is such a thing as a GLfunge editor mode. 23:39:34 Although certainly there was a vision of one. 23:40:06 i just looked up man pages from google, so obviously i don't know whether it is implemented. 23:40:15 fizzie: It has a command line option for editor mode, but it doesn't seem to do anything 23:40:28 Deewiant: Heh, that's sad. 23:40:32 lifthrasiir: There are two Befunge editors, both of which crash quite early in Mycology 23:40:44 ooh. 23:40:44 Deewiant: huh? 23:40:53 SimonRC: Huh? 23:41:06 M0ny, huh ? 23:41:07 I thought mycology was a test of interpreters, not an interpreter itself 23:41:26 Yes, it is 23:41:32 By 'Befunge editor' I meant 'Befunge editor' 23:41:36 Not 'editor written in Befunge' 23:41:53 it could be both 23:42:01 Or strictly speaking 'Befunge editor with bundled interpreter', I guess. What other use would a Befunge editor be? 23:42:03 Deewiant: Your "Befunge editor" seems to imply that the editor is also capable of interpreting. 23:42:13 fizzie: And yes, that's what I implied. 23:42:25 Deewiant: well, it could invoke a seperate bef terp 23:42:29 !glass {M[m (_t)(_o)O!(_t)(_o)o.?]} 23:42:30 emacs-style 23:42:40 ..why didn't I get a response? 23:42:46 For Trefunge, a good editor even without a bundled interp might be good. 23:42:53 -!- ehird has left (?). 23:42:54 SimonRC: But what kind of stuff could it do without builtin functions that practically make it an interp? 23:42:58 Ooh, the glfunge98 sourceforge page has a very old, very non-working email address, too. Must be why I get no feedback. 23:43:03 !glass {M[m(_o)O!"Test"(_o)o.?]} 23:43:16 !glass {M[m(_o)O!"Hello World!"(_o)o.?]} 23:43:22 Is the interpreter here? 23:43:24 Hmm, GLfunge98 segfaults on mycology 23:43:31 Deewiant: well, defaulting to overstrike mode, and moving rectangles around easily 23:43:31 Deewiant: That's unsurprising. 23:43:33 This may or may not be known. 23:43:39 what's glfunge98 like? 23:43:43 ais523: Horrible. 23:43:44 Sgeo: no 23:43:44 Old, mostly. 23:43:45 they would apply to any grid language, not just befonge 23:43:46 egobot left years ago 23:43:55 :( 23:44:00 How do I test my glass then 23:44:02 SimonRC: Most decent editors can do that. 23:44:13 And I actually prefer not being in overstrike mode most of the time. 23:44:15 Deewiant: how do you make vim do it? 23:44:29 SimonRC: Replace mode for the former and visual block mode for the latter. 23:44:38 Deewiant: Do you use the virtualedit thing? 23:44:53 fizzie: Yes. 23:44:57 oerjan, are there any Glass interpreters? 23:45:00 virtualedit=block,onemore IIRC. 23:46:13 -!- swistakm has quit ("Lost terminal"). 23:46:16 Deewiant: well I never knew visual block did that 23:46:49 -!- ehird has joined. 23:46:53 a 23:47:01 b 23:47:07 cz 23:47:41 good move 23:47:53 mood gooveee'z 23:48:21 -!- swistakm has joined. 23:48:57 I think I wrote a bit of Glass-to-Java compiler, but I'm not sure how finished it ever was. Probably not very. 23:49:52 Hm http://esoteric.voxelperfect.net/files/glass/ 23:49:53 also lol@okloplottery 23:49:58 swistakm: hi. you new? 23:50:12 ehird: swistakm was in #IRP, looking for information 23:50:13 ehird: yes 23:50:25 swistakm: welcome 23:50:57 14:19:06 I wouldn't say a million is enough for a perfect life nowaday 23:51:01 depends on your definition of perfect life 23:51:05 who would want to live in london? :-) 23:51:05 well, yes 23:51:09 and heh 23:51:10 wow, there's still someone in #IRP? 23:51:13 Sgeo: I have here glass-0.{9,10,11}.tar.bz2 (the remains of that broken befunge.org link in the esolangs wiki, I let the domain expire) but if that place has glass-0.12.tar.bz2, I guess that's not very useful 23:51:37 lament: not only that, several people in #IRP 23:51:38 * Sgeo blames fizzie 23:51:48 (your reaction seems typical of #esotericers, though) 23:52:00 #IRP's like alt.lang.intercal; still read-active, but people rarely speak there 23:52:09 yeah we higher #esotericians are full of disdain for the hoi polloi #IRP 23:53:33 -!- swistakm_ has joined. 23:53:47 i can't believe the lottery is so popular in the uk 23:53:51 do people have no brains?! 23:54:00 Looking at the topic, I had a sudden urge to set it "it's been [0] days since the topic was last changed", and tell you to keep it updated. 23:54:18 they don't even guard the stupidity of it behind some stupid game 23:54:23 which is common enough 23:54:42 ehird: some people have brains. They make loteries 23:54:48 ehird: wanna play a game? 23:54:53 lament: no :) 23:54:55 ehird: if you give me $100, there's a chance i'll give you $1000000 back 23:55:04 lament: and this chance is? 23:55:16 ehird: I dunno, the lottery isn't that sutpid 23:55:21 if it's something like 7 gajillion to one consider me uninterested 23:55:22 ehird: i can't quantify it exactly. It's quite small. 23:55:34 utility isn't linear with amount of money, y'know 23:55:35 It depends on the number of tickets sold. 23:56:07 SimonRC: the fact is that lottery players (and I generalize here because the winners are few enough to be statistically insignificant) waste one pound a week continuously 23:56:23 or is it £2? 23:56:29 let's just say the return expectation value is positive for one of us 23:56:54 OTOH, it is wise to buy one's lottery ticket as late as reasonably possible 23:57:07 SimonRC, hm? 23:57:12 just like ebay auctions 23:57:14 to reduce the chance of being killed in a road crash below that of winning, or whatever 23:57:25 haha 23:57:36 reminds me of Sgeo's time traveling computer 23:57:37 * SimonRC can't recall that actual time 23:57:39 SimonRC, so basically, if you get killed, you won't have wasted the lottery ticket money 23:57:43 ? 23:57:46 ehird: are you risk-neutral? 23:57:54 Sgeo: yeah, I think 23:58:22 lament: it depends. 23:58:22 and there are silly things like a cab to the airport being far more dangerous than the airplane ride itself 23:58:31 I may be mis-remembering 23:58:43 more risk averse than seeking, in general 23:59:05 Which death sounds better: The death being on the national news (airplane), or local news (cab ride)? 23:59:14 ooh, dunno 23:59:28 err, why the fuck does it matter, I'm dead :D 23:59:58 isn't buying lottery tickets the risk-averse thing to do?