00:00:04 <Vorpal> elliott, same for apple partition map
00:00:14 <elliott> Vorpal: Meh, few lines in ~/.kerntoolrc and a single command.
00:00:15 <Vorpal> and EFI GUID thingy is potentially useful
00:00:23 <Vorpal> elliott, they are not modules
00:00:25 <elliott> Vorpal: Default kernel is meant to be small and without any crap; cover 90% of things. :p
00:00:31 <elliott> Vorpal: kerntool rebuilds the kernel.
00:00:51 <elliott> "kerntool install" downloads it, applies the -ck patchset, copies the default Kitten kernel configuration, applies your settings, builds it, and installs it.
00:01:11 <elliott> (In fact the default kernel does not even have module support, but it is of course easy to enable it for proprietary graphics card drivers.)
00:01:33 <elliott> │ Minix is a simple operating system used in many classes about OS's. │
00:01:33 <elliott> │ The minix file system (method to organize files on a hard disk │
00:01:33 <elliott> │ partition or a floppy disk) was the original file system for Linux, │
00:01:33 <elliott> │ but has been superseded by the second extended file system ext2fs. │
00:01:38 <elliott> I like how it doesn't even bother to mention the heritage.
00:02:22 * elliott compiles client support but not server support
00:02:43 <elliott> Ugh, SMB, CIFS, blah de blah.
00:03:22 <Vorpal> elliott, many will want CIFS
00:03:29 <elliott> Vorpal: Yeah, I'm leaving it in.
00:03:32 <Vorpal> elliott, did you enable plan9 resource sharing?
00:03:47 <elliott> I haven't got to that yet I think, but I will enable it. :P
00:03:50 <Vorpal> elliott, no one uses it
00:03:55 <elliott> Vorpal: No, but I like it, you see.
00:04:06 <elliott> Vorpal: And it actually works without interfering with other stuff.
00:04:07 <Vorpal> elliott, also it is very experimental iirc
00:04:12 <elliott> Unlike ACLs which are a pain to implement.
00:04:18 <elliott> Vorpal: Er, no, it's a merging-in of a third-party 9P implementation.
00:05:21 <elliott> Vorpal: Anyway, I'm tempted just to chop all NFS stuff, and have a kerntool option "nfs = true" or whatever that enables NFS and CIFS.
00:05:30 <elliott> Because really, nobody sane wants to use NFS. :-)
00:05:42 <Vorpal> cifs should not be in nfs = true
00:05:54 <elliott> Vorpal: It's inside the NFS hierarchy in Kconfig.
00:06:05 <Vorpal> elliott, not in menuconfig
00:06:12 <elliott> Vorpal: (Anyway, if it's literally just turning on configuration options, it'll be SOME_UPPERCASE_THING=true or whatever.)
00:06:17 <elliott> Lowercase is kerntool shortcuts.
00:06:28 <elliott> │ │ [*] Network File Systems ---> │ │
00:06:29 <elliott> │ │ [*] CIFS support (advanced network filesystem, SMBFS successor)│ │
00:06:32 <elliott> Where second is inside firt.
00:06:41 <Vorpal> "network file system*s*"
00:06:42 <elliott> I consider Network File Systems the NFS section. :p
00:07:04 <Vorpal> elliott, needed for blktrace
00:07:07 <elliott> Kernel debugging... uh, no.
00:07:21 <elliott> But not CONFIG_DEBUG_KERNEL!
00:07:29 <Vorpal> elliott, and kernel debugging options too. Seriously. Otherwise no powertop iirc
00:07:38 <elliott> │ Enable this for additional checks during memory initialisation. │
00:07:43 <elliott> I refuse to accept *any* reason to keep this.
00:08:17 <elliott> Schedule debugging info, no.
00:08:20 <elliott> That's Con Kolivas' problem.
00:09:01 <elliott> Vorpal: I don't need to enable building with -g, right?
00:11:39 -!- Mathnerd314 has quit (Ping timeout: 252 seconds).
00:15:54 <elliott> todo: probably make this Y
00:31:50 <elliott> Vorpal: linux's configuration options is what happens when you and zzo38 team up to write a kernel's configuration options.
00:35:57 <elliott> olsner: would you appreciate it if i wrote up how my paging system works in my head tomorrow?
00:36:24 <elliott> olsner: I also realised that it's not 4 exposed kernel functions, it's actually 3; alloc-page is just grant-page with a NULL page argument, really.
00:42:08 -!- augur has joined.
00:52:58 <elliott> I estimate I'm something like 50% of the way to the final configuration.
00:53:04 * elliott builds the kernel to take a look at the resulting size.
00:53:16 <elliott> Haven't disabled many pointless device drivers yet, so...
00:53:28 <elliott> Using LZO because it decompresses fast, too, so it'll be bigger than strictly necessary.
00:55:48 <elliott> Why is AFS building... todo: fix that.
00:56:01 <elliott> Heh, looks like I forgot to cut out NFS.
00:56:19 -!- Sasha2_ has quit (Read error: Connection reset by peer).
00:56:44 -!- Sasha has joined.
01:10:30 -!- iconmaster has joined.
01:11:16 -!- iconmaster has quit (Client Quit).
01:15:49 -!- elliott has quit (Quit: Leaving).
02:49:07 -!- pikhq has joined.
02:49:30 -!- perdito|afk has quit (Ping timeout: 252 seconds).
02:55:18 <Gregor> Y'know, I feel that a proper Android X11 server should be feasible.
02:56:09 <Gregor> If it's possible to create a window that's full screen and reads mouse position, but never updates the screen, then it's relatively easy.
02:56:26 <Gregor> Just need to push those mouse events into a real X server and make it use standard fbdev.
02:56:54 <Gregor> (Well, all the Android systems I have use standard fbdev anyway ...)
02:57:28 <Gregor> Just need to prevent Android from gettin' in the way :P
03:01:17 -!- wareya has joined.
03:04:42 -!- wareya_ has quit (Ping timeout: 272 seconds).
03:28:41 -!- Sasha has quit (Read error: Connection reset by peer).
03:30:00 -!- Sasha has joined.
03:51:51 -!- GreaseMonkey has quit (Quit: ilua).
04:04:39 -!- GreaseMonkey has joined.
04:04:44 -!- GreaseMonkey has quit (Changing host).
04:04:44 -!- GreaseMonkey has joined.
05:01:05 -!- perdito has joined.
05:46:50 -!- GreaseMonkey has quit (Ping timeout: 272 seconds).
06:06:47 -!- GreaseMonkey has joined.
06:08:42 -!- sftp has quit (Remote host closed the connection).
06:13:33 -!- perdito has quit (Ping timeout: 252 seconds).
07:02:55 -!- oerjan has joined.
07:03:29 -!- Sgeo_ has quit (Read error: Connection reset by peer).
07:31:06 * oerjan doesn't like the temperatures in the weather forecast
07:31:55 -!- poiuy_qwert has quit (Quit: This computer has gone to sleep).
07:32:27 <oerjan> (-10 .. -20 celsius. of course the canadians and minnesotans are probably laughing at this.)
07:33:31 <fizzie> I don't like the temperatures in the temperature-o-meter here. I mean, thermometer. (Okay, so -13 degrees Celsius is not so cold in an absolute sense, but it always feels colder at the start of winter.)
07:33:53 <oerjan> oh i forgot the finns are laughing too :D
07:34:33 <fizzie> The five-day forecast says -22 on Tuesday morning.
07:34:58 <fizzie> It could be lying, of course; it often is.
07:35:04 <oerjan> i only looked at a three-day forecast, maybe it'll dip below -20 here too
07:37:06 -!- MigoMipo has joined.
07:43:26 -!- MigoMipo has quit (Read error: Connection reset by peer).
07:44:17 -!- Goosey has joined.
07:45:53 -!- Goosey has quit (Remote host closed the connection).
07:52:57 <pikhq> oerjan: That's pretty fucking cold by my standards.
07:54:08 <pikhq> Low of about -12°C here...
07:55:29 <oerjan> well but i have my usual winter clothes. -20 is about when it starts getting uncomfortable even wearing those.
07:56:14 <pikhq> 0°C is where I start refusing to go outside for longer than it takes to make it to or from my car.
07:56:40 <oerjan> heh, that's about when i start putting on the winter clothes in the first place
07:57:26 <oerjan> actually the knitted cap and scarf go on earlier.
07:59:11 <oerjan> my neck cannot stand much cold wind at all
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:01:58 * oerjan looks at yesterday's xkcd and thinks "nice try sir, but you are _not_ fooling me into looking at wikipedia's necrosis article"
08:07:51 <olsner> last february it went all the way down to -30 though
08:23:44 <fizzie> ",axo,i,öoleöohppd H;; traomomg" -- that's one impressive way to typo "maximum-likelihood training".
08:23:56 <fizzie> Sorry, "maximum-likelihood HMM training".
08:24:21 <olsner> it's just an off-by-one
08:25:00 <fizzie> Not completely; you can't get - into ö by being off-by-one to the same direction as m to , and the rest.
08:27:28 <oerjan> surely the ö corresponds to an l
08:27:33 <fizzie> Oh, I see, I just dropped the -; must be it was off-by-one to the same direction, just that it hit to a shift.
08:29:24 <oerjan> ,axo,i,øoleøojppd J,, traomomg
08:29:43 <oerjan> somehow you got the H right
08:30:13 <olsner> maybe someone just touchtypes h's incorrectly
08:38:57 <fizzie> I think my typing is a bit context-sensitive.
08:39:59 <fizzie> Not so sure: I haven't learned things in any systematical way.
08:52:15 <oklopol> i like "water expands to frighten predators"
08:54:25 <oerjan> so basically rising oceans are due to too many sharks
08:55:37 -!- ais523 has joined.
08:58:30 <oklopol> i think sharks aren't any more dangerous to water than other fish
08:59:02 -!- ais523 has quit (Excess Flood).
08:59:04 <oklopol> assuming water hates being in the digestive system
08:59:19 -!- ais523 has joined.
08:59:19 <oklopol> it's possible it actually procreates that way tho
09:01:23 -!- oerjan has quit (Quit: Reboot).
09:03:37 -!- oerjan has joined.
09:10:18 -!- ais523 has quit (Remote host closed the connection).
09:12:21 -!- perdito has joined.
09:14:55 * oerjan throws apples at perdito
09:15:54 -!- MigoMipo has joined.
09:20:45 -!- ais523 has joined.
09:28:11 -!- oerjan has quit (Quit: leaving).
09:28:43 -!- ais523 has quit (Read error: Connection reset by peer).
09:30:24 -!- ais523 has joined.
09:47:06 <Vorpal> elliott (for log reading): I started work on a minecart station near spawn: note it is in cobble because stone would be pointless atm since I suspect I will have to change it several times over. Going offline for a bit, have other stuff I need to do.
09:57:46 -!- ais523 has quit (Remote host closed the connection).
10:10:36 -!- perdito has quit (Ping timeout: 252 seconds).
10:27:17 -!- MigoMipo has quit (Read error: Connection reset by peer).
10:44:52 -!- GreaseMonkey has quit (Quit: ilua).
10:58:30 -!- perdito has joined.
11:00:09 -!- ais523 has joined.
11:11:06 -!- ais523 has quit (Remote host closed the connection).
11:11:21 -!- ais523 has joined.
11:40:33 -!- oerjan has joined.
11:50:40 -!- atrapado has joined.
12:38:45 -!- Mathnerd314 has joined.
12:46:57 -!- elliott has joined.
12:58:44 -!- Phantom_Hoover has joined.
12:59:26 -!- atrapado has quit (Quit: Abandonando).
13:18:25 -!- Mathnerd314 has quit (Disconnected by services).
13:18:40 -!- Mathnerd314_ has joined.
13:19:05 -!- Mathnerd314_ has changed nick to Mathnerd314.
13:26:35 -!- sftp has joined.
13:48:59 -!- FireyFly has joined.
13:52:14 -!- fxkr has quit (*.net *.split).
13:52:15 -!- FireyFly has quit (*.net *.split).
13:52:15 -!- elliott has quit (*.net *.split).
13:52:15 -!- pikhq has quit (*.net *.split).
13:52:15 -!- sebbu has quit (*.net *.split).
13:52:16 -!- ais523 has quit (*.net *.split).
13:52:16 -!- mycroftiv has quit (*.net *.split).
13:52:16 -!- Ilari has quit (*.net *.split).
13:52:17 -!- Ilari_antrcomp has quit (*.net *.split).
13:52:17 -!- lifthrasiir has quit (*.net *.split).
13:52:17 -!- Vorpal has quit (*.net *.split).
13:52:17 -!- ttm_ has quit (*.net *.split).
13:52:18 -!- Mathnerd314 has quit (*.net *.split).
13:52:18 -!- Phantom_Hoover has quit (*.net *.split).
13:52:18 -!- perdito has quit (*.net *.split).
13:52:18 -!- augur has quit (*.net *.split).
13:52:18 -!- cheater99 has quit (*.net *.split).
13:52:18 -!- Slereah has quit (*.net *.split).
13:52:19 -!- Zuu has quit (*.net *.split).
13:52:19 -!- bsmntbombdood has quit (*.net *.split).
13:52:19 -!- oklopol has quit (*.net *.split).
13:52:19 -!- sshc has quit (*.net *.split).
13:52:20 -!- Quadlex has quit (*.net *.split).
13:52:20 -!- cal153 has quit (*.net *.split).
13:52:20 -!- SimonRC has quit (*.net *.split).
13:52:20 -!- aloril has quit (*.net *.split).
13:52:20 -!- comex has quit (*.net *.split).
13:52:21 -!- mtve has quit (*.net *.split).
13:52:21 -!- myndzi\ has quit (*.net *.split).
13:52:22 -!- sftp has quit (*.net *.split).
13:52:22 -!- coppro has quit (*.net *.split).
13:52:23 -!- Wamanuz5 has quit (*.net *.split).
13:52:23 -!- Deewiant has quit (*.net *.split).
13:52:24 -!- Gregor has quit (*.net *.split).
13:52:24 -!- Quadrescence has quit (*.net *.split).
13:52:24 -!- dbc has quit (*.net *.split).
13:52:24 -!- ineiros has quit (*.net *.split).
13:52:25 -!- Sasha has quit (*.net *.split).
13:52:25 -!- jcp has quit (*.net *.split).
13:52:26 -!- EgoBot has quit (*.net *.split).
13:52:26 -!- Leonidas has quit (*.net *.split).
13:52:26 -!- yiyus__ has quit (*.net *.split).
13:52:26 -!- jix has quit (*.net *.split).
13:52:27 -!- rodgort has quit (*.net *.split).
13:52:27 -!- fizzie has quit (*.net *.split).
13:52:27 -!- olsner has quit (*.net *.split).
13:52:27 -!- yiyus has quit (*.net *.split).
13:53:34 -!- FireyFly has joined.
13:53:34 -!- sftp has joined.
13:53:34 -!- Mathnerd314 has joined.
13:53:34 -!- Phantom_Hoover has joined.
13:53:34 -!- elliott has joined.
13:53:34 -!- ais523 has joined.
13:53:34 -!- perdito has joined.
13:53:34 -!- Sasha has joined.
13:53:34 -!- pikhq has joined.
13:53:34 -!- augur has joined.
13:53:34 -!- jcp has joined.
13:53:34 -!- cheater99 has joined.
13:53:34 -!- oklopol has joined.
13:53:34 -!- Slereah has joined.
13:53:34 -!- myndzi\ has joined.
13:53:34 -!- sshc has joined.
13:53:34 -!- Wamanuz5 has joined.
13:53:34 -!- sebbu has joined.
13:53:34 -!- fxkr has joined.
13:53:34 -!- Vorpal has joined.
13:53:34 -!- rodgort has joined.
13:53:34 -!- EgoBot has joined.
13:53:34 -!- Gregor has joined.
13:53:34 -!- Leonidas has joined.
13:53:34 -!- Zuu has joined.
13:53:34 -!- ttm_ has joined.
13:53:34 -!- cal153 has joined.
13:53:34 -!- Deewiant has joined.
13:53:34 -!- SimonRC has joined.
13:53:34 -!- Quadrescence has joined.
13:53:34 -!- bsmntbombdood has joined.
13:53:34 -!- aloril has joined.
13:53:34 -!- coppro has joined.
13:53:34 -!- fizzie has joined.
13:53:34 -!- dbc has joined.
13:53:34 -!- ineiros has joined.
13:53:34 -!- Quadlex has joined.
13:53:34 -!- mycroftiv has joined.
13:53:34 -!- Ilari has joined.
13:53:34 -!- yiyus__ has joined.
13:53:34 -!- Ilari_antrcomp has joined.
13:53:34 -!- comex has joined.
13:53:34 -!- jix has joined.
13:53:34 -!- lifthrasiir has joined.
13:53:34 -!- olsner has joined.
13:53:34 -!- mtve has joined.
13:53:34 -!- yiyus has joined.
13:53:37 -!- pikhq has quit (Excess Flood).
13:53:45 -!- pikhq has joined.
14:01:09 <elliott> │ │ [ ] B.A.T.M.A.N. Advanced Meshing Protocol │ │
14:06:15 -!- sftp has quit (Ping timeout: 240 seconds).
14:06:27 -!- sftp has joined.
14:11:19 <elliott> How did I accidentally disable block devices...
14:15:19 <oerjan> !haskell map toEnum [78,111,119,32,72,105,114,105,110,103] :: String
14:16:04 <oerjan> (http://imgur.com/DqYOs)
14:16:16 <Slereah> Fortunayely, I have an ASCII chart on me wall
14:16:34 <oerjan> well it's not that i _couldn't_ have converted in my head
14:16:46 -!- sftp has quit (Ping timeout: 245 seconds).
14:16:51 <oerjan> but that would have been work
14:16:54 -!- sftp has joined.
14:28:05 <elliott> oerjan: s/toEnum/chr/;s/ :: String//
14:28:39 <elliott> > map chr [78,111,119,32,72,105,114,105,110,103]
14:28:40 <oerjan> requires import Data.Char
14:28:43 <elliott> !haskell map chr [78,111,119,32,72,105,114,105,110,103]
14:28:52 <elliott> oerjan: why doesn't !haskell have that :p
14:29:00 <elliott> anyway that's a parse error inexplicably
14:29:47 <oerjan> because !haskell first tries as a ghci command line and then as a standalone module, and if both fail you only get the error message for the latter.
14:30:03 <oerjan> and what you pasted doesn't parse as a module
14:30:46 <oerjan> !haskell map Char.chr [78,111,119,32,72,105,114,105,110,103]
14:30:56 <elliott> oerjan: hmph, it should really give the first error message. or something.
14:31:00 <elliott> also, what, how did it do that
14:31:02 <elliott> does it auto-import or something
14:31:18 <elliott> or does it import it qualified as Char for no reason
14:31:19 <oerjan> ghci allows you to load modules on the fly by giving explicit qualifier
14:31:46 <elliott> oerjan: oh ghci. ohhh ghci :)
14:31:57 <elliott> WHAT ARE YOU that is my question
14:32:52 <elliott> did that make sense it didn't did it
14:33:54 -!- dbc has quit (Ping timeout: 245 seconds).
14:33:55 <elliott> comex: http://esolangs.org/wiki/User:Fallensn0w I blame you.
14:35:07 -!- lifthrasiir has quit (Ping timeout: 276 seconds).
14:35:27 -!- lifthrasiir has joined.
14:35:43 -!- wareya has quit (Ping timeout: 272 seconds).
14:36:26 <oerjan> hm that edit of Arrow on 24th i probably missed in the spam flurry...
14:37:21 <elliott> i blame my going insane on the lack of oerjan's comforting presence
14:37:57 * oerjan gives elliott a creepy hug
14:38:16 <elliott> oerjan: i'm sorry, it is absolutely impossible for you to be creepy.
14:38:32 <elliott> people with knitted wool sweaters *cannot* be creepy.
14:39:18 <oerjan> i deny it all i want, this is a polyester/cotton cardigan
14:39:53 <oerjan> just because people have tried giving me wool sweaters doesn't mean i actually want to use them
14:40:05 <elliott> oerjan: incorrect. additionally, you look very similar to Dijkstra, except with dark hair and not much of a beard
14:40:12 -!- dbc has joined.
14:40:19 <elliott> specifically you look almost identical to this http://www.knowledgerush.com/wiki_image/0/0a/Edsger_Dijkstra_large.jpg
14:40:28 <elliott> shorter nose, less jutting out chin, but basically the same.
14:40:43 <elliott> other people as insane as I have backed up this mental image of you! it is more accurate than whatever your actual appearance may be
14:40:47 <oerjan> ...you've seen a picture, you know perfectly well i'm not dark hair. granted on not much of a beard though.
14:41:04 <elliott> oerjan: my brain has seemingly modified my memory of the picture to include your *correct* hair colour, which is dark
14:41:38 -!- wareya has joined.
14:41:50 <elliott> compressing the kernel with LZO is easier when you have LZO installed!
14:43:24 -!- Mathnerd314 has quit (Ping timeout: 252 seconds).
14:43:47 <elliott> -rw-r--r-- 1 elliott elliott 11M Nov 26 14:42 arch/x86/boot/bzImage
14:43:55 <elliott> that's with everything compiled in, no modules
14:44:08 <elliott> (and only compressed with the rather weak LZO)
14:51:06 -!- perdito has quit (Ping timeout: 252 seconds).
14:51:38 -!- FireyFly has changed nick to FireFly.
15:06:41 <Phantom_Hoover> Incidentally, I had an inspiration for non-Euclidean Raytracer.
15:07:18 <Phantom_Hoover> Rather than actually raytrace anything, do a coördinate transform on the space into an appropriate projection in line-preserving flat space.
15:07:33 <oerjan> the raytracer that can draw cthulhu properly
15:09:02 <Phantom_Hoover> Well, the image has to be projected onto a flat plane at /some/ point, so it's not quite perfect.
15:09:17 <oerjan> hm i would be surprised if there always is such a coordinate transform
15:09:42 <Phantom_Hoover> There's one for elliptical ones, but I've forgotten its name.
15:09:47 <oerjan> although i _do_ recall there is one for hyperbolic geometry
15:10:13 <oerjan> but what about spaces with varying curvature?
15:10:19 <Phantom_Hoover> And allowing it to work on arbitrary Riemann manifolds is not for the faint-hearted.
15:11:56 <oerjan> for a sphere a projection through the center onto a plane works, i think
15:12:30 <Phantom_Hoover> (i.e. I am not doing it ever unless someone else codes and works out the algorithm to trace the rays.)
15:13:05 <oerjan> raytracing with general relativity :D
15:13:40 <oerjan> although that includes time as well, presumably
15:14:31 <ais523> ugh, the Talk:Befunge spammer seems to be a dynamic IP from Telefonica de Espana
15:14:34 <Phantom_Hoover> As well as being torture to understand, let alone code.
15:14:53 <elliott> ais523: just block, like, half of spain temporarily
15:15:06 <elliott> start with blah.*.*, add more *s before if needed :P
15:15:16 <ais523> and they have many separate /16s
15:15:25 <ais523> I don't think they're feasible to block
15:15:27 <elliott> ais523: just block all of spain :)
15:16:11 <ais523> it'd be a pain even to figure out what IPs belonged to Spain
15:16:19 <ais523> they seem to have been allocated piecemeal
15:16:25 <elliott> [ 6.608103] Oops: 0000 [#1] PREEMPT SMP
15:16:34 <elliott> gee, that looks like the funnest kernel oops i can think of
15:16:39 <elliott> something easy, and simple to fix!
15:18:47 <ais523> so, it seems that my C students, who have been doing things like writing size_t rather than sizeof because sizeof isn't in NetBeans' autocomplete (despite being told not to use NetBeans), are going to be writing kernel modules for their next exercise
15:18:50 <ais523> this can only end well
15:20:06 -!- ais523 has quit (Remote host closed the connection).
15:20:06 <elliott> ais523: it'll work even less than this kernel! which can't even boot, as you can see
15:20:19 <oerjan> there might be a kernel of truth to it
15:21:20 <Ilari> What? How you can replace sizeof with size_t?
15:25:16 <elliott> Ilari: by not caring whether it compiles or not
15:25:40 <elliott> Ilari: presumably they typed sizeo, it gave no completions, they backtracked one, saw size_t, and accepted it because OMG IDE SMARTER THAN ME
15:30:05 -!- Mathnerd314 has joined.
15:41:54 -!- MigoMipo has joined.
16:02:03 -!- jack__ has joined.
16:02:14 -!- jack__ has changed nick to Jackoz.
16:03:08 -!- Jackoz has quit (Client Quit).
16:09:26 <Vorpal> elliott, did you see the note I left to you in the logs?
16:10:02 <elliott> Vorpal: i did but i've forgotten; i'll look
16:10:08 <Vorpal> ineiros, if so: what about the server upgrade today?
16:10:36 <elliott> "I’ve got plenty of more bugs to address in SMP, which will be fixed over the coming weeks. I think we might be getting close to beta soon. =D"
16:10:49 <elliott> I'll start modding the server to remove health/item decay soon, I think, if things start stabilising.
16:10:59 <elliott> If only those deobfuscation scripts weren't batch files.
16:12:10 <Vorpal> ineiros, so not applied yet then
16:14:06 <elliott> "Everyone sentenced to jail in pirate bay case."
16:14:11 <elliott> RIP presumed Swedish sanity.
16:14:19 <elliott> whenever -- sometime round about now.
16:19:08 -!- calamari has joined.
16:24:01 -!- calamari has quit (Ping timeout: 272 seconds).
16:30:27 -!- sftp has quit (Read error: Connection reset by peer).
16:44:30 -!- sftp has joined.
16:48:26 -!- rodgort has quit (Ping timeout: 250 seconds).
16:50:56 <elliott> Phantom_Hoover: not your connection
16:50:58 <elliott> if you mean what just happened now
16:53:52 -!- rodgort has joined.
16:58:10 <elliott> Vorpal: does that really warrant two exclamation marks
17:08:12 <elliott> Anyone want me to blab about Kitten? Phantom_Hoover? pikhq?
17:08:31 * oerjan is more a dog person, himself
17:08:48 <elliott> oerjan: this one is really cute though
17:09:02 <elliott> Phantom_Hoover: PACKAGE MANAGEMENT, it's the best thing ever right?
17:09:26 <elliott> oerjan: Here is an accurate depiction of what your computer will be like if you use Kitten: http://kittenwar.com/c_images/2008/12/07/169170.2.jpg
17:09:34 <elliott> http://kittenwar.com/c_images/2009/01/02/170450.1.jpg climbs into your computer.
17:11:33 <Vorpal> ineiros, severe constant lag now :/
17:12:39 -!- Mathnerd314 has quit (Ping timeout: 245 seconds).
17:12:48 <oerjan> well it could be worse, could be exponential
17:13:49 <oerjan> YOU WILL ONLY GET 50 LINES THROUGH FROM NOW UNTIL THE HEAT DEATH OF THE UNIVERSE
17:16:04 <oerjan> <Vorpal> ineiros, severe constant lag now :/
17:17:17 <elliott> Phantom_Hoover: Anyway, in typical me fashion, I'm using files to do it all because what could be better.
17:17:26 <Vorpal> oerjan, here it meant that dl/dt was mostly 1. :P
17:18:39 <Vorpal> ineiros, what did you change?
17:19:14 <ineiros> A torrent finished downloading and I stopped a Skype video call. :)
17:19:16 <elliott> Phantom_Hoover: http://sprunge.us/eEGS
17:19:24 <elliott> Phantom_Hoover: = means the file contains that. -- is info. -> means symlink.
17:19:57 <elliott> Phantom_Hoover: TOTALLY INTENTIONAL. Pretend it's fixed.
17:20:11 <Vorpal> I'm out of tracks again
17:20:21 <Vorpal> I still have a few iron ingots to make a handful more from
17:20:21 <elliott> Phantom_Hoover: The package tree is updated with rsync. The root.tar.xz files are, too; except that they're normally excluded.
17:20:24 <ineiros> It smells like cookies here.
17:20:24 <Vorpal> doubt it will last long
17:20:35 <elliott> Specifically, root.tar.xz is only included for every package with the installed file present.
17:21:13 <elliott> Phantom_Hoover: This also means that if a new package is out which doesn't change every bit, it'll come through as a binary diff from the rsync side, meaning package updates Aren't So Horrific, After All when I recompile them all to use the latest libc.
17:21:40 <elliott> Oh, and yes, /pkg is in the root directory.
17:21:49 <elliott> Because, dammit, the root directory should have useful things in it.
17:22:07 <elliott> Admittedly it should probably actually be /var/pkg, since it's volatile.
17:24:00 <elliott> ineiros: Do you just bake cookies every single day?
17:26:47 <ineiros> elliott: No, but I packed them yesterday. Half of them are still just sitting on the table there, but the scent penetrates the packaging.
17:27:08 <elliott> ineiros: If I offer my mailing address, will I get cookies, anthrax, or air?
17:27:49 <oerjan> a deal too good to refuse!
17:28:01 <elliott> Three for the price of none!
17:28:04 <elliott> ineiros: Do the air particles come individually wrapped?
17:28:27 <ineiros> I need to make more cookies, as I made a list of people who should receive cookies and ran out of cookies when I reached the halfway point.
17:29:38 <ineiros> elliott: No. And the cookies might be decorated with powdered sugar or anthrax.
17:29:54 <Vorpal> ineiros, and I'm a minecart atm
17:29:54 <elliott> /pkg/levee/needs/ncurses -> /pkg/ncurses
17:30:03 <elliott> Since ncurses will be statically linked in, it has no runtime dependencies.
17:31:15 <Vorpal> ineiros, java.net.SocketException: Connection reset
17:31:25 <elliott> Phantom_Hoover: Expanded and remastered collector's edition: http://sprunge.us/fXdV
17:31:25 <Vorpal> ineiros, and now connection refused
17:31:34 <Vorpal> ineiros, I assume the server crashed since I was in a minecart
17:31:35 <elliott> Phantom_Hoover: (Additional option: /pkg/cc -> /pkg/(pcc or gcc or tcc or...))
17:31:53 <Vorpal> ineiros, if my inventory was lost by this I will be very sad
17:32:04 <ineiros> Don't know what happened there.
17:32:32 <elliott> Vorpal is literally addicted
17:33:54 <elliott> ineiros: quick, leave a torrent going
17:34:57 <elliott> Phantom_Hoover: Anyway, suggestions for this system welcome.
17:35:39 <Vorpal> elliott, if you want that system done (and you complained a lot about the long walk) you need to go mine iron
17:35:57 <elliott> Vorpal: Not now. Maybe later.
18:11:17 -!- wareya_ has joined.
18:13:43 -!- wareya has quit (Ping timeout: 255 seconds).
18:31:56 <Gregor> Or rather, today is the day that I learn that January 10th may be a good day pending results to be declared on March 14th.
18:32:00 <Gregor> But I can't tell you why.
18:35:26 <Gregor> BECAUSE YOU'LL RUIN IT
18:35:39 <oerjan> YOUR EVIL PLANS ARE DOOMED
18:36:03 <oklopol> Gregor: i heard to day is a good day
18:36:41 <Gregor> To day is a good day toparty!
18:38:15 -!- Phantom_Hoover has quit (Ping timeout: 252 seconds).
18:40:47 <pikhq> Butbut PERHAPS TODAY IS A GOOD DAY TO DIE
18:43:01 <oerjan> TODAY IS A GOOD DAY TO DYE
18:48:48 <Vorpal> Gregor, is it work-related?
18:49:27 <elliott> Vorpal: just as i started to make stairs to climb up the waterfall :D
18:49:31 <elliott> might go for ladders actually
18:49:35 <elliott> so as not to spoil the look
18:49:39 <Vorpal> elliott, also minecraft.net seems down
18:50:03 <Vorpal> so I couldn't possibly connect for now
18:50:13 <elliott> holy shit, crafting recipes are meant to look like their results!
18:50:27 <elliott> Vorpal: ah, it can't connect *because* minecraft.net is down
18:50:29 <Vorpal> elliott, in code you mean? saw something about that
18:50:38 <Vorpal> elliott, it also timed out before
18:50:43 <elliott> look at the recipe for a ladder, then for a pickaxe
18:50:47 <Vorpal> elliott, oh well. Yes duh
18:50:51 <Vorpal> elliott, what did you think?
18:50:59 <Vorpal> elliott, it is obvious at the first glance
18:51:00 <elliott> Vorpal: i thought they were just arbitrary :D
18:51:17 <Vorpal> elliott, uh. How could you possibly miss it
18:51:25 <Vorpal> elliott, it is glaringly obvious?
18:52:49 -!- Phantom_Hoover has joined.
18:53:16 * oerjan watches laws of nature unravel as elliott misses something Vorpal finds obvious
18:53:35 <elliott> Phantom_Hoover: server is down
18:53:35 <fungot> Phantom_Hoover: " so i'm not sure anymore if " per" requests fnord
18:53:42 <elliott> Phantom_Hoover: but oh my holy shit, I found the most <3 cavern ever.
18:53:51 <elliott> Phantom_Hoover: Let me explore it before entering, please.
18:53:56 <elliott> I think it might even go near the surface.
18:54:19 <elliott> Phantom_Hoover: Two waterfalls; one goes into a little indented pool (seriously) at the end. The other one is GIGANTIC.
18:54:22 <elliott> As in "longer than my view distance".
18:54:32 <elliott> Phantom_Hoover: Many, many branches. Lots of coal. Lots of iron. Lots of gold. -- well, not any more, I mined it all.
18:55:02 <elliott> Phantom_Hoover: Not until I finish exploring, please.
18:56:14 <elliott> I need to give the Kitten package manager a name that isn't "pkg(1)".
18:56:31 <Vorpal> elliott, what about kpkg?
18:57:12 <elliott> Ooh, interesting! I've managed to merge dpkg and apt-get's goals in my system.
18:57:32 <elliott> That is, the local cache of a package, its info and dependencies and whatnot, is the complete package tarball, minus one file.
18:57:35 <Vorpal> elliott, or kittitude?
18:57:43 <elliott> Vorpal: inkorporeal?!?!??!
18:58:02 <elliott> Vorpal: I'm just taking your idea to the extreme. :D
18:58:06 <elliott> oerjan: yesyesyesyesyesyseyseysy
18:58:17 <Vorpal> elliott, not sure which one inkorporeal would be about
18:58:23 <elliott> oerjan: except it's called a furball
18:58:30 <elliott> omg furball that is so perfect
18:58:39 <elliott> .fur or .ball, that is the question
18:58:41 <oerjan> mistranslation from norwegian, then
18:59:26 <elliott> oerjan: well looks like hairball is also an acceptable name for it
19:00:15 <Vorpal> argh minecraft.net was up for 10 seconds, managed to login but died before i could connect to ineiros's server
19:01:01 <Vorpal> well I guess I lost that item (just some sticks I had dropped by mistake just before it went out of order)
19:01:04 <elliott> Phantom_Hoover: problem is, furball would be a package
19:01:09 <elliott> that doesn't name the system itself
19:01:21 <elliott> Phantom_Hoover: Don't enter the cavern. Seriously.
19:01:24 <elliott> I want to experience it myself.
19:03:00 -!- cheater99 has quit (Ping timeout: 252 seconds).
19:03:54 -!- Sgeo has joined.
19:10:24 <elliott> /usr/lib/diet/include/asm/x86_64-sigcontext.h:11: error: expected specifier-qualifier-list before ‘__u64’
19:15:24 <elliott> Phantom_Hoover: Don't go into the cavern yet, please.
19:16:07 <Phantom_Hoover> This is the problem with centralised authentication...
19:17:07 -!- cheater99 has joined.
19:17:36 <oklopol> elliott: given that i tend not to notice connections between the english names of mathematical concepts, and the concepts themselves, i might not have noticed the recipes look like their recipees, if i hadn't watched 2.5 hours of youtube tutorials before downloading it
19:18:17 <oklopol> i couldn't come up with an example :\
19:18:23 <oklopol> i just remember it's happened a lot
19:19:26 <oklopol> like i have to check what definitions mean even when it's painfully obvious from the name
19:20:15 <oklopol> it has a complicated definition, but you can pretty much guess it from the name ...unless you think of the name as a meaningless string
19:27:24 <Vorpal> ineiros, time out even
19:27:43 <Vorpal> ineiros, any clue as to what cause it?
19:27:43 <ineiros> All my connections are slowing down.
19:28:09 <ineiros> Spotify is running, but I don't think that's the culprit.
19:28:52 <Vorpal> ineiros, I guess asking you to implement QoS minecraft reservation is a bit over the toip
19:29:38 <Phantom_Hoover> elliott, can I feast upon the magnificence of this cavern yet?
19:30:03 <elliott> Phantom_Hoover: Firstly, I just flooded it so I could get out to see where it emerges.
19:30:11 <elliott> Phantom_Hoover: So you Really Don't Want To Go There right now.
19:33:00 <elliott> Phantom_Hoover: I won't tell you because you'll just go in.
19:33:07 <ineiros> This time the reason is probably that I'm installing something through aptitude.
19:33:12 <elliott> Please let me figure out where it emerges and plug the flood hole.
19:33:58 <Phantom_Hoover> elliott, this was meant to be a shared mine, not a "ZOMG a cavern don't come in i need to feast on the beauty myself and flood it" mine.
19:34:23 <elliott> Phantom_Hoover: I am allowed to explore one particularly astonishing cavern, am I not? This thing is a *serious* anomaly.
19:34:50 <Phantom_Hoover> elliott, right, so it's a serious anomaly which you have to explore yourself because anyone else would spoil it.
19:35:34 <elliott> Phantom_Hoover: OK, I *asked* you politely not to go in without asking me.
19:35:34 -!- sebbu2 has joined.
19:35:48 <elliott> Phantom_Hoover: I'll abandon the mine if you want, but you're just being a dick now.
19:36:58 -!- Goosey has joined.
19:37:01 <elliott> Phantom_Hoover: All I did was ask you to let me explore it *once* before going in.
19:37:08 <elliott> It's not like I put up huge signs saying EHIRD ONLY AREA ZOMG.
19:37:25 <Phantom_Hoover> For the love of god, *there is no reason not to let me explore it as well*.
19:37:26 <elliott> Anyway you can sort out that flood yourself.
19:37:33 <elliott> Phantom_Hoover: I was *about to let you* since I was just clearing it for the last time.
19:37:51 <elliott> The reason was that it was more enjoyable to explore it on my own, and I discovered it, and lit all the way.
19:38:29 <oklopol> elliott that's not very open source of you
19:38:30 <Phantom_Hoover> elliott, OK, so if you ask politely I sit around doing nothing while you go on about how fantastic your cavern is, then you flood it so I can't look around myself.
19:38:52 -!- sebbu has quit (Ping timeout: 265 seconds).
19:38:54 <elliott> Phantom_Hoover: Actually, I was trying to get back out.
19:39:06 <elliott> Phantom_Hoover: It is not difficult at all to plug the hole anyway.
19:39:38 <Phantom_Hoover> And then you saw me near the mouth and thought "OMGHECAMEINAAAAAA" when I had been wandering around the mine that I helped dig?
19:40:01 <elliott> Dude, that's the *end* of the cavern.
19:40:15 <elliott> The only way to get there is by walking about 1, 2 minutes *inside* the cavern.
19:41:29 <elliott> First you have to traverse the first bit, then you have to jump down, then you have to walk past the first waterfall, then you have to jump, then you have to enter that cavern.
19:44:11 <elliott> Phantom_Hoover: Anyway I'm not interested in mining with someone who won't extend any courtesy to someone exploring a new area; I wouldn't barge in a cavern if you were exploring it.
19:44:34 <Phantom_Hoover> elliott, OK, so you hold to your own absurd standards of etiquette.
19:44:57 <Phantom_Hoover> I shall destroy your giant stairs; you in return may destroy my giant stairs.
19:45:07 <elliott> Phantom_Hoover: My standards of etiquette that says that, at the bare minimum, if someone repeatedly asks you to not do something, you don't ignore them without at least *telling* them you're ignoring them.
19:45:19 <elliott> ...which giant stairs, the ones near civilisation?
19:46:10 <Phantom_Hoover> elliott, just because you ask me not to do something doesn't mean I won't look around the mine that belongs to me as well and look around.
19:46:23 <elliott> <elliott> Phantom_Hoover: My standards of etiquette that says that, at the bare minimum, if someone repeatedly asks you to not do something, you don't ignore them without at least *telling* them you're ignoring them.
19:47:17 <Phantom_Hoover> You know, have your little strop. I expect my share of the gold from the cavern.
19:47:42 <Vorpal> elliott, probably the cavern connects to another part of the mine. Cavern tends to go in circles quite often
19:47:46 -!- oklopol has quit (Ping timeout: 255 seconds).
19:47:48 <elliott> Expect it all you like... also, you are terrible at detecting strops.
19:48:10 -!- oklopol has joined.
19:48:39 <Phantom_Hoover> And I don't really see what's so fantastic about this cavern.
19:48:56 <elliott> That's because I've already mined it. And now *you're* the one being stroppy.
19:49:19 <elliott> Meanwhile, I am going to exit out the top; do not stop me.
19:49:44 <Phantom_Hoover> I blocked that exit some time ago; reopen it yourself.
19:50:44 <Phantom_Hoover> So you're reneging on the agreement to share the proceeds from the mine?
19:51:42 <pikhq> Some consumer electronics are so *comically* oversized.
19:52:03 <elliott> Phantom_Hoover: Yes; I no longer intend to use the mine, and you violated my terms (don't explore this cavern until I have).
19:52:07 <pikhq> I've got here a POS router that comes in a case with twice the footprint of the circuit board inside.
19:52:18 <elliott> It may have been different if you had at least told me you were going to ignore my request.
19:52:19 <pikhq> The case also weighs more.
19:52:39 <Phantom_Hoover> The terms were not "we dig this mine and you let me explore caverns and I'll give you half of what I find."
19:52:51 <Phantom_Hoover> The terms were "we dig this mine and we share the proceeds".
19:53:05 <pikhq> I suspect they just wanted to give the impression that a freaking router is more advanced and complicated than it really is.
19:59:01 <Gregor> pikhq: Is it stackable or whatnot?
19:59:12 <Gregor> If not, I agree. If so, maybe they've just got some outdated standards.
19:59:47 <pikhq> Gregor: It is not readily stackable.
20:00:12 <pikhq> I mean, technically you *could* make a stack of them, but that's just because you could set it on top of itself.
20:00:26 <pikhq> Rather than, y'know, being designed to do that without toppling.
20:00:27 <elliott> Phantom_Hoover: if you discovered a cavern I would have respected your first-exploration wishes.
20:00:51 <Phantom_Hoover> That is immaterial to me doing the same. Hold yourself to your own standards.
20:01:28 <pikhq> Pity that it's a piece of shit that can't have OpenWRT installed on it.
20:02:54 <elliott> pikhq: Can I get some opinions on Kitten's package manager?
20:03:09 <elliott> pikhq: http://sprunge.us/acSV
20:03:18 <elliott> pikhq: Specifically, how to do virtual packages like cc there.
20:03:28 <elliott> pikhq: (= means "file contents is", -> means "links to", -- is just an informative note about the file.)
20:04:28 <pikhq> elliott: Definitely one of the latter two.
20:07:01 <elliott> Vorpal: Vorpal I saw your "there?" but can't send messages.
20:07:36 <pikhq> elliott: Mmm, I like the symlink one.
20:07:37 <Vorpal> elliott, and now minecraft.net died too
20:07:59 <Vorpal> elliott, I wonder if one could be causing the other?
20:09:18 <elliott> Vorpal: since the server checks with minecraft.net
20:09:23 <elliott> although who knows if it does it constantly...
20:09:33 <Vorpal> elliott, hm. But once you are connected then it shouldn't... right
20:11:14 <elliott> WHYYYYYYYYYYYYYYYYYY is strcpy so silly
20:11:20 <elliott> why does it not return dest+strlen(src)
20:11:22 <elliott> that would be actually useful
20:12:07 <Vorpal> elliott, you want strlcpy :P
20:12:34 <Vorpal> elliott, from *bsd. Trivially short function to include with your program
20:12:45 <Vorpal> elliott, yes but it like 10 lines of code
20:13:06 <Vorpal> elliott, how is copying 10 lines of BSD licensed code a pain?
20:13:39 <elliott> Vorpal: Because it should be in the stdlib.
20:13:51 <elliott> Of course I can *implement* it. But strcpy's return value is totally useless.
20:15:06 <Vorpal> elliott, you could google and copy the 10 line strlcpy function?
20:15:42 <elliott> Vorpal: I don't think you quite understand here.
20:16:14 <elliott> Vorpal: "Function FOO is badly designed; its return value is useless. It would be better if it did X instead." "Yes, but function BAR does that!" "That's not in the standard library, and besides, there is no reason for FOO not to do that." "WHAT DO YOU HAVE AGAINST COPYING CODE"
20:16:31 <elliott> I know I *can* copy strlcpy; I shouldn't have to because it's stupid in the first place.
20:17:16 <Vorpal> elliott, I thought you were looking for what we call a "solution" with this strange alien concept "a minimum of fuss"
20:17:51 <elliott> Vorpal: I would have said "How can I do something like strcpy except returning blah?" except I wouldn't since it's trivial to implement myself.
20:18:25 <elliott> Anyway I just hate C strings and they should die in an eternal pool forever.
20:18:34 <elliott> At least I'm avoiding malloc.
20:19:59 <Vorpal> elliott, what do you prefer rather than malloc?
20:20:27 <Vorpal> elliott, obviously a GC or such yes
20:20:31 <elliott> Vorpal: Uh, right now I'm just using static buffers because fuck anyone who wants to name a package something longer than 1024 characters.
20:20:31 <Vorpal> but for use with C I meant
20:20:39 <elliott> Vorpal: That's not a good solution but it's the path of least resistance at this point.
20:20:44 <elliott> Vorpal: I may stoop so low as to use alloca at some point.
20:20:52 <elliott> oklopol: yeah all my strings are of length INFINITY
20:20:53 <Vorpal> elliott, why are you using C?
20:21:11 <Vorpal> elliott, and you want something buggy
20:21:26 <Vorpal> elliott, haskell would seem like the optimal language
20:21:29 <elliott> Vorpal: I could just use Haskell but I don't feel like bundling multiple 100 MiB binaries with the distro.
20:21:50 <elliott> (GHC produces... rather big programs when linking statically.)
20:22:03 <elliott> Vorpal: Because it's the only contender.
20:22:04 <Vorpal> isn't there one... jhaskell or something?
20:22:13 <elliott> All the others are experimental or not very supporting of things.
20:22:15 <Vorpal> produces small binaries iirc
20:22:25 <elliott> jhc is pretty much ghc's only remote competitor.
20:22:38 <Vorpal> elliott, doesn't it produce quite a lot smaller binaries?
20:22:47 <elliott> Vorpal: It's actually more focused on whole-program optimisation and stuff.
20:22:59 <elliott> I think it uses region inference instead of a GC and other such wacky things.
20:23:15 <Vorpal> elliott, okay surely there are other high level languages that are better than C but produces smaller binaries?
20:23:21 <elliott> Vorpal: Amusingly this program would actually be fine as a shell script but I just don't want to maintain a shell script.
20:23:24 <Vorpal> (smaller than haskell I meant)
20:23:28 <elliott> Maybe if I did it as an rc script. :p
20:23:36 <Vorpal> elliott, what about Go?
20:23:56 <elliott> Vorpal: Go is nice but doesn't really offer *huge* benefits in the arena of Basic String Munging And File Operations which pkginfo falls under.
20:24:17 <elliott> Vorpal: I don't want to use an interpreted language because then every single install of Kitten would depend on that interpreter. Also, if it broke, you'd be *super-fucked* since you can't install a package to replace it.
20:24:19 <Vorpal> elliott, hm. It doesn't use C strings surely?
20:24:26 <Vorpal> elliott, also string munging. Perl?
20:24:31 <elliott> Vorpal: I don't even remember how Go does strings.
20:24:34 <elliott> <elliott> Vorpal: I don't want to use an interpreted language because then every single install of Kitten would depend on that interpreter. Also, if it broke, you'd be *super-fucked* since you can't install a package to replace it.
20:24:43 <Vorpal> elliott, yeah I typed it before you said that
20:25:58 <Vorpal> elliott, what about asm? then you can go for your own string representation?
20:26:10 <Vorpal> without much more pain that you would have anyway
20:26:26 <elliott> Vorpal: Yeah that sounds REAL fun. (Anyway I'd have to use libc for file functions unless I wanted huge pain, thus mandating C strings.)
20:26:36 <Vorpal> elliott, but what about the quajets?
20:26:48 <elliott> I have no idea what that is.
20:27:00 <Vorpal> elliott, SynthesisOS? Surely you read about that
20:27:49 <Vorpal> right. Amazingly self modifying OS.
20:28:05 <Vorpal> with stuff like lockless selfmodifying data structures
20:28:20 <Vorpal> self modifying as in code self modifying
20:28:32 <elliott> OK, so it's a specialiser.
20:28:50 <Vorpal> elliott, it had unix emulator. Which beat the crap out of SunOS on the same hardware back then
20:29:06 <Vorpal> some motorola-based CPU iirc
20:29:10 <elliott> Oh, so it actually existed?
20:29:57 <Vorpal> elliott, why shouldn't it?
20:30:00 <elliott> Vorpal: Googling suggested it was a mere Ph.D. thesis.
20:30:14 <Vorpal> elliott, yes it was implemented for that thesis
20:30:56 <Vorpal> elliott, a lot of it was based on DCAS though. Which no modern hardware has
20:32:02 <oklopol> "<elliott> Vorpal: Googling suggested it was a mere Ph.D. thesis." <<< what?
20:32:09 <elliott> Specialisation is definitely very interesting.
20:32:13 <elliott> oklopol: as in not actually implemented, just talked about
20:32:24 <oklopol> sorry i didn't get that implication
20:32:35 <Vorpal> elliott, Double Compare And Swap. As in two different pointer sized target addresses.
20:32:51 <Vorpal> a lot of that stuff it did you can't do cheaply with just plain CAS
20:33:03 <elliott> oklopol: well a Ph.D. thesis talking about a super-advanced OS design is, while valuable, a lot less valuable that a statement that it existed and worked well :)
20:33:06 <Vorpal> but more expensive than locks
20:33:07 <oklopol> i thought you somehow thought phd theses have some sort of upper bound on the greatness of the results, or they are not accepted
20:33:22 <oklopol> yeah i figured the phd thesis came with the implementation
20:33:24 <elliott> oklopol: since awesome OS ideas are easy to generate, implementing and testing them is difficult
20:33:44 <oklopol> and it was just that it was a phd thesis that made it not interesting
20:33:45 <elliott> Vorpal: i'm sure our clocks have exceeded motorola processors of the early 90s enough to make doing it the slow way just as fast
20:34:10 <Vorpal> elliott, it worked well on that hardware. It wouldn't work well on modern massively pipelined hardware. Too many self-modifications in code that will soon be executed and so on.
20:34:10 <elliott> Vorpal: cool DCAS lets you implement STM
20:34:13 <elliott> In his doctoral thesis, Greenwald recommended adding DCAS to modern hardware, showing it could be used to create easy-to-apply yet efficient software transactional memory (STM). More recently, however, it has been shown that an STM can be implemented with comparable properties using only CAS.
20:34:25 <elliott> Motorola at one point included DCAS in the instruction set for its 68k series[2]; however its relative slowness[3] led to programmer apathy. It is no longer included in the instruction set, but CAS remains popular.
20:34:52 <Vorpal> elliott, well since he timed it and managed to beat the crap out of SunOS at that time it couldn't have been that slow
20:35:04 <elliott> Vorpal: I doubt it was solely due to the use of DCAS :)
20:35:52 <Vorpal> elliott, and he wrote it in asm with custom preprocessor
20:36:14 <Vorpal> elliott, anyway how could you possibly have missed this OS? I mentioned it in here before I'm sure
20:36:37 <elliott> Vorpal: I would *love* an architecture optimised for specialisation. That would really be something.
20:36:41 <Vorpal> Phantom_Hoover, yes minecraft.net is down
20:37:34 <elliott> Vorpal: I mean, essentially, specialisation is: Copy this code; replace a placeholder with a constant value; optimise code.
20:37:43 <elliott> Vorpal: (Done at the high-level-language level, of course.)
20:37:48 <Vorpal> elliott, it would need modification of code in L1 instruction cache cheap. That is not the case on most modern hardware.
20:37:56 <Vorpal> some architectures even forbid it iirc
20:38:02 <elliott> Vorpal: I don't care about current hardware, I care about new architectures.
20:38:25 <Vorpal> elliott, well synthesis didn't really do it at a high level?
20:38:31 <elliott> Vorpal: ...So it would be really nice to have semi-high-level processor (i.e. one that reduces a tree/graph rather than executing a linear list of instructions) that has hardware support for specialisation.
20:39:11 <elliott> Vorpal: The lovely thing is that specialisation is exactly equivalent to partial application of a pure function; i.e. (lambda calculus) function application, the ultimate operator.
20:39:15 <elliott> Vorpal: It's just an optimisation.
20:39:22 <elliott> But an extremely powerful one, of course!
20:39:23 <Vorpal> elliott, yes but I doubt it would be feasible.
20:39:43 <elliott> http://www.cs.york.ac.uk/fp/reduceron/ :)
20:39:57 <elliott> That's proof that you can reduce a graph rather than execute a linear list of instructions, in practice.
20:40:23 <Vorpal> elliott, how efficient was it?
20:40:27 <elliott> Vorpal: And really, "Synthesis did it", so which do you think is faster at specialising: an old Motorola or hardware specifically designed for it in 2010?
20:40:39 <elliott> Vorpal: I dunno; I don't know much about the Reduceron. But it's FPGA-based, so not exactly hugely fast.
20:40:54 <elliott> Vorpal: Still, there is a point where we have to decide between raw speed of hardware and *intelligence* of hardware.
20:41:20 <elliott> Vorpal: Would you rather have a really dumb OISC executing at 1 THz or a really, really smart, heavily optimising, practically DWIMing processor for a high level language executing at 1 GHz?
20:41:37 <elliott> Vorpal: (Okay, so the THz/GHz thing is exaggerated and you should probably pick the former.)
20:41:41 <elliott> Vorpal: (But you see my point.)
20:41:41 <Vorpal> elliott, depends on which one gets the job done first :P
20:42:47 <elliott> Talking about this stuff, and then I switch back to my emacs buffer, displaying C code. Ha. Way to remove my motivation, me.
20:43:10 <Vorpal> elliott, yes indeed I don't really care about how it is implemented at hw level as long as I can write it on a high level and then the black box (hw or compiler + hw or whatever) makes it work fast
20:43:36 <Vorpal> elliott, besides it would complicate the courses :P
20:43:38 <elliott> Vorpal: Great -- you've put me standing firmly above the now-creaking trapdoor under which I will fall into a near-bottomless pit filled with FPGAs and instruction set design, from which I, like Loper's Stanislav has already discovered, may never climb back up from.
20:45:54 <Vorpal> elliott, hm clockless would be nice, no?
20:46:06 <Vorpal> elliott, just because clockless designs are pure awesome
20:46:52 <Vorpal> sure you still need clocks in parts that talk with the outside world of the CPU (such as DRAM or IO controllers and so on)
20:47:03 <Vorpal> elliott, I remember seeing a clockless MIPS
20:47:40 <Vorpal> elliott, beat the crap out of similar-speced but clocked MIPSes
20:47:56 <elliott> Vorpal: But how do you advertise that the new processor is FASTER than the old one?! :)
20:48:18 <elliott> I think if the law had mandated that revealing MHz info from the start on any processor by anyone was illegal, we'd have much less stupid processor designs floating around.
20:48:33 <elliott> But nobody can ever release a new, superfast processor with much less clock speed than the last one, because people will complain. Idiots.
20:49:22 <Vorpal> elliott, this one had no MHz count as such. They measured it in MIPS iirc
20:50:05 <elliott> char path[PKGDIRSIZE + PKGMAX];
20:50:05 <elliott> strncpy(path, pkgdir, PKGMAX);
20:50:05 <elliott> strcpy(path + strlen(pkgdir), "/version");
20:50:26 <elliott> Well, I'm sure a Sufficiently Smart Compiler will optimise that all out anyway!
20:53:23 <Vorpal> elliott, are you sure that is safe against buffer overflows?
20:53:33 <Vorpal> elliott, also isn't that strncat?
20:53:54 <Vorpal> stupid C string functions
20:54:15 -!- oklopol has quit (Ping timeout: 276 seconds).
20:54:29 -!- oklopol has joined.
20:55:16 <elliott> Vorpal: Uh, yes, it is strcat; I didn't realise.
20:55:28 <elliott> Vorpal: Also, it isn't there because I made a boo-boo.
20:55:34 <elliott> char path[PKGDIRSIZE + LEN("/version")];
20:55:34 <elliott> make_pkg_path(path, pkgdir, "/version");
20:55:37 <elliott> That's what it looks like now.
20:55:45 <elliott> strncpy(path, pkgdir, PKGMAX);
20:56:03 <elliott> Vorpal: #define LEN(a) (sizeof(a) - 1)
20:56:07 <elliott> Vorpal: Skips the trailing 0.
20:56:18 <elliott> Vorpal: (i.e. LEN(s) == strlen(s) given constant s)
20:56:18 <Vorpal> elliott, so what about the zero byte? won't you need it?
20:56:30 <elliott> Vorpal: PKGDIRSIZE includes a zero byte.
20:56:32 <elliott> #define PKGDIRSIZE (LEN(PKGROOT) + PKGMAX + 2)
20:56:39 <elliott> It's what's used for the pkgdir variable, that's
20:56:45 <cheater99> anyone know that article that was lately on the 'webs that said cpus could have terabytes of cache like, fairly soon?
20:56:47 <elliott> so you just add whatever you need onto it.
20:59:05 <elliott> Vorpal: Hmph... and now you (I blame you) have given me more problems!
20:59:12 <elliott> /pkg/foo/authors is a file of
20:59:19 <elliott> Author Name <optionally@email.address>
20:59:20 <elliott> Author Name <optionally@email.address>
20:59:29 <elliott> but I'd rather show them comma-separated in pkginfo, I think.
20:59:40 <elliott> Let's just hope no package has too many authors.
20:59:51 <elliott> In fact, I should probably just mandate that authors is one line.
21:02:02 <elliott> Vorpal: Hmm, do you think alloca(1024) is safe?
21:02:08 <elliott> Oh, wait, yes, of course it is; I was storing these on the stack anyway.
21:05:57 -!- jcp has quit (Ping timeout: 240 seconds).
21:11:04 <elliott> http://morepypy.blogspot.com/2010/11/pypy-14-ouroboros-in-practice.html
21:11:13 <elliott> I love how they auto-generate their JIT.
21:11:35 -!- jcp has joined.
21:12:08 <elliott> -rwxr-xr-x 1 elliott elliott 9.5K Nov 26 21:09 pkginfo
21:12:14 <elliott> I have a feeling this package system is going to be very teeny tiny.
21:13:27 <elliott> pikhq: I just realised that my build-needs/ system has no facility for versioned dependencies.
21:14:14 <pikhq> elliott: Mmm, that's a problem.
21:15:42 <elliott> pikhq: On one hand, there are next to no runtime dependencies, so it's not a problem.
21:15:55 <elliott> pikhq: On the other hand, what about stubborn software that demands, say, an older version of a library to build?
21:16:15 <elliott> Probable answer: "make that older version a separate library".
21:18:56 <elliott> pikhq: Oh, and libc updates won't be too much of a pain, because it'll synchronise even the tarballs using rsync.
21:19:10 <elliott> So only the bits of libc that actually change in each program will be downloaded.
21:49:39 -!- poiuy_qwert has joined.
21:51:29 -!- oklopol has quit (Ping timeout: 265 seconds).
21:51:47 * oerjan now feels fresh and sporty after taking a walk in -15 or so celsius
21:52:03 -!- oklopol has joined.
22:00:12 <oerjan> pikhq: HEY YOU'RE SUPPOSED TO FREAK OUT
22:21:32 -!- p_q has joined.
22:22:39 -!- poiuy_qwert has quit (Ping timeout: 245 seconds).
22:26:14 <elliott> pikhq: I think I have decided that versioned dependencies are for losers.
22:26:22 <elliott> pikhq: I MAY BE GOING SLIGHTLY CRAZY.
22:26:53 <Phantom_Hoover> http://www.guardian.co.uk/commentisfree/2008/jun/06/maths.alevels
22:27:55 <Vorpal> elliott, you quit just after PH: why?
22:28:02 <Vorpal> and now server went down
22:28:08 <elliott> Vorpal: I decided solo mining is boring.
22:28:15 <Vorpal> elliott, it is efficient
22:28:25 <Vorpal> ineiros, server issues again :/
22:28:54 <elliott> Phantom_Hoover: MATHS: an instrument of the conservative bourgeoisie!
22:31:47 <pikhq> elliott: You probably are.
22:31:53 <pikhq> elliott: Down that road leads Slackware.
22:32:02 <Phantom_Hoover> elliott, differential calculus is DECADENT AND CAPITALIST!
22:32:05 <elliott> pikhq: You have to remember that there are something close to *zero* runtime dependencies.
22:32:30 <pikhq> elliott: Oh, right, you despise runtime dependencies.
22:32:37 <elliott> pikhq: Well, it's more that... I'm linking statically.
22:32:44 <elliott> pikhq: So instantly, there are zero, zilch library dependencies.
22:32:50 <elliott> pikhq: And that is almost all dependencies.
22:33:05 <elliott> pikhq: As for build dependencies... why would you ever try and build a package with anything but the latest toolchain and libraries?!
22:33:19 <elliott> If there's some older version of a library that some programs need, just make a package called libfoo-version or something.
22:33:47 <pikhq> elliott: Okay, you don't need to handle versioning of dependencies, then.
22:34:04 <bsmntbombdood> i am working on a declarative system for validating objects, with a directed graph of rules where parents can choose if there is an error and if their children are also run
22:34:15 <elliott> pikhq: Which is nice because it makes things a hell of a lot easier. (I may add versioned dependencies in $future_version...)
22:34:21 <elliott> bsmntbombdood: dunno; probably, but the wheel is probably some random paper
22:34:27 <elliott> bsmntbombdood: it sounds cool.
22:35:32 <bsmntbombdood> Phantom_Hoover: they are database tables in practice
22:36:28 <elliott> bsmntbombdood: object database, presumably
22:36:32 <elliott> what you said doesn't map well to relational...
22:36:43 -!- Sasha has quit (Read error: No route to host).
22:37:23 <bsmntbombdood> elliott: it's an object store implemented on a relational database
22:38:04 <Phantom_Hoover> [[I studied advanced maths to 16. I loved wandering in its virtual world of trigonometry and logarithms, primes and surds.]]
22:38:52 <elliott> <bsmntbombdood> elliott: it's an object store implemented on a relational database
22:38:57 <elliott> bsmntbombdood: why not just do it as an object db
22:39:03 <elliott> save yourself a layer of indirection, specialise it to that task
22:39:47 <Phantom_Hoover> [[Curricular archaism is the political correctness of the conservative classes. To pass muster, a subject must help the economy or, if not, be deliberately irrelevant, a mind trainer. It must have a long academic tradition. It must be obscure. Above all, it must not be novel or popular with students.]]
22:40:38 <Phantom_Hoover> A deliberately irrelevant mind trainer, with neither novelty nor popularity.
22:40:43 <elliott> just kill everyone who disagrees
22:41:32 -!- Sasha has joined.
22:41:45 <bsmntbombdood> elliott: a brilliant idea, until you realize that then there would be no one to sign my paychecks
22:43:39 <elliott> bsmntbombdood: sign your own
22:43:55 <bsmntbombdood> anyway, i think it's practical to resolve dependencies when you only allow one parent, because you end up with a tree or a loop
22:44:30 <bsmntbombdood> but i'm not sure if you can allow multiple parents with boolean operations
22:46:01 <elliott> darn, /var/pkg isn't really volatile after all
22:46:08 <elliott> because of /var/pkg/*/installed...
22:46:38 <elliott> oh well, whatever, "volatile enough"
22:46:42 <elliott> or maybe i'll just make it /pkg again
22:48:52 -!- wareya has joined.
22:50:12 -!- wareya_ has quit (Read error: Operation timed out).
22:57:38 -!- Gooseh has joined.
22:57:52 -!- Goosey has quit (Remote host closed the connection).
23:00:26 <Vorpal> Phantom_Hoover, elliott: absurd 1x5 lava lake
23:01:06 <Vorpal> Phantom_Hoover, and 5 high in roof. Perfectly rectangular very tiny cavern :P
23:01:51 <Phantom_Hoover> (In Fine Structure, not Vorpal's Minecraft adventures)
23:04:50 <Phantom_Hoover> (Although the pieces might be fitting together there as well.)
23:05:03 <Vorpal> Phantom_Hoover, indeed. Almost like lego!
23:05:17 <Vorpal> Phantom_Hoover, just without the knob-thingies
23:07:13 <oerjan> how can you hate what you cannot understand...
23:11:16 -!- Gooseh has quit (Remote host closed the connection).
23:11:56 <oerjan> of course the danes are probably horribly insulting us other scandinavians, but we have no way to prove it
23:12:39 -!- jcp has quit (Ping timeout: 245 seconds).
23:14:43 <elliott> <oerjan> how can you hate what you cannot understand...
23:14:47 <elliott> isn't that the source of most hatred?
23:15:51 <elliott> the finns are too busy getting drunk and invading russia to acre
23:16:15 <oerjan> also finns speak very clearly and distinctly
23:17:05 <oerjan> the drinking is to compensate for that
23:18:06 -!- Goosey has joined.
23:19:58 <elliott> Phantom_Hoover: All 0 of them?
23:20:05 <Phantom_Hoover> Are JavaScript and its derivatives Languages Of Which We Approve?
23:20:25 <elliott> Phantom_Hoover: yes and no.
23:20:35 -!- jcp has joined.
23:22:28 <elliott> Phantom_Hoover: Brendan Eich is not to blame. He had 10 days and it had to look like Java.
23:22:42 <elliott> Phantom_Hoover: He spent 10 days by taking Scheme, and making it look like Java.
23:22:48 <elliott> Phantom_Hoover: Also, only implementing what he could in 10 days.
23:23:03 <elliott> Phantom_Hoover: So scoping is fucked up, and... dozens of things are fucked up. Almost everything, in fact.
23:23:10 <elliott> Phantom_Hoover: But... it's essentially Scheme, underneath all that.
23:23:41 <elliott> Phantom_Hoover: It could have been much worse -- but then one could argue that a straight dynamically-typed Java clone would be better, as at least its appearances wouldn't deceive.
23:25:07 -!- zzo38 has joined.
23:25:21 <elliott> Vorpal: From the start of the Synthesis paper:
23:25:24 <elliott> I must Create a System, or be enslav'd by another Man's;
23:25:24 <elliott> I will not Reason and Compare: my business is to Create.
23:25:24 <elliott> -- William Blake Jerusalem
23:25:29 <elliott> Vorpal: An excellent defence of NIH if there ever was one.
23:26:53 <elliott> Vorpal: Perhaps I shall create my own CPU architecture designed for this kind of insanity and then implement it in x86-64 assembly, rather than trying to develop the architecture with the implementation.
23:27:17 <elliott> Thank god CPUs are so fast; their raw clock speed gives me the margin I need to waste cycles on not sucking.
23:29:36 <zzo38> TeX allows changing category codes, METAFONT does not allow changing category codes
23:30:47 * elliott -- in note to self -- plans to figure out what http://www.1010.co.uk/org/ is saying at some point, since he vaguely recalls doing so and it being extremely relevant to his interests, but cannot make heads or tails of it now.
23:31:16 <Phantom_Hoover> elliott, METAFONT does not allow changing category codes!
23:31:23 <elliott> Phantom_Hoover: it's awful.
23:32:05 <elliott> Phantom_Hoover: The LIMITATION!
23:32:09 <elliott> EXTREMELY RELEVANT TO THIS CHANNEL:
23:32:11 <elliott> [[Returning now to the original point, the point (hill) which prescribed the to-be-executed algorithm of vectoral compression, coded for the first time in the obscure Brainfuck notational language, with its crosses, arrows and brackets again projecting forwards the key signs for the walks of the week to come. Compression of language, points and vectors and also a compression of time, a fogged-thicker temporal bandwidth (after Pynchon) wrapping an
23:32:11 <elliott> d enclosing the week. This is precisely what the coarse psychogeophysical measurements aim to accomplish, this dense thickening. It becomes harder to sense which sign precedes or foretells another sign; the necessity for an overlaid series of transparencies, for thoughtographic imprints.]]
23:32:13 <elliott> -- http://www.1010.co.uk/org/summit.html
23:32:24 <elliott> I do recall there being meaningful content behind this farce. :)
23:32:38 <Vorpal> Phantom_Hoover and elliott: server has been very stable recently.
23:32:53 <Vorpal> also changed mining pattern to high density
23:33:01 <elliott> Vorpal: http://addictionis.org/; s/any mention of cigarettes or drugs or anything/Minecraft/
23:33:53 <elliott> Phantom_Hoover: The font of the body?
23:34:15 <elliott> "Theano Modern Regular", it seems.
23:34:33 <elliott> Find open source fonts at http://kernest.com/styles/web-native
23:34:33 <elliott> and optimize them through http://fontsquirrel.com/fontface/generator
23:36:04 <Vorpal> elliott, it looks like my default serif font
23:36:14 <elliott> Vorpal: your firefox is old.
23:36:17 <Vorpal> I probably lack the font in question
23:36:23 <elliott> Vorpal: no, it's embedded.
23:36:36 <elliott> lol, i have 3.5.15 and it works
23:36:40 <elliott> Vorpal: you have css disabled or something.
23:36:49 <elliott> Vorpal: or you have NoScript enabled; it's probably paranoid enough to block fonts for no apparent reason
23:36:58 <Vorpal> elliott, no css is enabled. Maybe embedded resources are blocked
23:37:08 <Vorpal> unless it is data: or something
23:37:19 <Vorpal> elliott, yes noscript :P
23:37:37 <Vorpal> I have to say my default serif is crisper
23:37:44 <Vorpal> this is a bit hard to read
23:37:55 <elliott> yeah that one isn't very well-hinted
23:38:03 <elliott> it's not like that kind of type is exactly suited to screen display, either
23:38:43 -!- MigoMipo has quit (Read error: Connection reset by peer).
23:40:26 <elliott> Argh, where's the link to oiu gonw.
23:44:10 <elliott> 10.09.16:14:39:54 <Vorpal> <GreaseMonkey> http://pubacc.wilcox-tech.com/~greaser/mods/milky_makes_me_feel.mod <-- augh please include a warning like "this is not something that Gregor would have composed" :P
23:45:17 -!- oerjan has quit (Quit: Gooed knight).
23:46:52 <elliott> Phantom_Hoover: OK, remember that system I linked you to?
23:47:15 <elliott> found with the power of catseye
23:47:15 -!- GreaseMonkey has joined.
23:47:16 -!- GreaseMonkey has quit (Changing host).
23:47:16 -!- GreaseMonkey has joined.
23:47:19 <elliott> Firefox can't establish a connection to the server at www.memetech.com.
23:47:44 <Vorpal> elliott, it might be temp down?
23:47:45 <elliott> Phantom_Hoover: "oiu isn't unix"
23:47:53 <elliott> which appears to not even be web.archive.org'd
23:48:05 <Gregor> Apparently I've become the compositional standard for this channel.
23:48:09 <elliott> Vorpal: well it's still registered
23:48:09 <Gregor> Or at least for elliott.
23:48:19 <elliott> Gregor: read that line more carefully
23:48:22 <Vorpal> elliott, when did you last check if it was up?
23:48:26 <elliott> 10.09.16:14:39:54 <Vorpal> [[[[<GreaseMonkey> http://pubacc.wilcox-tech.com/~greaser/mods/milky_makes_me_feel.mod <-- augh please include a warning like "this is not something that Gregor would have composed" :P]]]]
23:48:42 <elliott> Gregor: It's actually just Vorpal being unable to appreciate music that couldn't have been made some hundreds of years ago.
23:48:47 <elliott> Vorpal: It was up a month or a few ago.
23:49:12 <Gregor> Modern pianos aren't 200 years old, so nyah ;)
23:49:17 <Vorpal> Gregor, yes you are the compositional standard. Except for those who you aren't.
23:49:36 <Vorpal> who hates proper music
23:49:50 <elliott> I have never ever said "dudes I hate classical music" ever.
23:49:50 * Gregor imagines that in a pompous British accent for the right effect.
23:49:59 <GreaseMonkey> i appreciate the music Vorpal likes but i also appreciate the music he hates too
23:50:10 <Gregor> Totes time to link Eric Allen's awesome music!
23:50:12 <Vorpal> elliott, indeed I'm just strawmanning as much as you are
23:50:13 <elliott> GreaseMonkey says the right thing for a change! I copy what he said into my input line and press enter.
23:50:16 <Phantom_Hoover> I appreciate hating Vorpal and I appreciate liking Vorpal.
23:50:36 <Gregor> http://erictheallen.com/audio/argylegargoyle.mp3 <-- DUDES it is the awesome!
23:50:53 <Vorpal> Gregor, you linked it before
23:52:11 -!- Phantom_Hoover has quit (Remote host closed the connection).
23:53:28 <elliott> http://web.archive.org/web/20080411221531/http://www.memetech.com/ RIP cap.pdf.
23:53:37 <elliott> You were too revolutionary to be served by a mere HTTP server!
23:53:39 <Vorpal> elliott, it MIGHT BE TEMP DOWN?
23:53:58 <Vorpal> elliott, and why didn't you save a copy?
23:54:06 <elliott> Vorpal: I PROBABLY DID, BUT I FORMAT MY HARD DRIVE TO NO END.
23:54:26 <Vorpal> elliott, there are so many reasons to not do that you see
23:54:32 <Vorpal> elliott, and now shut up about it :P
23:55:10 <Sgeo> "Added the Antiblocker, an experimental advanced node that only blocks packets when a buffer makes it malfunction. Based on information from Kong member Enthernalcz, this may make Exploit systems Turing-complete."
23:55:17 <Sgeo> http://www.kongregate.com/games/GregoryWeir/exploit