←2010-06-05 2010-06-06 2010-06-07→ ↑2010 ↑all
00:00:06 <chuck> alise, hahaha, nice
00:00:33 <alise> hey, I remember you ... well, i remember you being in here, just not anything about you
00:01:02 <chuck> me? haha
00:01:13 <chuck> i think i may have accidentally stumbled in here and idled for a few months maybe
00:01:22 <alise> i wish you were the chuck that drafted agora's ruleset, then you'd be interesting
00:02:01 <alise> Place menu.xml, rc.xml and autostart.sh in ~/.config/openbox
00:02:01 <alise> They can be found in /etc/xdg/openbox
00:02:06 <alise> You know, pacman, you could have done that yourself.
00:02:11 <alise> Lazy package manager...
00:02:40 <alise> let's see if this works
00:02:42 -!- alise has quit (Quit: Lost terminal).
00:03:47 <zzo38> If "pacman" and "mmaker" are both Arch Linux programs, why is it broken like that?
00:03:56 <zzo38> Perhaps you can file a bug report
00:07:29 -!- lament has quit (Ping timeout: 265 seconds).
00:11:53 -!- augur has quit (Remote host closed the connection).
00:12:07 -!- augur has joined.
00:36:19 -!- alise has joined.
00:36:23 <alise> blargh; I think xfce was better
00:36:32 <alise> this is something akin to the epitome of fussitude
00:37:51 <alise> 16:03:47 <zzo38> If "pacman" and "mmaker" are both Arch Linux programs, why is it broken like that?
00:37:54 <alise> It's a good question
00:38:00 <alise> I have a suspicion mmaker isn't just Arch
00:38:04 <alise> http://menumaker.sourceforge.net/
00:38:05 <alise> Indeed
00:38:48 <alise> I need someone to endorse xfce4 so i feel ok about using it
00:43:54 <jabb> I feel the control flow in Mimsy could be better, but it's hard to find an alternative
00:44:12 <alise> -- were the borogaves, and the nome raths outgrabe. if I have my spelling right
00:44:27 <alise> *borogoves, *mome.
00:44:47 -!- FireFly has quit (Quit: swatted to death).
00:45:18 <jabb> great poem
00:49:12 <zzo38> Godel, Escher, Bach, contain, same poem but in English, French, German.
00:49:58 <alise> Are you sure it's GEB that contains Jabberwocky?
00:50:02 <alise> Not his book on translation?
00:50:27 <zzo38> Yes it does contain Jabberwocky, I will check the chapter number right now
00:50:42 <zzo38> Chapter XI
00:50:51 <zzo38> Chapter XII
00:50:56 <zzo38> Chapter XIIII
00:51:03 <zzo38> Sorry, there is no chapter number.
00:51:18 <zzo38> Chapter CCCLXVI
00:51:26 <zzo38> I mean, page 366
00:51:48 <zzo38> Half of the chapters are not real chapter numbers
00:52:02 <alise> Gah, I still have an urge to typeset the Hitchhiker's Guide to the Galaxy.
00:52:22 <zzo38> Then, perhaps you can do so?
00:52:36 <zzo38> Are you going to include the appendix?
00:52:54 <alise> I would, but I'd need to find some text for it that has some sort of delineation to mark the italic portions; and some way to distinguish the open and close quotes.
00:53:02 <alise> If I had that, I could easily convert it into LaTeX and go from there.
00:53:05 <alise> zzo38: H2G2 has an appendix?
00:53:25 <zzo38> alise: I don't know if it does. But you can include it anyways if you really want to?
00:53:56 <alise> I'm pretty sure, as a work of fiction, that it doesn't.
00:54:01 <alise> Although House of Leaves probably has an appendix, and a tonsil.
00:54:02 <oerjan> appendix, spleen, tonsil, take your pick
00:54:07 <alise> oerjan: hello don woods
00:54:27 <oerjan> alise: i was thinking of the INTERCAL manual there
00:54:54 <oerjan> hm wait
00:55:01 <oerjan> that's what you were referring to
00:55:03 <alise> yes :P
00:55:06 <zzo38> The work of fiction "Harper's Challenge" does have appendices! ("Harper's Challenge" is a book working with me and some other people; and most of the data in the appendices are useless to to most people outside that group)
00:55:35 <oerjan> alise: i thought you meant house of leaves _actually_ had a tonsil. well i guess could be an INTERCAL homage
00:55:36 <alise> Well, uh, Douglas Adams was too awesome for appendices.
00:55:38 <alise> So there.
00:55:47 <zzo38> (But other people can still read the appendix if you want to read it anyways, in case you like to.)
00:55:49 <alise> oerjan: it doesn't, but with all the /other/ things that book has, it must have at lesat an appendix
00:56:02 <alise> oerjan: You can't do upside-down, spiral, coloured, ... text and not have an appendix, really.
00:56:25 <oerjan> you'd need an umbilical too, i think
00:56:33 <oerjan> (at the front)
00:57:49 <alise> i was about to ask "is the umbilical removable?".
00:58:50 <oerjan> *+cord
00:59:20 <oerjan> "After contacting the original author by the (nowadays nostalgic) means of sending an e-mail to crowther@sitename, where sitename was every host currently on the Internet"
00:59:33 <alise> :)
00:59:44 <alise> ucb!vax!...
01:00:57 <oerjan> um that wouldn't be Internet, would it?
01:01:04 <oerjan> uucp iirc
01:01:11 <alise> I forget what the exact paths looked like.
01:01:20 <alise> But I know it passed through a lot of non-"Internet" nodes.
01:01:30 <alise> A lot of conversion and whatnot, and also path components with their own curious semantics.
01:01:42 <alise> Was a wonderful time, not that I saw it, a wonderful, chaotic time, but a wonderful time nontheless.
01:01:47 <alise> *nonetheless
01:01:54 <oerjan> i thought the Internet was sort of defined by having the usual dot addresses
01:02:25 <Ilari> There probably are valid Internet E-Mail addresses that don't have dots in them...
01:02:28 <fizzie> There's an epilogue in the fourth book (of h2g2), that might be considered as a sort of an appendix.
01:03:07 * alise takes a look at it. I don't remember that epilogue. A strange one it is.
01:03:20 <oerjan> Ilari: e-mail != internet, is what i thought
01:03:33 <oerjan> usenet definitely was not the same as internet
01:03:37 <fizzie> The epilogue and the story are a bit unrelated.
01:04:17 <Ilari> There is no technical reason why TLDs can't have MX records, and in fact, some do.
01:04:27 <oerjan> Ilari: oh well, that.
01:04:52 <coppro> governments should set up ccTLD email addresses for everyone
01:05:20 <alise> no, that's a very bad idea
01:05:25 <alise> governments should stay the fuck out of the internet
01:06:37 <coppro> Yes and no. Yes, the Internet should not be controlled by governments, but it would be unreasonable to let anyone else set up ccTLD email addresses for a nations' citizens
01:06:51 <alise> Oh, you mean like foo@uk?
01:07:02 <alise> I don't really believe in ccTLDs for people, anyway. People move.
01:07:11 -!- Oranjer has joined.
01:07:14 <alise> Corporations, sure, corporations never "move" as such.
01:07:44 <alise> People, though, and groups that aren't specific to one country, shouldn't be on ccTLDs. The whole point of the Internet, more or less, is to remove geographical boundaries from the picture.
01:16:35 -!- alise has quit (Quit: Lost terminal).
01:22:42 <zzo38> I make hypernet, using hypernet there is no TLDs or anything like that, and no central authorities or central servers, it is completely decentralized. Central authorities are for defining standard protocols and nothing else. Hypernet can pass through anything, including internet, sneakernet disks, ham radio, barcodes, even by somebody remembering all of the numbers and then traveling to another country to type number on other guy's computer!
01:23:09 <zzo38> A hypernet address might look like the following, for example: FM/4.30/DS.AXYPPRAPPREIOTUMQOIZUNVKKOURA.401
01:24:00 <zzo38> Or: FP/1.111.129944.393.4491.22/ST.OAJDGOIJWENTIVNNURNRUUEJJEOQNEIRNNF.62
01:24:38 <zzo38> ("FM" is "file (menu)", "FP" is "file (plain)
01:24:52 -!- ec has quit (Ping timeout: 240 seconds).
01:24:53 <zzo38> ", "DS" is "digital signature", "ST" is "static", etc)
01:26:03 -!- ec has joined.
01:27:46 -!- augur has quit (Ping timeout: 260 seconds).
01:30:38 -!- ws has quit (Quit: ...).
01:31:14 -!- zzo38 has quit (Quit: +++).
01:42:47 -!- Gregor has joined.
01:44:18 -!- alise has joined.
01:44:49 <alise> Hello.
01:45:35 <AnMaster> alise, http://omploader.org/vNGlocw (safe for work)
01:45:43 <AnMaster> alise, detail of the panorama thing in lego
01:45:47 <alise> You know, I don't not click NSFW links. :P
01:46:08 <oerjan> BUT BUT YOUR CHILDISH INNOCENCE
01:46:22 <AnMaster> alise, okay, http://omploader.org/vNGlobQ http://omploader.org/vNGlobg (sfw, at least if you work at lego, otherwise boss might think you should grow up) ;P
01:46:28 <AnMaster> alise, now that is both SFW and NSFW
01:46:36 <AnMaster> HOW WILL YOU HANDLE THAT?
01:46:48 <alise> okay, now make porn involving it
01:46:56 <AnMaster> alise, I can't imagine that
01:46:58 <AnMaster> I just can't
01:47:08 <alise> well you'd need to add a few holes
01:47:39 <AnMaster> alise, lego has a lot of holes in all those technic 1xn bricks
01:47:52 <AnMaster> as well as in the technic beams
01:48:16 <AnMaster> alise, also filebin is down
01:48:26 <alise> Q: I always disable the user list in IRC clients; am I crazy?
01:48:27 <AnMaster> which mean I can't upload video of it's operation
01:48:28 <AnMaster> :)
01:48:32 <AnMaster> alise, yes
01:48:37 <alise> AnMaster: Crazy suggestion here -- YouTube
01:48:42 <alise> I know, right? YouTube for videos?
01:48:44 <alise> Sheesh!
01:48:49 <alise> AnMaster: But... /names
01:49:01 <AnMaster> alise, well, depends on your needs I guess
01:49:23 <alise> Hmm, the tabs layout looks ugly with this xfce theme.
01:49:27 <AnMaster> alise, as an op, to review the user list, quite useful to have one on the side
01:49:33 <AnMaster> alise, what? No I don't want to become famous due to youtube ;P
01:49:39 <alise> AnMaster, you can make videos private
01:49:41 <AnMaster> plus I forgot if I had an account there or not
01:49:42 <alise> only visible to those with url
01:49:57 <AnMaster> and if I had an account, what the fuck the user name was
01:50:00 <AnMaster> or password
01:50:11 <alise> bleh... on one hand, xfce is convenient
01:50:22 <alise> on the other hand, it'd be better if i was motivated enough to make something i like myself
01:50:23 <AnMaster> alise, anyway I had problems recoding it. I got quicktime from my camera
01:50:38 <AnMaster> ffmpeg to recode as ogg theora gave abysmal quality
01:50:53 <alise> Deewiant: I made powerpill give aria quiet=true, because no matter how many packages I install they always download instantly
01:51:01 <alise> And aria2 is really noisy
01:51:06 <alise> So I never see any download progress at all :-)
01:51:17 <alise> Gotta love that download-all-dependencies-at-once-from-hundreds-of-servers-at-once tactic.
01:51:22 <alise> Surefire way to max out your connection.
01:52:10 <alise> My current desktop: http://imgur.com/cDUlo.png
01:52:20 <alise> Guess what login manager I'm using, anyone...
01:53:46 <alise> I'll tell you the browser, Namoroka. Which is apparently Mozilla's latest "can't touch this" alternative for those not blessed to use its real name, Firefox.
01:53:47 <Gregor> How about /bin/login
01:54:27 <alise> Gregor: xdm.
01:54:36 <alise> Interestingly enough, xdm can be made to look good.
01:54:55 <alise> You go into its Xresources file, disable all the borders, use an Xft font, and make it use actual RGB colours.
01:57:16 <alise> Gregor: Btw, hackego broke agin.
01:57:56 -!- EgoBot has quit (Remote host closed the connection).
01:57:56 -!- HackEgo has quit (Remote host closed the connection).
01:57:59 -!- EgoBot has joined.
01:57:59 -!- HackEgo has joined.
01:58:25 <alise> Gregor: it happens when you give it a lot of commands at once, I think
01:58:50 <Gregor> Even more so than usual I don't have time to deal with that now :P
01:59:33 <alise> Gregor: Oh, then you'll be interested to know ALL my ideas for lonelydino!--
01:59:43 <alise> And that was, in fact, sarcasm, just in case you were wondering. :P
01:59:50 <Gregor> Okidoke.
02:03:13 <alise> Whaaaat? Pidgin depends on cdparanoia.
02:03:26 <alise> :-D
02:03:32 <alise> Because it depends on some GStreamer thing which depends on cdparanoia.
02:05:37 -!- augur has joined.
02:09:13 <alise> Hi augur.
02:09:20 <augur> hey alise
02:09:30 <Gregor> Hello suspiciously cordial people.
02:09:31 <alise> I am having real trouble finding a good text source for H2G2. :-(
02:11:49 <alise> SOMEONE FIND IT FOR ME.
02:16:40 -!- relet has quit (Quit: Leaving.).
02:18:56 -!- oerjan has quit (Quit: And a splendid night to you too).
02:19:56 <AnMaster> alise, powerpill? aria?
02:20:03 <AnMaster> wft?
02:20:05 <AnMaster> wtf*
02:20:17 <alise> powerpill is a wrapper around the Arch package manager pacman
02:20:20 <alise> it uses aria2 to do downloads
02:20:30 <alise> aria2 is a program that, given a file -- called a metalink or some nonsense --
02:20:44 <alise> will download a file from many servers, listed in the file, at once -- including HTTP, FTP, bittorrent, etc.
02:20:51 <alise> we're talking dozens of servers at once for one single file
02:20:56 <alise> the effect is, it completely maxes out your connection
02:21:05 <alise> even if you never get full speed, aria2 certainly will
02:21:12 <AnMaster> alise, that's not nice
02:21:21 <alise> the whole point is speed...
02:21:23 <AnMaster> aalnetiquette and so on
02:21:26 <alise> ??
02:21:28 <AnMaster> alise, * netiquette and so on
02:21:29 -!- HackEgo has quit (Remote host closed the connection).
02:21:29 -!- EgoBot has quit (Remote host closed the connection).
02:21:31 -!- HackEgo has joined.
02:21:31 -!- EgoBot has joined.
02:21:31 <alise> you're an idiot
02:21:32 <AnMaster> is what I meant to type
02:21:35 <alise> how does it violate netiquette?
02:21:43 <alise> it doesn't overload any server
02:21:47 <AnMaster> alise, well, it hogs a lot of mirrors
02:21:53 <alise> no, it doesn't hog them
02:22:00 <alise> anyway it's officially supported by a lot of stuff, so that's just rubbish
02:22:00 <alise> http://aria2.sourceforge.net/
02:22:04 <AnMaster> which makes it slower for other users if they are already near fully loaded
02:22:10 <AnMaster> alise, okay then
02:22:26 <AnMaster> alise, anyway, the mirror I use maxes my connection with normal wget
02:22:29 <AnMaster> so I'm happy
02:22:38 <alise> maxes as in all you ever get, or maxes as in what your ISP says you should get?
02:22:43 <alise> aria2 gives you the latter almost always
02:22:51 <alise> anyway, powerpill just downloads all the files of a package and its dependencies with aria2 given all the arch mirrors.
02:22:56 <AnMaster> alise, those two are close to each other
02:22:56 <alise> (simultaneously)
02:23:00 <AnMaster> I should get 8 mbit/s
02:23:17 <alise> AnMaster: I used to get 200-300KiB/s on downloads usually. 8 Mbit rated connection. aria2 gave me 800 KiB/s.
02:23:20 <AnMaster> I get 950 kB/s normally
02:23:24 <alise> far away from exchange
02:23:39 <AnMaster> alise, I'm just 50 kiB short of what I should get
02:23:45 <AnMaster> and that is probably TCP overhead and such
02:23:51 <alise> Well, you're lucky. Most people aren't so.
02:24:34 <AnMaster> alise, that is when I'm lucky, more often I get around 800 kiB/s from mirrors.kernel.org
02:24:44 <AnMaster> alise, which is still very good
02:25:04 <AnMaster> and about what you got with aria2
02:25:29 <AnMaster> alise, just use a good mirror, like mirrors.kernel.org
02:25:38 <alise> I've used every mirror there is, more or less
02:25:46 <AnMaster> alise, mirrors.kernel.org is just 12 hops away from me
02:25:59 <AnMaster> $ host mirrors.kernel.org
02:25:59 <AnMaster> mirrors.kernel.org is an alias for mirrors.geo.kernel.org.
02:26:04 <AnMaster> aha
02:26:08 <AnMaster> it goes to a mirror in Sweden
02:26:09 <AnMaster> :D
02:26:15 <AnMaster> umu.se
02:26:23 <AnMaster> I think that is Umeå University
02:26:35 <AnMaster> which is in north Sweden, so could have been closer
02:26:53 <AnMaster> alise, still best mirror ever for me, much better than other .se mirrors
02:29:40 <AnMaster> night →
02:29:40 <Sgeo_> alise, is picking the parts that I want, and scaling back if it goes over $1000, sensible?
02:29:44 <Sgeo_> Night AnMaster
02:31:00 <alise> DAEMONS=(syslog-ng @network !netfs @crond @oss)
02:31:08 <alise> ASYNCHRONICITY FUCK YEAH
02:32:36 <alise> Anyone used xfce's wm?
02:32:45 <alise> How do I stop it focusing a window when I use the scroll wheel in it?
02:44:58 -!- alise has quit (Remote host closed the connection).
02:47:47 -!- alise has joined.
02:50:53 <alise> What is it with yaourt and baffling periods of complete silence in which it does nothing?
03:00:32 <alise> Anyone know what part of gstreamer offers gstreamer-properties(1)?
03:04:47 <alise> sqlite3.c:45653:34: warning: assuming signed overflow does not occur when assuming that (X + c) >= X is always true
03:04:56 -!- calamari has joined.
03:05:09 <alise> Oh no, it's calamari.
03:05:19 <calamari> alise: ??? :)
03:05:27 <alise> Well, you're an octopus!
03:05:40 <alise> Not exactly an ... alive one, admittedly, but...
03:05:41 <calamari> nope, you're safe
03:05:52 <calamari> I'm a squid
03:06:00 <alise> err, right
03:06:01 <calamari> although arent octopus worse?
03:06:06 <calamari> err squid
03:06:07 <calamari> lol
03:06:15 <alise> all those deep sea things with tentacles are basically the same imo
03:06:20 <alise> no point distinguishing them right?
03:06:29 <calamari> not really.. octopus are much smarter than squid
03:06:40 <alise> yeah, I really care about that :-P
03:07:11 <calamari> and besides, calamari is actually a star wars return of the jedi reference
03:07:16 <alise> Gosh, the Mozilla source code really does take a long time to compile.
03:07:29 <alise> Serves me right for installing OSSv4.
03:07:42 <alise> I should have stuck with the nice big friendly, warm ball of mud that is ALSA.
03:08:04 <alise> How on earth that is related to Mozilla, you may all speculate.
03:08:16 <calamari> I tried OSSv4 but it wouldn't recognize my sound card
03:09:07 <alise> I just use onboard sound because the only sound card that matters is Soundblaster anyway
03:09:12 <alise> What do you have, some silly X-Fi nonsense? :P
03:10:23 <calamari> it's an older card that I've kept around because I like my roland sound canvas daughterboard (for midi)
03:10:42 <calamari> 02:02.0 Multimedia audio controller: Aureal Semiconductor Vortex 2 (rev fe)
03:11:04 <calamari> Although it really is something like turtle beach montego
03:11:46 -!- CakeProphet has quit (Ping timeout: 248 seconds).
03:12:05 <calamari> came installed in a dell p3 600MHz
03:12:59 <alise> Bah, get a Roland MT-32.
03:13:08 <alise> Then fail to ever figure out how to connect it properly. Like I did!
03:13:28 <alise> But seriously, that MT-32 is a beast. Totally reprogrammable sounds, perfect-sounding default set...
03:13:46 <alise> Has a little LED display; games used to display little messages on them when they started up as a goodie to whoever was lucky enough to own an MT-32.
03:13:52 <alise> Surprisingly heavy!
03:14:05 <alise> The sound that comes out has a little analogue fuzz in the background; quite endearing.
03:14:43 <calamari> alise: I don't have that unit, but the card I have is basically related
03:14:49 <calamari> probably has the same sound set
03:15:37 <alise> calamari: but that's the thing, the base MT-32 set isn't the special thing
03:15:44 <alise> it could be reprogrammed on-the-spot to produce different sounds
03:15:53 <alise> so indeed the things that sound so good with the MT-32 are because they reprogram it
03:15:57 <alise> thus the imitation cards are basically useless
03:19:16 <calamari> the turtle beach card can be reprogrammed.. but I liked the sound set on the scb-15 so I use it
03:19:28 <alise> a beach with turtles
03:20:07 <calamari> I tried different sound fonts, and it just never sounded right.. I'd heard the songs too many times the other way
03:20:34 <alise> I love the music from Monkey Island on an MT-32.
03:20:40 <calamari> actually iirc mt-32 was a selectable subset
03:20:47 <calamari> it wasn't the main sounds
03:20:59 <alise> Sounds fresh 19 years later. Or is it 20? Gosh.
03:21:06 <alise> I'm saying "gosh" an awful lot today.
03:21:20 <alise> xulrunner-oss is *still* building.
03:21:55 <calamari> and dd_rescue has been trying to pull bits from this microSD card for around 24 hours now
03:22:07 <calamari> I wish I could tell the kernel not to try so hard
03:22:31 <calamari> yes it's a broken card, no need for three 180 second timeouts to confirm that
03:23:11 <alise> the answer to "why do I need to rebuild xulrunner because of my sound system", incidentally, is "because <video> and <audio> would use ALSA otherwise".
03:23:53 <calamari> does flash use what is built into the browser?
03:25:51 <alise> Flash has its own thing
03:26:21 -!- coppro has changed nick to oppro.
03:26:28 -!- oppro has changed nick to coppro.
03:26:41 <alise> pooppy
03:27:46 <alise> calamari: how many files does mozilla have do you know?! far too many anyway
03:28:18 <calamari> not sure.. haven't used mozilla in many years.. been using firefox/iceweasel
03:29:06 <alise> Well, I mean Firefox.
03:29:11 <alise> But the essential XULRunner codebase is the same, I think.
03:29:35 <alise> "Namoroka" is the current codename so that's what I get on Arch
03:29:47 <alise> It's nicer than "Bon Echo", at least, and I forget what the other one was.
03:34:18 <alise> Finally! It is compiled!
03:34:36 <alise> coppro: could you `addquote the quote you added to the topic instead? I like just having the log url :<
03:34:38 <alise> or, you know, just remove it
03:35:40 <alise> ==> Finished making: xulrunner-oss 1.9.2.3-1 x86_64 (Sun Jun 6 03:35:11 BST 2010)
03:35:40 <alise> \o/
03:37:15 <alise> ==> Continue installing xulrunner-oss ? [Y/n]
03:37:15 <alise> ==> [v]iew package contents [c]heck package with namcap
03:37:15 <alise> ==> ---------------------------------------------------
03:37:15 <alise> ==>
03:37:15 <alise> Password:
03:37:18 <alise> [hang]
03:37:20 <alise> Uh oh.
03:38:16 <coppro> alise: never
03:38:23 <alise> coppro: why not?
03:38:34 <coppro> not addquote-worthy imo
03:38:40 <alise> then just delete it
03:38:44 <alise> like i said
03:40:57 <alise> i think powerpill is not working.
03:41:07 -!- poiuy_qwert has joined.
03:41:11 -!- CakeProphet has joined.
03:43:51 <coppro> alise: you're free to
03:44:03 <alise> SO ARE YOU :P
03:44:07 <alise> `quote
03:44:09 <HackEgo> 91|<oklopol> actually just ate some of the dog food because i didn't have any human food... after a while they start tasting like porridge
03:44:17 <alise> `quote
03:44:19 <HackEgo> 163|<fungot> alise: why internet is like wtf
03:44:24 <alise> `quote
03:44:26 <HackEgo> 61|<fizzie> Seconds. 30 of them. Did I forget the word?
03:44:37 <alise> `quote
03:44:39 <HackEgo> 148|<Keiya> Why are the cops in GTA always so obsessed with my asshole?
03:44:41 <alise> `quote
03:44:43 <HackEgo> 134|<Warrigal> A person's sex is not the same thing as their penis length.
03:44:46 <alise> `quote
03:44:47 <HackEgo> 5|<Quas_NaArt> Hmmm... My fingers and tongue seem to be as quick as ever, but my lips have definitely weakened... <Quas_NaArt> More practice is in order.
03:44:57 <alise> `quote
03:44:59 <HackEgo> 45|<PoPSiCLe> ah... the biggest problem with great Norwegian hip hop lyrics is that they're completely impossible to translate
03:45:50 <uorygl> I wonder why I said that a person's sex is not the same thing as their penis length.
03:46:37 <alise> Because it isn't, duh!
03:48:17 -!- alise has quit (Remote host closed the connection).
03:53:57 -!- alise has joined.
03:54:01 <alise> FUCKING FUCKITY FUCK
03:54:18 <alise> so yaourt builds shit in /tmp, i had to reboot before the RESULT OF AN HOUR-LONG COMPILATION PROCESS installed
03:54:28 <alise> turns out arch oh so helpfully removes every temporary file on bootup
03:54:30 <alise> as an actual bootup step
03:54:33 <alise> i cancelled it as soon as i realised
03:54:41 <alise> it managed to delete the resulting package file but not the source
03:54:51 <alise> give me a good reason not to kill myself right now?
03:55:23 <alise> You know what? Fuck HTML5. I'm using ALSA xulrunner and dealing with the lack of sound.
03:55:30 <alise> Fuck my life.
03:55:38 <alise> Fuck fuck fuckity fuck.
03:56:47 <alise> Anyone here believes there's a God? Or a meaning to life? Because you're wrooooooooooooong
03:56:54 <alise> And I have just experienced living proof
03:58:00 <uorygl> Koillinen, kaakko, lounas, luode.
03:58:34 <uorygl> alise: yes, but I don't say all true statements.
03:58:48 <alise> uorygl: wat
03:59:10 <uorygl> To paraphrase, you gave "because it's true" as a reason why I said something.
03:59:20 <alise> Believes, I said, not said.
04:00:05 <uorygl> Hm? I said, "I wonder why I said that a person's sex is not the same thing as their penis length.", and you said, "Because it isn't, duh!"
04:05:37 <alise> Oh.
04:05:42 <alise> I thought you meant <alise> Anyone here believes there's a God? Or a meaning to life? Because you're wrooooooooooooong
04:05:52 -!- zzo38 has joined.
04:05:54 <zzo38> Sorry, the SUMMON CTHULHU command is still broken.
04:06:53 -!- poiuy_qwert has quit (Quit: Leaving).
04:08:00 <alise> Thank god.
04:14:23 <zzo38> One day I shall fix it, but the syntax and operation of the command will still depend on operating system and server configuration (and maybe even the phase of the moon....no, probably not depend on the phase of the moon)
04:16:52 <zzo38> HELP command doesn't work before log in to IRC, but now I fixed it so that it can work even before log in to IRC!
04:17:13 <zzo38> http://zzo38computer.cjb.net/irc_log/help.txt
04:21:25 <zzo38> Do you think anything is missing or wrong in help file?
04:21:36 <zzo38> Or, any suggestion of improvement?
04:22:34 <alise> nope.
04:22:55 <Sgeo_> alise, people can give their own lives meaning if they want to
04:23:44 <alise> I LOST IT
04:23:54 <zzo38> Is it good? If you have important question, perhaps I can add in FAQ?
04:36:50 <alise> la
04:37:21 -!- CakeProphet has quit (Ping timeout: 276 seconds).
04:40:02 <alise> 4:39; how did that happen again?
04:41:55 <alise> Ah well.
04:46:46 <alise> lada
04:52:46 <alise> LOL
04:52:50 <alise> I figured out the package manager problem
04:52:54 <alise> yaourt is told to call pacman
04:52:56 <alise> erm
04:52:57 <alise> yaourt is told to call powerpill
04:53:01 <alise> powerpill is told to call yaourt
05:02:28 <zzo38> Now you should fix it
05:02:41 <alise> That is indeed what I did. Hooray.
05:03:05 <zzo38> Now is good?
05:03:21 <alise> Is good.
05:03:25 <zzo38> OK
05:06:56 <zzo38> Once I add in a "ChannelTypes" configuration option I might release my codes (currently it is hard-coded, and I don't want to release the codes lie this). Should I perhaps make a bit different name of a program?
05:10:27 <alise> 5:09 am, I should probably sleep
05:13:09 -!- sandhh has joined.
05:13:16 <alise> hi sandhh
05:14:57 <sandhh> hi alise
05:15:41 -!- sandhh has left (?).
05:17:31 <alise> My urge to create my own distro seems to be rekindling.
05:17:40 <alise> Anyone up for a fun burst of minimalism like last time? :P
05:17:48 <zzo38> What distro do you want to create?
05:18:23 <alise> The one I was trying to create before: very minimalist Linux distro with almost everything stripped down, almost all software replaced with more minimalist alternatives, probably statically linked everything, maybe even non-gcc compiler, non-glibc libc, ...
05:18:39 <alise> custom init system that's basically just a shell script
05:18:46 <alise> plus the thing i've finally figured out, the perfect package&configuration manager
05:19:13 <zzo38> OK, you can try. I also have idea for writing Linux distribution as well! (Once I get another computer I will start to do so)
05:19:37 <alise> I think I'll probably call the package manager bake, because it lets me call the files it uses dough.
05:19:57 <alise> /var/dough/xorg/dough.rc # or something
05:20:04 <alise> basically the idea is --
05:20:16 <alise> zzo38: do you know how some distributions, when you install a package, will configure other packages to use it when they're closely related?
05:20:23 <alise> Like, say, they'll add it to a menu or something more complex.
05:20:36 <zzo38> alise: No, I don't know how, I have not heard of it before
05:20:45 <alise> zzo38: Well, that's what they do. Pretty simple, right?
05:20:54 <alise> They'll edit the menu file, or add it to some daemon-spawner's configuration file, etc.
05:21:09 <zzo38> Yes, OK I understand
05:21:18 <alise> Well, the idea behind bake is to reject the idea that the unit is the "package".
05:21:22 <alise> Instead, it's the "configuration".
05:21:35 <alise> For instance, the firefox configuration expresses the configuration state of "having Firefox installed".
05:21:38 <alise> Why is this a good idea?
05:21:53 <alise> Consider a hypothetical firefox-in-gnome-menu configuration.
05:22:04 <alise> This configuration would express the configuration state of "having Firefox in the GNOME menu".
05:22:13 <alise> It would include the code to do and undo this.
05:22:17 <zzo38> Still, in *my* package manager, it will not do configuration of other packages once a package is installed, except possibly if a package depends on another package, it might do something (but only minimally)
05:22:31 <alise> The firefox package would have the rule that if GNOME is installed, the firefox-in-gnome-menu configuration is a reccomended package (but NOT a dependency).
05:22:56 <alise> Also, if there is some Apache module to install, it'd be apache-module-foo and /also/ apache-module-foo-configured that would try and edit the Apache configuration file to configure it.
05:23:09 <zzo38> Ah, OK, I suppose that is sense (if your package manager supports recomend mode)
05:23:13 <alise> The point is that you can control exactly how much it's integrated into the system, and also manage various configuration tasks, all from within the same framework.
05:23:24 <zzo38> Yes, it is sense now.
05:25:11 <zzo38> Do you know anything about NT object manager? Do you know how I can make it allow override of some standard DOS devices?
05:25:15 <zzo38> I have other questions also?
05:25:29 <alise> I don't know much about Windows, but I might know something about your other qusetions.
05:25:45 <zzo38> The other questions are also about NT object manager
05:26:39 <zzo38> I can see in the process explorer that ngircd.exe has the Section named \BaseNamedObjects\cygwin1S5-b99ad95be22e68fe\shared.5
05:26:40 <alise> Oh.
05:26:48 <Sgeo_> http://www.youtube.com/watch?v=sVY4SPk__Yc&feature=player_embedded
05:26:51 <Sgeo_> <3
05:29:37 <zzo38> I do have a program called "ddd.exe" to assign drive letters and DOS device names for objects in the NT object manager. But some driver is filling up COM3-COM9 so only COM2 can be assigned in this way (drive letters can also be assigned).
05:37:01 -!- calamari has quit (Quit: Leaving).
05:37:10 <alise> d
05:38:17 -!- CakeProphet has joined.
05:39:29 <zzo38> I found that if I use "ddd com2 \Device\Floppy1" then I can use "type com2", but other commands such as "copy" won't work.
05:39:37 -!- poiuy_qwert has joined.
05:40:09 -!- augur has quit (Remote host closed the connection).
05:41:49 -!- sandhh has joined.
05:46:04 -!- sandhh has quit (Ping timeout: 240 seconds).
05:52:34 -!- augur has joined.
05:52:47 <zzo38> However, I tried "type com2 > floppy1" and that way I did get a copy of the disk image.
05:55:51 <zzo38> However, the disk image created in this way cannot be mounted (the NT object manager does not support it; it just gives a error message about "The directory name is invalid" if it is tried)
05:56:15 <alise> Good night.
05:56:19 -!- alise has quit (Quit: Leaving).
06:00:51 -!- Oranjer has left (?).
06:01:32 -!- augur has quit (Remote host closed the connection).
06:01:37 <Gracenotes> time to fix programs the fun way
06:02:12 <Gracenotes> compile. look at what causes the multitude of error messages and fix that throughout the source code. repeat.a
06:03:39 <zzo38> I can see devices in the NT object manager that I don't know, including "PointerClass1", "ParTechInc2", "PROCEXP100", "0000007f", "KSENUM#0000002b", and so on...
06:04:13 <Gracenotes> hackers have taken over your computer
06:04:35 <Gracenotes> securely wipe it and use military-grade metal shredding
06:04:55 <zzo38> Is there some setting somewhere to prevent it from automatically assigning drive-letters (and other DOS device names) to USB devices?
06:09:39 <zzo38> I found another thing with "ddd". If I use "ddd z: \", I can then use commands such as "type z:\Device\HarddiskVolume2\config.sys" even though "dir z:\Device\HarddiskVolume2\" does not work.
06:21:00 -!- poiuy_qwert has quit (Quit: This computer has gone to sleep).
06:28:32 <zzo38> Using the "ddd z: \" and using "type" with various objects, I get all different kind of error messages depending on what I access, and some things do actually work.
06:28:57 <zzo38> Note that "type z:\Device\Null" does not work, but "type z:\Device\Null\" works.
06:30:33 <coppro> ...
06:30:54 <zzo38> NT object manager seems to act strangely
06:32:05 <coppro> no kidding
06:43:33 <zzo38> Does Microsoft even understand it? They invented it.
06:43:56 <coppro> I don't think the issue is the object manager
06:44:00 <zzo38> Surely the people to invent ReactOS will have to learn to understand it.
06:44:05 <coppro> but rather whatever it's trying to interface with
06:47:10 <zzo38> I think the NT object manager itself is strange. But at least I figured out a few things, such as that assigning COM2 to a floppy drive and then using "type com2 > outputfile" will work.
06:48:11 <zzo38> It creates a 1474560 byte file.
06:48:23 <coppro> hah
06:48:26 <coppro> neat
06:50:09 <zzo38> I also found out that "subst" entries and "ddd" entries are treated in the same way. That is, "subst z: /d" will do the same as "ddd -r z:", but "subst z: /d" will show an error message if it is not defined in the same way that subst entries are defined.
06:55:10 <zzo38> I just tried now, using "ddd z: \" will not allow "/cygdrive/z" to appear in Cygwin ("ls /cygdrive" just lists c and f)
06:55:40 -!- SgeoN1 has quit (Quit: Bye).
06:55:43 -!- zzo38 has quit (Quit: zzo38).
06:55:54 -!- Rugxulo has joined.
07:20:10 -!- Rugxulo has left (?).
07:29:14 -!- augur has joined.
07:57:26 -!- SevenInchBread has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:00:24 -!- CakeProphet has quit (Ping timeout: 264 seconds).
08:20:56 -!- MigoMipo has joined.
08:57:41 -!- augur has quit (Remote host closed the connection).
08:57:50 -!- augur has joined.
09:09:28 -!- augur has quit (Remote host closed the connection).
09:09:57 -!- augur has joined.
09:47:21 -!- relet has joined.
10:05:11 -!- KingOfKarlsruhe has joined.
10:10:48 -!- MizardX has quit (Ping timeout: 276 seconds).
10:13:16 -!- MigoMipo has quit (Read error: Connection reset by peer).
10:41:13 -!- tombom has joined.
11:02:30 <AnMaster> I just invented the most evil mix of switch and goto that I ever seen in C, just to save 6 bytes on the binary. (went from 650 to 644 bytes)
11:02:52 <AnMaster> http://sprunge.us/cOcN
11:03:41 <AnMaster> in my defence: this is embedded programming
11:08:02 -!- augur has quit (Remote host closed the connection).
11:11:18 <tombom> how is that evil
11:11:26 <tombom> it's less confusing than duff's device
11:11:41 <AnMaster> tombom, well okay true
11:11:50 <AnMaster> tombom, still more evil than the C I usually write
11:12:04 <AnMaster> also, coding for stuff that runs in interrupt handlers is tricky
11:12:13 <tombom> if it's embedded programming i think that's inevitable
11:12:20 <AnMaster> well yes
11:13:00 -!- augur has joined.
11:14:47 -!- BeholdMyGlory has joined.
11:24:39 -!- oerjan has joined.
11:29:06 -!- FireFly has joined.
11:34:19 <oerjan> <alise> turns out arch oh so helpfully removes every temporary file on bootup <-- i vaguely thought this was standard /tmp behavior
11:34:45 <oerjan> and /var/tmp was supposed to be used for things that should survive bootup
11:36:25 <oklopol> "<oerjan> didn't oklopol say something about this dice-rolling trick" <<< probably.
11:36:35 <oerjan> >_>
11:41:09 <oklopol> >_>?
11:41:20 <oklopol> i mean i've used dices tons amount
11:41:27 <oklopol> and i have noticed the thinmg
11:41:29 <oklopol> *thing
11:41:42 <oklopol> that sometimes i do know what i want after i've thrown the dice
11:41:54 <oerjan> oklopol: i detected a slight pun
11:42:12 <oerjan> yes, and i thought i recalled you saying so
11:54:18 <oklopol> oh okay
11:54:33 <oklopol> it was accidental, as you (probably) know by know
11:58:56 -!- oklopol has quit (Ping timeout: 260 seconds).
12:03:38 <AnMaster> <oerjan> <alise> turns out arch oh so helpfully removes every temporary file on bootup <-- i vaguely thought this was standard /tmp behavior <-- it is
12:04:49 <AnMaster> <oerjan> and /var/tmp was supposed to be used for things that should survive bootup <-- true but IMO it makes no sense.. Should be called /var/persistent or something ;P
12:08:33 <oerjan> um it's not really persistent is it, iirc it can be deleted on a longer time scale
12:09:17 <oerjan> obviously the real persistent files are in everywhere _other_ than */tmp/
12:14:37 <Ilari_antrcomp> Fun... Xorg wedged and the install is messed up and doesn't start. Seems like that one has to reinstall everything relating to X to fix it...
12:33:36 -!- oerjan has quit (Quit: Later).
12:47:45 -!- Gregor has quit (Ping timeout: 252 seconds).
12:53:11 -!- lament has joined.
13:28:24 -!- lament has quit (Ping timeout: 276 seconds).
13:40:02 -!- KingOfKarlsruhe has quit (Remote host closed the connection).
13:58:09 -!- sebbu2 has joined.
13:58:09 -!- sebbu has quit (Ping timeout: 252 seconds).
13:58:14 -!- sebbu2 has changed nick to sebbu.
14:02:26 <SevenInchBread> mmmm
14:02:30 -!- SevenInchBread has changed nick to CakeProphet.
14:02:58 -!- CakeProphet has quit (Changing host).
14:02:58 -!- CakeProphet has joined.
14:28:41 <Ilari> Hmm... Language where operators include numbers, indirection operator, addition, substraction, multiplication, quotent, remainder, comparision operators, if and while...
14:30:59 <Ilari> Oh, and assignment.
14:31:23 -!- alise has joined.
14:31:29 <alise> Hihi.
14:32:38 <alise> 03:02:30 <AnMaster> I just invented the most evil mix of switch and goto that I ever seen in C, just to save 6 bytes on the binary. (went from 650 to 644 bytes)
14:32:38 <alise> 03:02:52 <AnMaster> http://sprunge.us/cOcN
14:32:39 <alise> not evil at all
14:32:43 <alise> perfectly understandable
14:33:18 <alise> 03:34:19 <oerjan> <alise> turns out arch oh so helpfully removes every temporary file on bootup <-- i vaguely thought this was standard /tmp behavior
14:33:22 <alise> yes but is it really necessary?
14:33:25 <alise> it's active genocide
14:33:28 <alise> 03:34:45 <oerjan> and /var/tmp was supposed to be used for things that should survive bootup
14:33:33 <alise> well the package install is meant to go in one go
14:33:39 <alise> it's just that it froze my computer...
14:33:50 <Ilari> Duff's device is much more obscure than that construct.
14:34:19 <alise> Yes.
14:34:26 <alise> 06:28:41 <Ilari> Hmm... Language where operators include numbers, indirection operator, addition, substraction, multiplication, quotent, remainder, comparision operators, if and while...
14:34:30 <alise> Sounds like... a regular programming language
14:34:48 <alise> I appear to be relatively happy with this Arch / minimal XFCE setup.
14:35:03 <alise> LILO loader, JFS filesystem, OSSv4 sound system... and RAS syndrome.
14:35:06 -!- asiekierka has joined.
14:35:07 <asiekierka> OH NO
14:35:11 <asiekierka> I AM HERE
14:35:13 <alise> So really basically nothing in the base system is standard :-)
14:35:24 <alise> That would be grub, ext[34], alsa/even pulseaudio...
14:35:48 <alise> Hmm, apparently OSS doesn't support suspend.
14:36:04 <alise> That's a bit sad.
14:36:47 <asiekierka> im thinking about esolangs
14:37:53 <alise> How exciting.
14:38:36 <alise> Deewiant: what is it with people going from and to ubuntu and arch?
14:38:48 <alise> ubuntu->arch and arch->ubuntu seem to be... everywhere on the arch linux forums
14:38:51 <alise> they're not exactly similar distros...
14:39:19 <Deewiant> They're the two most talked about nowadays?
14:39:25 <Deewiant> Beats me
14:39:41 <alise> Yes, but it's something more than that; other distros like Gentoo and ... other ones don't have nearly as much Ubuntu interchange.
14:39:50 -!- MizardX has joined.
14:39:53 <alise> It's funny because I think the kind of person who likes one is the kind of person who wouldn't like the other.
14:40:23 * alise wonders why arch's gstreamer packages doesn't have gstreamer-properties
14:41:32 <Deewiant> Googling suggests Fedora's don't either; try gnome-media
14:42:21 <alise> Ah, it's GNOME.
14:42:29 <alise> I don't even have gconf installed, yet apparently gstreamer use it. How does that work...
14:42:40 <alise> Deewiant: What's that thing you said you used for packages now?
14:42:47 <Deewiant> clyde
14:43:00 <alise> Clyde is a next-generation libalpm/makepkg wrapper with AUR support, multithreaded downloading, and colorized output.
14:43:03 <alise> Shit, why didn't you tell me about this
14:43:05 <alise> >_>
14:43:06 <alise> :P
14:43:09 <Deewiant> I did :-P
14:43:28 <alise> Mind, I still have an urge for that aria2 magic...
14:44:17 <alise> In all seriousness: It should be perfectly safe to use, it only lacks a few
14:44:17 <alise> features that pacman has. Bugs can be posted to github under issues or at
14:44:17 <alise> http://bugs.archuser.com/index.php?project=4 or DigitalKiwi on freenode
14:44:29 * alise takes this as an invitation to bug em about aria2c
14:45:50 <alise> lol, it has its own getopt_long function for lua
14:45:56 <alise> Lua is so amazingly ugly
14:46:21 <alise> it's like mediocrity in language form, it's boring and ... slow to write, sort of thing, verbose but not in the way that Java is, in every possible way
14:49:23 <alise> Bauerbill is an extension of Powerpill that supports downloading and building packages from ABS, the AUR. CPAN and Hackage. As an extension of Powerpill it supports download acceleration via parallel and segmented downloads, including for source files when building packages. It also includes internal support for Reflector, Rebase and PkgD. Read the bauerbill and powerpill man pages for a more information.
14:49:28 <alise> WHAT IS IT WITH ARCH USERS AND WRAPPING PACKAGE MANAGERS
14:51:39 <alise> Now I need to decide between bauerbill, yaourt calling powerpill, and clyde. Ffff :)
14:52:34 <Deewiant> yaourt -Q 36.74s user 40.17s system 96% cpu 1:19.37 total
14:52:34 <Deewiant> bauerbill -Q 0.17s user 0.03s system 96% cpu 0.205 total
14:52:35 <Deewiant> clyde -Q 0.07s user 0.04s system 81% cpu 0.140 total
14:52:47 <Deewiant> yaourt -Ss svn 5.51s user 3.51s system 77% cpu 11.583 total
14:52:50 <Deewiant> bauerbill -Ss svn --aur 2.81s user 0.24s system 57% cpu 5.331 total
14:52:53 <Deewiant> clyde -Ss svn 0.35s user 0.16s system 51% cpu 1.005 total
14:52:57 <alise> Okay, point made. Definitely not yaourt.
14:53:11 <alise> But bauerbill has aria2c :(
14:53:17 <alise> but clyde is better made :(
14:53:32 <Deewiant> I care more about search speed than download speed
14:53:45 <alise> Deewiant: Remind me again of the speed of your connection?
14:53:54 <alise> In kibibytes-actually-achieved.
14:54:09 <Deewiant> With my current mirror... not sure
14:54:17 <Deewiant> Maybe a tenth of with aria2
14:54:22 <alise> Just give me roughly.
14:54:36 <Deewiant> Around a megabyte per second, I think
14:54:50 <alise> Mebibyte, that is?
14:55:01 <Deewiant> Around a megabyte == around a mebibyte
14:55:14 <alise> No, around a megabyte = around 1,000,000 bytes.
14:55:40 <alise> Deewiant: Well, I guess if you accept aroundness as allowing errors like that
14:55:53 <alise> Around 10 megabytes = around 9 megabytes = around ... = around 0 bytes
14:56:07 <Deewiant> :-P
14:56:11 <Deewiant> Around 1349.8 K/s
14:56:22 <alise> So, 1000 KiB/s, let's say. I get 800 KiB/s at absolute optimum (without aria2, at least). Usually, it's more like 300-400 KiB/s.
14:56:22 <Deewiant> Based on a few -Syu which downloaded nothing
14:56:32 <Deewiant> (Only the databases)
14:56:43 <Deewiant> With aria2, it was more like 11 M/s
14:56:44 <alise> So as you can see, Resident of the Ivory Tower of Speed, I need aria2 a bit more than you do. :P
14:56:52 <alise> Deewiant: 11 MiB/s? wtf fuck you
14:56:54 <alise> :|
14:57:12 <Deewiant> It often managed to find some really slow mirror though
14:57:21 <Deewiant> So it downloaded everything really fast and then hung for 10 seconds for some 100 kilobyte file
14:58:30 <alise> Eh? aria2 uses multiple mirrors, doesn't it?
14:59:00 <Deewiant> I don't know how it works but that's the end result I often saw
14:59:17 <alise> [ehird@ping ~]$ yaourt -Rcs yaourt
14:59:19 <alise> It's social commentary
14:59:25 <Deewiant> My guess is it just splits files and downloads separate parts from separate mirrors
14:59:31 <alise> Packages that were installed as dependencies but are no longer required by any installed package:
14:59:31 <alise> pacman
14:59:35 <Deewiant> There was a "minimum size to start splitting" configuration somewhere, I think
15:00:41 <alise> I guess bauerbill is perfectly cromulent.
15:01:17 <Deewiant> Whatever works for you
15:01:46 <alise> And in a burst of stunning intelligence, I remove yaourt before installing bauerbill, which I'm gonna bet isn't in the repos.
15:02:09 <Deewiant> It's probably good to learn how AUR is used manually anyway :-P
15:02:50 <alise> No, I've done it before and it's painful
15:03:01 <Deewiant> Painful?
15:03:09 <Deewiant> Download, untar, makepkg, pacman -U
15:03:41 <alise> You're painful
15:03:44 <alise> So nyah
15:04:02 <Deewiant> shrug
15:04:40 <alise> An extension of Powerpill which brings download acceleration, ABS, AUR, CPAN and Hackage support to Pacman, among other things.
15:04:43 <alise> Hackage support?
15:04:50 <alise> I am marrying this program now
15:04:53 <Deewiant> Yep... CPAN and Hackage
15:05:12 <Deewiant> I like to keep those things separate so it just seems bloaty to me :-P
15:05:20 <alise> Resolving aur.archlinux.org... 208.92.232.29
15:05:20 <alise> Connecting to aur.archlinux.org|208.92.232.29|:80... connected.
15:05:20 <alise> HTTP request sent, awaiting response... 200 OK
15:05:20 <alise> Length: 759 [application/x-tgz]
15:05:20 <alise> Saving to: “bauerbill.tar.gz”
15:05:29 <alise> Hmmmmmm.
15:05:43 <alise> Huh, that's actually correct
15:05:53 <Deewiant> :-P
15:05:55 <alise> #Maintainer: Xyne <ac xunilhcra enyx, backwards>
15:05:58 <alise> that's really excessive, sir.
15:06:00 <Deewiant> It's typically just the pkgbuild
15:06:05 <Deewiant> Sometimes, some patches
15:06:36 <alise> bauerbill'd up
15:06:59 <alise> Installing kernel26-ck from AUR will build the kernel, won't it.
15:07:11 <alise> All I want is the Brain Fuck Scheduler!
15:07:34 <Deewiant> And to have that, don't you need to build a kernel? :-P
15:07:51 <alise> Schedulers should eb modules >_>
15:07:59 <alise> *be
15:08:13 <Deewiant> Oh, right, that feature I try to keep disabled... I tend to forget modules even exist :-P
15:08:31 <alise> You'll like my distro, then :P
15:08:34 <alise> WHO NEEDS MODULES.
15:08:50 <Deewiant> I unfortunately need them since I need fglrx
15:08:57 <alise> AS I NEED NVIDIA
15:08:58 <alise> BUT BAH
15:09:02 <alise> SURELY YOU CAN COMPILE NVIDIA IN
15:09:13 <Deewiant> If they give you the source, yes ;-P
15:09:14 <alise> oh bauerbill wants to build as root
15:09:18 <alise> that is ensaddening
15:09:25 <AnMaster> <Ilari> Duff's device is much more obscure than that construct. <-- not really, it is infamous enough to be fairly well known ;P
15:09:26 <alise> Deewiant: Just link it in with magic :P
15:09:40 <Deewiant> I'm not magic enough
15:09:43 <AnMaster> (different meaning of obscure though)
15:10:02 <alise> INSUFFICIENT MAGIC.
15:10:12 <Deewiant> INSERT MORE MAGIC
15:10:26 <AnMaster> what is bauerbill?
15:10:26 <alise> MAGIC
15:10:27 <alise> [^]
15:10:29 <alise> erm
15:10:31 <alise> MORE MAGIC
15:10:32 <alise> [^]
15:10:32 <alise> MAGIC
15:10:43 <alise> AnMaster: powerpill extension
15:10:48 <alise> AnMaster: that does abs/aur/cpan/hackage
15:10:48 <AnMaster> I see
15:10:56 <AnMaster> alise, NO CTAN!?
15:10:59 <alise> what is it with people using "i see" as a condescending "i don't see"
15:11:03 <alise> it's weird
15:11:12 * alise obliterates poowerpill
15:11:14 <alise> Deewiant: you win, clyde it is
15:11:21 <Deewiant> Why's that now :-P
15:11:28 <alise> bauerbill wants to build packages as root
15:11:30 <AnMaster> alise, I use tllocalmgr for CTAN integration with pacman. On AUR but package maintained by an arch dev.
15:11:36 <AnMaster> works quite well
15:11:42 <Deewiant> You can probably change that
15:11:54 <alise> Deewiant: No, it complains about not having access to some directory
15:12:00 <alise> just like powerpill itself
15:12:02 <alise> so it's clearly not built to handle it
15:12:06 <Deewiant> Right; if you read any instructions, you'd chown alise:alise that directory
15:12:17 <Deewiant> Which is just a cache for downloaded packages
15:12:26 <alise> I... shut your mouth :|
15:12:38 <Deewiant> (chown -R preferably)
15:12:45 <alise> INSUFFICIENT SHUTTING
15:12:49 <Deewiant>
15:12:56 <Deewiant> ( )
15:12:57 <alise> SPACES ARE ALSO INPERMISSIBLE
15:13:00 <alise> AS ARE PARENTHESES
15:13:05 <alise> *IMPERMISSABLE?
15:13:12 <Deewiant>  
15:14:18 <alise> I know! I'll write my OWN pacman alternative. With blackjack and hookers.
15:15:01 <Deewiant> Impermissible/unpermissible/nonpermissible
15:15:04 <alise> HAHA I FUCKING CLYDED UP MY WORLD.
15:15:08 <alise> SHIT, IT IS DESIGNED FOR BLACK TERMINAL BACKGROUNDS.
15:15:12 <alise> THE PAIN
15:15:17 -!- tombom_ has joined.
15:15:54 <alise> error: you cannot perform this operation unless you are root.
15:15:59 <alise> Do I have to chown that dir for clyde too?
15:16:01 <alise> Or does it require root
15:16:25 <Deewiant> I think it just requires root
15:16:33 <alise> Even for building packages?
15:16:40 -!- tombom has quit (Ping timeout: 258 seconds).
15:16:57 <Deewiant> Depends on what you mean by "building packages"
15:17:08 <Deewiant> #You must set this to a normal user to install packages from AUR safely while running without sudo
15:17:11 <Deewiant> BuildUser = deewiant
15:17:13 -!- tombom__ has joined.
15:17:24 * alise wonders whether zen or ck is a better patchset
15:17:32 <alise> both include bfs but zen seems to include some irrelevant crap too..
15:17:45 <alise> but then con kolivas has neglected to tell us exactly what changes he's put in ck
15:17:50 <Deewiant> Is bfs somehow important to you? :-P
15:17:56 <alise> i know xen has tuxonice
15:17:56 <Deewiant> ck has a list of patches it contains
15:17:57 <alise> *zen
15:18:13 <alise> Deewiant: maybe so, but kolivas himself doesn't provide such a list afaik
15:18:21 <alise> Deewiant: I'd like BFS
15:18:31 <alise> Deewiant: just like I wanted JFS, and I wanted to boot from JFS, so I used lilo
15:18:31 <Deewiant> alise: http://users.on.net/~ckolivas/kernel/ -> patches -> 2.6.34 -> patches -> read them
15:18:37 <alise> just like I wanted OSSv4, so I even built mozilla
15:18:40 <alise> (although it got lost)
15:18:47 <Deewiant> Want less
15:18:53 <alise> no, wanting is nice
15:19:04 <alise> hmm TuxOnIce
15:19:16 <alise> not relevant to me because ossv4 fails at suspend :)
15:19:20 <alise> or maybe just normal suspend
15:19:21 <alise> meh
15:19:23 <alise> or maybe even just hibernate
15:19:24 <alise> MEH
15:20:16 <alise> http://www.kernel.org/pub/linux/kernel/people/ck/patches/2.6/2.6.34/2.6.34-ck1/patches/mm-zero_swappiness.patch ;; using int foo; to set foo to 0 is confusing
15:20:21 <alise> took me a while to understand that patch :P
15:20:30 -!- tombom_ has quit (Ping timeout: 258 seconds).
15:20:49 <alise> +config HZ_10000
15:20:49 <alise> +bool "10000 HZ"
15:20:50 <alise> +help
15:20:50 <alise> + 10000 Hz is an obscene value to use to run broken software that is Hz
15:20:50 <alise> + limited.
15:20:50 <alise> +
15:20:52 <alise> + Being over 1000, driver breakage is likely.
15:21:16 <alise> Deewiant: i have no clyde.conf, how can i get one to edit it
15:21:26 <alise> ah like that
15:21:43 <Deewiant> >_<
15:21:47 <alise> what
15:22:08 <alise> so uh what is the directory i should chown :D
15:22:26 <Deewiant> You don't need to chown with clyde, I don't think
15:23:06 <alise> [ehird@ping downloads]$ pacman -Sy
15:23:06 <alise> error: you cannot perform this operation unless you are root.
15:23:12 <Deewiant> Correct
15:23:13 <alise> err
15:23:17 <alise> [ehird@ping ~]$ clyde -Sy
15:23:17 <alise> error: you cannot perform this operation unless you are root.
15:23:19 <alise> not pacman
15:23:22 <Deewiant> Correct
15:23:27 <alise> So, what directory?
15:23:28 <Deewiant> chown won't help you, sudo/su will
15:23:37 <alise> Sudoing only /some/ of the time?
15:23:40 <alise> That's just ridiculous.
15:23:46 <Deewiant> Or all the time, if you want
15:23:48 <Deewiant> Doesn't matter
15:23:49 <alise> Or does clyde DROP privileges?
15:23:53 <alise> to build
15:23:58 <alise> If so, that's saner.
15:24:03 <Deewiant> I think so
15:24:03 <alise> I guess so, since it's a setting.
15:24:29 <Deewiant> I have a thing that does case $1 in (-Ss|-Si|-Q*|-T) clyde "$@" ;; *) sudo clyde "$@" ;; esac
15:24:34 <alise> I removed a repo from pacman.conf but it's still updating :/
15:24:42 <Deewiant> clyde is not a pacman wrapper
15:24:44 <Deewiant> Edit clyde.conf
15:24:47 <alise> Oh
15:24:55 <alise> They should all use the same config file >_>
15:24:57 -!- tombom_ has joined.
15:25:17 <alise> #XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u
15:25:17 <alise> #XferCommand = /usr/bin/curl %u > %o
15:25:25 <alise> Think replacing this with an aria invocation would work? :-)
15:25:34 <Deewiant> No idea
15:25:55 * Deewiant boots to Windows so I can legitimately choose to not answer your questions
15:26:08 <alise> :-D
15:26:14 <alise> Good to know I'm /that/ annoying
15:28:10 <alise> (-S* | -R* | -U | *)
15:28:14 -!- tombom__ has quit (Ping timeout: 260 seconds).
15:28:18 <alise> This could also be written as (*), could it not?!
15:29:12 <Deewiant> Yes
15:29:41 <alise> Hmph... defining a clyde function in bash doesn't override the binary?!
15:29:52 <Deewiant> Dunno, I don't use bash.
15:30:02 <alise> It was a rhetorical question.
15:30:22 <alise> Hey, how come you can do both (abc) and abc) in cases? are they equivalent, I wonder...
15:30:33 <alise> [ehird@ping ~]$ clyde
15:30:33 <alise> I like big butts and I cannot lie
15:30:33 <alise> error: no operation specified (use -h for help)
15:30:35 <alise> Okay so that part is working
15:32:00 <alise> -ck has disappeared?!
15:32:19 <Deewiant> From where?
15:32:59 <alise> AUR.
15:33:06 <alise> Huh, I didn't realise that -ck predated BFS by years.
15:33:09 <Deewiant> How's that
15:33:13 <Deewiant> O_o
15:33:19 <alise> Deewiant: There is no such package, unless AUR search is severely broken.
15:33:20 <Deewiant> Isn't BFS like really new? :-P
15:33:24 <alise> Deewiant: Yes.
15:33:30 <alise> But the other patches were popular beforehand, apparently.
15:33:33 <Deewiant> Yes
15:33:38 <Deewiant> -ck is old
15:33:38 <alise> And he just put BFS into -ck.
15:33:40 <alise> Right.
15:33:42 <alise> I wasn't aware.
15:33:52 <alise> I thought -ck was some thing he started to be BFS + other non-scheduler stuff.
15:34:06 <Deewiant> How's your AUR search setting in clyde.conf
15:34:11 <alise> Crazy anesthetists.
15:34:15 <alise> Deewiant: Oh, I was using the website >_>
15:34:33 <alise> [ehird@ping ~]$ clyde -Ss --aur '-ck'
15:34:33 <alise> error: you cannot perform this operation unless you are root.
15:34:34 <alise> eh?
15:34:36 <alise> isn't -Ss search
15:34:54 <Deewiant> Yep
15:34:57 <alise> Root?
15:34:58 <alise> What?
15:35:02 <Deewiant> Beats me
15:35:12 <Deewiant> As you can see from my thing above, I don't need root for that
15:35:13 <alise> [ehird@ping ~]$ sudo clyde -Ss --aur '-ck'
15:35:13 <alise> Cache directory: /var/cache/pacman/pkg/
15:35:13 <alise> Do you want to remove uninstalled packages from cache? [Y/n]
15:35:16 <alise> ???///
15:35:22 <alise> I guess I NEED TO CHOWN IT.
15:35:24 <Deewiant> Are you /sure/ your function is working?
15:35:31 <Deewiant> You don't, I checked that just before rebooting
15:35:38 <Deewiant> I've had it as root:root
15:35:39 <alise> [ehird@ping ~]$ /usr/bin/clyde -Ss --aur '-ck'
15:35:39 <alise> error: you cannot perform this operation unless you are root.
15:35:41 <alise> Not my function.
15:35:43 <alise> 's fault
15:35:50 <Deewiant> alise: Try ck instead of -ck
15:35:58 <alise> Ah, that works
15:36:06 <alise> It doesn't even have --
15:36:07 <Deewiant> I think it's giving -c to -S
15:36:09 <alise> How irritating
15:36:14 <Deewiant> Which is the "clear cache" thing
15:36:29 <alise> just "ck" produces a hideous deluge of irrelevancy; "linux ck" too
15:36:30 <alise> sigh
15:36:38 <Deewiant> alise: kernel26-ck probably
15:36:44 <alise> Deewiant: I tried that, no such package
15:36:46 <alise> even though it should be that
15:36:57 <alise> I am concluding that it is disappeared, even though it was there, like, yesterday
15:37:05 <alise> "A Simple Frontend, Using Zenity, and Portuguese of Brazil, For Pacman, the Archlinux Package Manager"
15:37:05 <Deewiant> Just do kernel | grep -e -ck
15:37:11 <alise> Using Zenity, and Portuguese of Brazil
15:37:37 <alise> aur/kernel26-ck 2.6.34-2 (134)
15:37:37 <alise> Linux Kernel built with Con Kolivas' patchset -ck
15:37:39 <alise> HOW THE...
15:37:45 <alise> aur/nvidia-ck 195.36.15-2 (35)
15:37:45 -!- asiekierka has quit (Ping timeout: 258 seconds).
15:37:45 <alise> NVIDIA drivers for kernel26-ck.
15:37:59 <alise> Oh I tried /linux/26
15:38:00 <alise> hurr
15:38:16 <alise> ( Unsupported package from AUR: Potentially dangerous! )
15:38:18 <alise> AIEEEEEEEEEEE
15:38:40 <alise> No I don't want to edit thje files, shut up for christ's sake
15:38:42 <alise> *the
15:38:50 <alise> I have a modicum of trust for my fellow man!
15:39:37 <Deewiant> There are other reasons than trust to edit the files :-P
15:39:43 <alise> Like?
15:39:50 <CakeProphet> alise: :o
15:39:56 <alise> Speak quickly before it starts actually doing something, Deewiant :P
15:40:07 <Deewiant> To get it to build, if it doesn't by default
15:40:12 <alise> Ah.
15:40:36 <alise> lilo is kick-ass~
15:40:45 <alise> why would anyone ever use grub. ever
15:41:02 <Deewiant> Doesn't need maintenance? :-P
15:41:23 <AnMaster> alise, isn't the ck branch dead?
15:41:30 <alise> AnMaster: no, he's maintaining it again
15:41:33 <AnMaster> alise, ah
15:41:36 <alise> since he came out with the Brain Fuck Shceduler
15:41:56 <alise> Deewiant: maintenance? It's not lilo's fault that package managers don't run "lilo" after upgrading the kernel.
15:42:03 <alise> That's, what, one line of extra code in every good package manager.
15:42:05 <AnMaster> <alise> since he came out with the Brain Fuck Shceduler <-- wait what?
15:42:07 <Deewiant> It's lilo's fault that it requires that
15:42:12 <alise> AnMaster: It's not anything to do with our Brainfuck.
15:42:14 <AnMaster> ah
15:42:24 <AnMaster> would have been awesome if it had been related
15:42:25 <alise> AnMaster: It's a designed-for-desktop-performance (i.e. not NUMA, not 40953 cores) scheduler.
15:42:41 <alise> AnMaster: Incidentally, it shows up the common wisdom of what you should give to make -j.
15:42:51 <AnMaster> hm bf for kernels? You would probably have to extend it with something like "call asm code" for calling special instructions
15:42:54 <alise> With BFS, the optimal setting is -j(cores); anything else is just a side-effect of a bad scheduler.
15:43:03 <Deewiant> I find that that depends on the CPU usage of the individual jobs
15:43:07 <AnMaster> but in general you have a 1:1 mapping to the system memory
15:43:10 <AnMaster> with your tape
15:43:31 <alise> Deewiant: http://ck.kolivas.org/patches/bfs/2632rc3v2631bfs303-kbuild.png
15:43:45 <alise> hmm, this is better:
15:43:46 <alise> http://ck.kolivas.org/patches/bfs/reverse-scalability.png
15:43:48 <alise> to illustrate the -j stuff
15:43:58 <alise> bfs is the green line obvs
15:44:04 <alise> (and four-core machine)
15:44:26 <Deewiant> Building the kernel, I guess?
15:44:40 <alise> Don't know about http://ck.kolivas.org/patches/bfs/reverse-scalability.png but the kbuild one is
15:44:45 <alise> The elapsed times seem a bit low for the kernel.
15:44:52 <AnMaster> alise, how many cores does that machine have?
15:44:52 <alise> (in the reverse-scalability.png one)
15:45:00 <alise> AnMaster: How about looking up to find the answer?
15:45:06 <alise> Go on, it'll be easy. It's really close to that thing you clicked.
15:45:40 <AnMaster> hm. probably pointless to ask. Seem to be loosing connection... damn lag...
15:45:49 <AnMaster> oh wait, now it is better again
15:46:14 <AnMaster> alise, hm? Looking down wrt my question here.
15:46:18 * alise sets 1000 Hz frequency, wonders why that isn't the default; according to http://www.kernel.org/pub/linux/kernel/people/ck/patches/2.6/2.6.34/2.6.34-ck1/patches/hz-default_1000.patch it should be
15:46:20 * AnMaster stabs ISP
15:46:23 <alise> AnMaster: Just fucking look.
15:46:27 <alise> <alise> http://ck.kolivas.org/patches/bfs/reverse-scalability.png
15:46:27 <alise> <alise> to illustrate the -j stuff
15:46:27 <alise> <alise> bfs is the green line obvs
15:46:27 <alise> <alise> (and four-core machine)
15:46:33 <AnMaster> alise, see about lag spike
15:46:35 <alise> I am not your personal reading-machine.
15:46:38 <alise> AnMaster: THAT HAS NOTHING TO DO WITH LOOKING!
15:46:50 <AnMaster> alise, when I asked that question that line HAD NOT YET REACHED ME!
15:46:51 <AnMaster> got it?
15:47:00 <alise> You didn't say that.
15:47:18 <alise> Aiee, the kernel configuratorotron
15:47:22 <alise> I didn't sign up for this
15:47:23 <AnMaster> alise, I did: "<AnMaster> alise, hm? Looking down wrt my question here. "
15:47:53 <AnMaster> alise, use the stock kernel then ;P
15:47:59 <alise> AnMaster: I certainly had no idea what that sentence meant.
15:48:07 <AnMaster> fair enough
15:48:15 <alise> It's okay alise, we can find where the preempt and dynamic ticks options are
15:48:19 <alise> Calm down and go through the menus carefully
15:48:20 <AnMaster> you are dumber than I thought ;P
15:48:22 * alise cries
15:48:28 <Deewiant> alise: /
15:48:44 <AnMaster> alise, iirc dynamic ticks is under processor features. But kernel config is fun any way
15:48:45 <alise> AnMaster: Has anyone ever really been far even as decided to use even go want to do look more like?
15:48:46 <AnMaster> anyway*
15:48:57 <alise> kernel config would be fun if i was assembling my distro; I am not.
15:49:14 <AnMaster> <alise> AnMaster: Has anyone ever really been far even as decided to use even go want to do look more like? <-- what? I couldn't parse that grammar
15:49:15 <alise> Deewiant: Doesn't seem to find the things I want
15:49:20 <alise> AnMaster: you are dumber than I thought :P
15:49:22 -!- asiekierka has joined.
15:49:32 <alise> Okay, dynamic ticks is on
15:49:42 <alise> They should be off
15:49:44 <alise> I will set them off
15:49:46 <AnMaster> alise, at least I pointed out lag spike just before
15:49:50 <alise> They are off now
15:49:52 <Deewiant> Why off?
15:49:53 <AnMaster> thought it was pretty clear from that context
15:49:59 <alise> Deewiant: Con Kolivas says to do that with BFS.
15:50:01 <AnMaster> you said look up
15:50:05 <alise> "THESE ARE OPTIONAL FOR LOWEST LATENCY. YOU DO NOT NEED THESE!
15:50:05 <alise> Configure your kernel with 1000Hz, preempt ON and disable dynamic ticks."
15:50:06 <AnMaster> I replied I need to look down
15:50:06 <Deewiant> Where?
15:50:07 <AnMaster> *shrug*
15:50:08 <alise> I don't /need/ them, but no harm, right?
15:50:10 <alise> http://ck.kolivas.org/patches/bfs/bfs-faq.txt
15:50:10 <Deewiant> Ah, okay.
15:50:22 <alise> │ Symbol: PREEMPT [=y] │
15:50:22 <alise> │ Prompt: Preemptible Kernel (Low-Latency Desktop) │
15:50:26 <alise> Good, I don't need to do anything else.
15:50:45 <alise> I refuse to get bogged down in the configurator; I'll end up disabling everything that I think I vaguely don't need, and end up with something that doesn't work.
15:51:09 <Deewiant> Disabling dynamic ticks increases power usage and stuff though
15:51:17 <Deewiant> (If you care about that)
15:51:26 <alise> You know, I don't think this thing is passing any -j options to the kernel makefile. Sigh.
15:51:28 <alise> Oh well.
15:51:30 <alise> Or maybe it is.
15:51:38 <alise> Deewiant: Does it increase fan usage?
15:51:49 <alise> I know that old CPUs always used 100% of their CPU with idle instructions.
15:51:50 <Deewiant> I would guess so since doesn't that mean that the CPU sleeps less
15:51:52 <alise> Is it similar to that?
15:52:01 <Deewiant> But I don't really know anything
15:52:12 <alise> Answer quickly I'm not sure whether to do it or not :P
15:52:21 <alise> Does it mean that the kernel always awakes every so often?
15:52:28 <Deewiant> Yes, I think so
15:52:28 <alise> turning it off that is
15:52:35 <alise> The patch is, presumably, putting the processor into a deeper sleep mode since the power savings from just reducing the timer tick frequency is minimal (if the CPU is 99.5% idle then making it 99.9% idle isn't a big different).
15:52:36 <Deewiant> You can read the help, you know :-P
15:52:44 <alise> That doesn't sound as bad as your hyperbole :P
15:52:54 <Deewiant> What hyperbole? :-P
15:52:56 <alise> "Also, for a system where the virtual processor being idle means more time for other virtual processors, going from 99.5% idle to 99.9% idle means that the cost of an extra idle system is cut by a factor of 5."
15:52:57 <alise> Blah blah blah
15:53:09 <alise> Deewiant: I was expecting more than a .4% difference from a 99.x% idleness
15:53:22 <alise> So taking a 1000hz clock interrupt actually consumes a significant amount of power.
15:53:27 <alise> WHY DO PEOPLE HAVE DIFFERENT OPINIONS.
15:53:37 <Deewiant> I was just saying there's a nonzero difference :-P
15:54:21 <alise> [ehird@ping ~]$ sudo dmesg | grep -i nohz
15:54:21 <alise> (nothing)
15:54:27 <alise> That means I'm not on dynamic ticks now, doesn't it?
15:54:34 <alise> elinux.org suggests using that as a test
15:55:03 <Deewiant> Beats me
15:55:20 <Deewiant> dmesg doesn't require sudo, though
15:55:29 <alise> Yeah but the wiki told me to :P
15:55:31 <alise> I tried it before without sudo
15:55:39 <alise> Hmm, it seems that the -ck package may overwrite your configuration
15:55:45 <Deewiant> So that, to me, suggests that the wiki doesn't know what it's talking about :-P
15:55:48 <alise> They might have updated it since ... yesterday ...
15:55:54 <alise> Fuck :-P
15:56:04 <alise> Deewiant: it seems relatively competent, http://elinux.org/Kernel_Timer_Systems
15:56:14 <Deewiant> Just saying; I dunno
15:56:15 <alise> make menuconfig
15:56:16 <alise> yes "" | make config
15:56:16 <alise> fff
15:56:21 * alise cancels the build
15:56:28 * alise downloads it and builds without that
15:56:40 <Deewiant> You do a lot of cancelling :-P
15:57:00 <alise> YOUR MOM does a lot of cancelling
15:57:05 <Deewiant> Maybe you should get in the habit of reading the instructions fully first
15:57:21 <alise> Actually, it's a bug in the package
15:57:25 <alise> that people only noticed yesterday
15:57:46 <Deewiant> This is why you might want to edit PKGBUILDs :-P
15:57:59 <alise> YOUR MOM might want to edit package builds.
15:58:16 <Deewiant> Watch it; I'm pretty close to just blanket-ignoring lines containing "your mom"
15:58:32 <alise> [ehird@ping kernel26-ck]$ zcat /proc/config.gz | grep HZ
15:58:32 <alise> CONFIG_NO_HZ=y
15:58:33 <alise> Bugger
15:58:40 <alise> Deewiant: Then you'd ignore your own line.
15:58:43 <alise> Are you suicidal, perchance?
15:59:05 <Deewiant> I don't think ignores work that way
15:59:11 <alise> <mordy> i used to just use 1000hz which cut like 15% from performance
15:59:14 <alise> hahahaha such conflictering
15:59:58 <alise> <mordy> alise: you definitely want dynamic ticks then
16:00:00 <alise> DYNAMIC TICKS IT IS
16:00:16 <Deewiant> :-P
16:00:46 <alise> I guess: "THESE ARE OPTIONAL FOR LOWEST LATENCY. YOU DO NOT NEED THESE!"
16:01:05 <alise> I wonder, if I set some hz option...
16:01:11 <alise> does that do anything if I have dynamic ticks?
16:01:17 <alise> I guess not, what with the whole no_hz thing
16:03:24 -!- asiekierka has quit (Ping timeout: 264 seconds).
16:03:31 <CakeProphet> alise: what on earth are you doing?
16:03:46 <alise> CakeProphet: compiling a kernel with a shitload of patches.
16:04:20 <alise> "
16:04:20 <alise> Ok, tried that but power demand is higher, without dyneticks and with 100Hz.
16:04:20 <alise> And powertop says I should go with dynamic ticks.
16:04:20 <alise> So I will go with dynetick, 100Hz and RCU_FAST_NO_HZ. I works best on my laptop system."
16:04:23 <alise> 100Hz?!
16:04:25 <alise> what the fuck is this
16:04:45 <Deewiant> Just use powertop and figure out what you want based on that :-P
16:04:51 <Deewiant> Or, if you want latency, just go 1000Hz
16:05:03 * alise installs powertop
16:05:08 <alise> Power usage doesn't bother me
16:05:12 <alise> fan usage and performance does
16:05:23 <Deewiant> So go max performance, then if the fan is loud, tweak it
16:05:32 <alise> I don't want to compile a kernel twice in one day
16:05:46 <Deewiant> That won't lead to good results :-P
16:05:55 <alise> Or I could just think about it before deciding :P
16:05:57 <alise> "< Detailed C-state information is not P-states (frequencies)" wat
16:06:04 <alise> 35.3% ( 93.7) <kernel IPI> : Rescheduling interrupts
16:06:04 <alise> 23.2% ( 61.7) <interrupt> : sata_nv, nvidia
16:06:04 <alise> 23.1% ( 61.4) <interrupt> : PS/2 keyboard/mouse/touchpad
16:06:04 <alise> 10.5% ( 27.8) <kernel core> : hrtimer_start_range_ns (tick_sched_timer)
16:06:11 <alise> Now if only I understood that!
16:06:17 <alise> Suggestion: increase the VM dirty writeback time from 5.00 to 15 seconds with:
16:06:17 <alise> echo 1500 > /proc/sys/vm/dirty_writeback_centisecs
16:06:17 <alise> This wakes the disk up less frequently for background VM activity
16:06:30 * alise lets it do that
16:06:32 <alise> Just go ahead, buddy
16:06:35 <alise> Do what you want
16:06:42 <Deewiant> That's how I use it, too :-P
16:06:54 <Deewiant> "uhh... sure, whatever"
16:06:57 <alise> Won't persist, though; will have to remember to put it in sysctl.
16:07:06 <alise> Deewiant: It's run out of suggestions now :P
16:07:13 <alise> I HAVE A MAXIMALLY PERFECT CONFIGURATION.
16:07:15 <Deewiant> It might come up with some more in a few seconds
16:07:19 <Deewiant> It does that
16:07:22 <alise> nvidia sure likes waking up
16:08:11 <alise> Deewiant: Okay, decision made: dynamic ticks, 1000 Hz (just in case that actually does anything).
16:08:27 <alise> It won't be /worse/ than what I have, and what I have is basically acceptable, so...
16:09:12 <alise> │ Symbol: RCU_FAST_NO_HZ [=n] │
16:09:12 <alise> │ Prompt: Accelerate last non-dyntick-idle CPU's grace periods │
16:09:13 <alise> wut
16:10:32 <alise> So, I'll use this kernel, then run powertop :P
16:15:01 <alise> Compiling btrfs; how pointless.
16:27:56 -!- cheater99 has quit (Ping timeout: 240 seconds).
16:29:11 -!- jabb has quit (Ping timeout: 252 seconds).
16:39:10 <alise> THIS POST SHOWS HOW TO CONFIGURE GSTREAMER THROUGH THE COMMAND-LINE. MOST PEOPLE WILL PROBABLY WANT TO INSTALL THE CLASSIC GNOME SOUND PREFERENCES GUI DIALOG AS INSTRUCTED IN THE FIRST POST.
16:40:53 -!- poiuy_qwert has joined.
16:42:25 <alise> "Javascript in recent years has been getting better and better, and now is a way better language than python. So to keep up with the times pygame has been rewritten for javascript. Please prepare your codebase with the py2js tool, which tries to automatically convert your python code into javascript.
16:42:25 <alise> Hopefully with a few years everyone will have upgraded their code, and it will be wonderful. I hope you all will enjoy this change to javascript. Further news, and release binaries to be announced *very* soon.
16:42:25 <alise> As can be seen by the April 1st date... this was a joke. hahaha."
16:42:28 <alise> Weakest April Fool's ever
16:42:44 <alise> "Really obvious, quickly-written joke... THIS IS AN APRIL FOOL'S! HAHA!"
16:43:03 <alise> Meanwhile, a game based on WireWorld: http://www.pygame.org/project-WireWorld-1517-2699.html
16:44:09 <alise> init scripts suck
16:46:13 <alise> XFCE's mixer is NICE!
16:46:21 <alise> I don't have to deal with ossxmix, but I can use all its controls!
17:02:46 <alise> So.
17:03:07 <alise> Why do package managers suck?
17:04:51 <CakeProphet> they're just too easy to use
17:05:10 <CakeProphet> I want to run makefiles and then hunt down dependencies and repeat.
17:05:36 <alise> But they handle the very specific case of system-configuration called "having a certain package installed"!
17:05:55 <alise> It's only rational for them to handle other system-configuration (by which I mean the configuration(i.e. state)-of-the-system, not literally /etc/foo.conf files)
17:05:58 <alise> s/$/./
17:06:19 <AnMaster> alise, wouldn't fit into the unix philosophy
17:06:23 <AnMaster> one tool for each task
17:06:36 <alise> AnMaster: did you blurt that out without actually asking me what I meant? Yes, yes you did.
17:06:55 <AnMaster> alise, sure
17:07:17 <alise> Unless you actually ask a coherent question that would give you sufficient information to make that judgement or not, I see no reason to reply.
17:09:24 -!- cheater99 has joined.
17:10:21 <alise> Blargh, init systems suck too.
17:25:08 <AnMaster> alise, suggest a better replacement
17:25:16 <alise> I am doing so, by writing one.
17:25:25 <AnMaster> how does it work?
17:25:31 <alise> "Cleverly!"
17:25:41 <alise> Basically I have several ideas that will be munged together.
17:26:02 <alise> There is no actual init program; init itself is just a shell (probably rc, since rc rocks) script.
17:26:03 <AnMaster> alise, well then, let me rephrase that: in what way is it different than traditional init systems such like sysvinit, bsd style init, upstart and so on
17:26:08 <AnMaster> ah
17:26:24 <alise> The basic idea stemmed out of just having an /etc/init.start script, say,
17:26:28 <alise> that had a bunch of lines like:
17:26:33 <alise> /etc/rc.d/foo.start
17:26:35 <alise> /etc/rc.d/bar.start
17:26:36 <AnMaster> alise, so far it sounds BSD style except you will have some problem by not having a process that is the parent to all other ones
17:26:36 <alise> etc
17:26:48 <alise> AnMaster: That process is the shell script; or perhaps a very light C program wrapping it.
17:26:49 <AnMaster> which means you couldn't kill zombie processes
17:26:51 <alise> Anyway, the extended idea is:
17:27:03 <alise> These shell scripts would contain one single piece of metadata: dependencies.
17:27:13 <AnMaster> alise, very light C program to just wait for childs and get rid of them sound best
17:27:27 <alise> deps=(a b c d) means "before we run this start script, you must have run /etc/rc.d/{a,b,c,d}.start".
17:27:52 <alise> The main init script would look at /its/ list of what to run, scan all their dependencies, then do the obvious algorithm to sort this into an order in which to run them.
17:28:03 <alise> It would also split this up so that it knew which tasks were completely independent of each other.
17:28:06 <alise> It would run those tasks asynchronously.
17:28:22 <alise> So basically, from specifying dependencies it would automatically find the optimal ordering, and run everything that can be asynchronous, asynchronous.
17:28:41 <AnMaster> btw: first panorama with the lego thing (somewhat boring scene yes, but meh, it is a test): http://omploader.org/vNGlwYw (warning: huge jpeg: 53 MP :D)
17:29:18 <alise> Does the lego thing automatically move around, or something?
17:29:24 <alise> If so, cool; you actually made something interesting for once.
17:29:27 <AnMaster> alise, yes, it rotates
17:29:41 <AnMaster> alise, I showed some images of it yesterday iirc :P
17:29:45 <alise> Also, FIREFOX HATES YOU.
17:29:49 <alise> OW. PAIN.
17:29:50 <AnMaster> and if you are going to insult me. hah
17:29:52 <AnMaster> got you!
17:29:55 <AnMaster> I did warn you
17:29:56 <alise> Sorry, *Namoroka
17:29:59 <alise> AnMaster: got me howso
17:30:16 <AnMaster> alise, with firefox, I haven't tried opening it in anything but gimp...
17:30:28 <alise> AnMaster: Anyway, one of my goals for the distro is startup to login with X11 in 2-4 seconds after the bootloader hands over.
17:30:29 <AnMaster> I assume it became very very slow and/or swap trashed
17:30:32 <alise> Closer to 2 than 4.
17:30:44 <AnMaster> alise, I use /sbin/login personally
17:31:00 <alise> Well, as long as it starts X11, the login manager doesn't matter.
17:31:21 <alise> Heck, just skip the login altogether: 3-4 seconds from end of bootloader to a minimalist window manager like dwm running an xterm.
17:31:24 <alise> That is my goal.
17:31:34 <AnMaster> alise, anyway that lego thing has some issues with the light sensor that checks the camera CF card status led (used to wait for camera to take picture before rotating)
17:31:35 <Deewiant> That's only some 300 MB of memory usage in Firefox
17:31:43 <AnMaster> (since otherwise you would get blurred images)
17:31:49 <AnMaster> Deewiant, heh
17:32:14 <alise> One thing's for sure: if nothing else, the init and package manager will be aesome.
17:32:16 <alise> *awesome
17:32:29 <AnMaster> Deewiant, the tiff (16 bits per channel) is a lot larger. I fear I got some strange postorizing (sp?) when converting it to jpeg due to the 16-bitness
17:34:07 <Deewiant> Yes, tiffs are usually huge
17:35:13 <AnMaster> Deewiant, even when deflate compressed yes
17:35:25 <AnMaster> 76 MB after removing the alpha channel
17:35:48 <AnMaster> (alpha channel act as a mask in enblend/enfuse output to mark areas with no image data)
17:35:57 <AnMaster> (however this was pre-cropped so there was complete image data)
17:36:02 <alise> arian
17:36:04 <alise> hfuahf
17:36:21 <AnMaster> hmh
17:37:07 <AnMaster> wait, that was the 8 bit tiff
17:37:14 <AnMaster> the 16 bit tiff is roughly twice as large
17:39:01 <alise> Wow! The kernel finished compiling!
17:39:11 <alise> And people do this on a regular basis.
17:39:17 <alise> ...Painful.
17:39:22 <Deewiant> How long did that take?
17:39:26 <alise> Too long.
17:39:45 <alise> let's see
17:39:48 <alise> I can use IRC logs to find approx. times
17:40:02 <Deewiant> Without -jN and with including stuff you don't need like btrfs, I guess I'm not that surprised
17:40:17 <alise> 08:09:12 <alise> │ Symbol: RCU_FAST_NO_HZ [=n] │
17:40:18 <alise> 08:09:12 <alise> │ Prompt: Accelerate last non-dyntick-idle CPU's grace periods │
17:40:18 <alise> 08:09:13 <alise> wut
17:40:18 <alise> 08:10:32 <alise> So, I'll use this kernel, then run powertop :P
17:40:18 <alise> 08:15:01 <alise> Compiling btrfs; how pointless.
17:40:28 <alise> So from around 8:10-8:15, tunes-time.
17:40:36 <alise> til 9:39
17:40:55 <Deewiant> What kinda machine?
17:40:58 <alise> so about one hour, 25 minutes
17:41:16 <alise> Deewiant: athlon x2 64 2something ghz, 1 gigabyte of ram
17:41:22 <alise> i think it may have done -j2, not sure though, maybe not
17:41:37 <alise> quite old 500 gb disk
17:41:41 <alise> which cost hundreds when it came out
17:41:42 <Deewiant> Possibly not
17:41:46 <alise> 7200 rpm i think
17:42:45 <alise> ==> Finished making: kernel26-ck 2.6.34-2 x86_64 (Sun Jun 6 17:42:02 BST 2010)
17:42:46 <alise> \o/
17:42:49 <alise> a lot of that was compressing the package though :P
17:42:58 <alise> -rw-r--r-- 1 ehird users 27M Jun 6 17:39 kernel26-ck-2.6.34-2-x86_64.pkg.tar.xz
17:43:00 <alise> Only that big?
17:43:01 <Deewiant> How big is the resulting kernel?
17:43:03 <Deewiant> Sheesh!
17:43:07 <Deewiant> Hugeness
17:43:11 <alise> lol
17:43:20 <alise> Deewiant: look my distro will be better 'kay :P
17:43:31 <Deewiant> My bzImage is what, maybe 3 megs
17:43:49 <AnMaster> alise, hm I suspect that with max zoom when taking the pano it would be way over 100 MP. A spherical one (not possible with current lego thingy) would probably be over a GP
17:43:52 <alise> Deewiant: are you sure you can't bundle modules in with the kernel without dynamic module support?
17:44:05 <AnMaster> however, I would need a super computer to stitch it, it is memory intensive
17:44:10 <Deewiant> alise: Err, what?
17:44:24 <AnMaster> and very random access so swap is an useless option
17:44:31 <alise> Deewiant: Like, build modules in, in a sense.
17:44:48 <AnMaster> alise, what? You need to build them in if you disable dynamic module support...
17:44:51 <Deewiant> I'm still not clear on what you mean
17:44:52 <AnMaster> what do you mean
17:45:03 <alise> I want to disable module support. I also want to use the binary nvidia module.
17:45:09 <Deewiant> You can't do both.
17:45:10 <alise> Can't these two desires coexist happily?
17:45:11 <AnMaster> alise, impossible I think
17:45:11 <Deewiant> Nope.
17:45:14 <alise> Deewiant: Why not?
17:45:19 <alise> The kernel doesn't have to /dynamically/ load a module.
17:45:22 <Deewiant> Because either it's a module or it's in the bzImage.
17:45:22 <alise> It could have it built-in.
17:45:40 <AnMaster> Deewiant, I think he want to build the 9 MB nvidia.ko into the kernel
17:45:43 <Deewiant> Just disable module unloading support and be happy with that :-P
17:45:47 <Deewiant> AnMaster: Yes, I got that now.
17:45:50 <AnMaster> well, it was 9 MB some years ago
17:45:56 <AnMaster> no clue how large it is now
17:46:02 <alise> Something wrong with having a big thing in the kernel?
17:46:31 <AnMaster> alise, the nvidia module is larger than the rest of my kernel + all my external modules (I have a few, stuff I use very rarely mostly)
17:46:44 <alise> So? My kernels will be very small, 1-3 MiB.
17:46:57 <alise> So adding nvidia to them will just make them a size of your regular bloated Ubuntu kernel.
17:46:58 <alise> So what?
17:47:17 <alise> (were it possible)
17:47:25 <AnMaster> no. a ubuntu kernel image is about 3.4 MB
17:47:27 <AnMaster> just checked
17:47:33 <AnMaster> but it has most stuff in modules
17:47:44 <alise> Well, whatever, pick some distro that doesn't do modules so much then
17:47:45 <AnMaster> so most won't be loaded probably
17:47:46 -!- poiuy_qwert has quit (Ping timeout: 260 seconds).
17:47:50 <alise> The one Arch just built is like 30 MiB
17:48:02 <AnMaster> what?
17:48:13 <alise> 27 MiB in a .tar.xz
17:48:13 <AnMaster> $ du -sh /boot/vmlinuz26
17:48:13 <AnMaster> 2,0M/boot/vmlinuz26
17:48:16 <AnMaster> arch default kernel
17:48:18 <alise> That's two copies though
17:48:21 <alise> No wait
17:48:22 <alise> just one
17:48:27 <Deewiant> alise: That includes the modules and stuff though, no?
17:48:27 <alise> AnMaster: it's the kernel26-ck
17:48:30 <alise> and I didn't bother tuning the settings
17:48:32 <alise> Deewiant: Yes, true.
17:48:34 <AnMaster> $ du -sh /boot/kernel26*
17:48:34 <AnMaster> 7,5M/boot/kernel26-fallback.img
17:48:34 <AnMaster> 1,8M/boot/kernel26.img
17:48:37 <AnMaster> those are the initramfs
17:48:40 <alise> Anyway, there's no inherent problem with a large kernel
17:48:44 <alise> s/$/./
17:48:45 <AnMaster> I use a custom kernel though
17:48:54 <AnMaster> $ du -sh /boot/kernel-2.6.34
17:48:54 <AnMaster> 2,4M/boot/kernel-2.6.34
17:48:56 <alise> I'm not really going to bother actively supporting seperate /boot partitions.
17:48:56 <AnMaster> no initramfs
17:49:05 <alise> *separate
17:49:11 <alise> Nor initramfses.
17:49:18 <AnMaster> alise, so you break encrypted /, / on lvm2 and so on?
17:49:19 <Deewiant> What's the point of an initramfs?
17:49:25 <alise> Deewiant: Bloat.
17:49:30 <Deewiant> That's not a point
17:49:33 <AnMaster> Deewiant, a lot for generic distro kernel
17:49:42 <alise> AnMaster: Eh. GRUB2 can handle LVM, I think.
17:49:43 <AnMaster> Deewiant, include just the required modules, but don't recompile the kernel
17:49:50 <alise> AnMaster: Encrypted / is pointless.
17:49:59 <alise> Encrypted /home, sure. Encrypted /etc, sure. Encrypted /var, maybe.
17:49:59 <AnMaster> alise, oh and / on raid
17:50:03 <alise> Encrypted /? Why encrypt binaries?!
17:50:08 <AnMaster> alise, if it isn't raid1, you need a seprate /boot
17:50:11 <AnMaster> separate*
17:50:26 <AnMaster> that is for software RAID, I can't afford hardware RAID
17:50:27 <Deewiant> Why doesn't RAID-1?
17:50:53 <alise> Anyway the recommended setup will be / is JFS and LILO as the loader.
17:50:54 <AnMaster> Deewiant, well in theory it does. But to grub it will just look like one disk is normal, after all they are perfect copies
17:51:04 <AnMaster> alise, I have / on software RAID
17:51:05 <Deewiant> Right
17:51:11 <AnMaster> alise, so, I need separate /boot
17:51:18 <alise> AnMaster: I don't care. You aren't going to be using my distro.
17:51:25 <alise> And I'm sure GRUB2 can handle it, being that it can handle everything.
17:51:36 <AnMaster> improbable
17:51:45 <alise> So is you using my distro.
17:52:10 * alise decides to leave arch-fallback as the non-ck kernel, for obvious reasons.
17:52:42 <alise> lilo run.
17:52:48 <alise> Time to reboot; see you when I fix my broken system.
17:52:58 -!- alise has quit (Remote host closed the connection).
17:53:13 -!- poiuy_qwert has joined.
17:55:44 <AnMaster> <alise> So is you using my distro. <-- no, if the author can't even spell
17:56:03 <Deewiant> Where's spelling wrong?
17:56:15 <AnMaster> Deewiant, s/is/are/ ?
17:56:33 <Deewiant> No?
17:56:50 <AnMaster> oh wait, I read it as a question
17:56:52 <AnMaster> meh
17:56:54 <Deewiant> [you using my distro] is
17:57:02 <AnMaster> "so are you using my distro?" was what I read
18:06:35 -!- alise has joined.
18:06:38 <alise> Utter horseshit.
18:06:49 <alise> The kernel refused to load the nvidia driver for some reason; said there was no such device.
18:07:23 <Deewiant> Complete and utter.
18:07:32 <alise> Utterly complete.
18:07:53 <fizzie> Umpirely cobbled.
18:08:52 <alise> Rotationally conferred.
18:09:52 <Deewiant> Darn, umpirely cobbled isn't a googlewhack
18:10:16 <alise> Deewiant: It's a 0-result.
18:10:20 <alise> Obviously.
18:10:37 <alise> "rotationally raped" is a googlewhack, but the only result is spam. Does that count?
18:10:39 <Deewiant> Why "obviously"
18:10:47 <alise> Deewiant: Who would say "umpirely cobbled"?
18:10:56 <Deewiant> Rotationally raped gives me 2710 results
18:11:06 <Deewiant> Oh
18:11:13 <alise> You have to use quotes.
18:11:17 <alise> Them's the rules.
18:11:18 <Deewiant> alise: Googlewhacks aren't usually counted as searching with quotes
18:11:20 <Deewiant> Nope
18:11:29 <alise> Really?
18:11:31 <alise> Huh. Okay then.
18:11:31 <Deewiant> Yep
18:11:37 <Deewiant> I think they use + these days though
18:11:40 <Deewiant> I.e. +foo +bar
18:11:46 <Deewiant> Since Google otherwise adds all kinds of crap :-P
18:11:48 <alise> Note: When you search Google, you may be able to find more reliable Googlewhacks by prefixing each word in your Google search with a "+" (for example, +endothelial +velveeta). It's not required, but may make whacking easier. Whack always has submitted queries that require an exact match. That is, Whack always has prefixed both words with "+" to require their presence, which (later, serendipitously) also avoided any stemming by Google. The rules here always h
18:11:48 <alise> ave been correct; entries in The Whack Stack always have been consistent with the rules.
18:11:58 <Deewiant> Right.
18:11:58 <AnMaster> alise, you did compile a new nvidia module for the new kernel right?
18:12:03 <alise> AnMaster: yep, nvidia-ck
18:12:04 <Deewiant> In the past, it wasn't required to add the +.
18:12:09 <AnMaster> alise, hm no clue then
18:12:15 <AnMaster> alise, what error?
18:12:22 <AnMaster> alise, and anything in dmesg?
18:12:34 <AnMaster> ARGH DAMN C++ error
18:12:37 <alise> "No such device", and dmesg was nvidia telling me to unload some moduels to try it; did so, didn't help.
18:12:45 <alise> Deewiant: 5,640 results for +retarded +flagella.
18:12:55 <alise> Also, it isn't required; just helpful.
18:12:58 <AnMaster> alise, which modules?
18:13:00 <Deewiant> Googlewhacking is harder these days than it used to be.
18:13:02 <AnMaster> did it tell you to unload?
18:13:05 <AnMaster> common/project.cpp:3420:68: error: cannot pass objects of non-trivially-copyable type ‘class String’ through ‘...’
18:13:07 <alise> AnMaster: some nvidiafb stuff and crap
18:13:10 <AnMaster> anyone has a clue wtf that means
18:13:18 <AnMaster> alise, well yes, those conflict
18:13:21 <Deewiant> My latest was evidently "crescentic pandas".
18:13:27 <AnMaster> alise, did you compile any of that into the kernel statically?
18:13:27 <alise> +cantakerous +flagella even has 2,190 results
18:13:32 <AnMaster> alise, then of course it wouldn't work
18:13:43 <alise> AnMaster: I compiled everything default, I think it piped yes to the kernel configurator or something
18:13:43 <Deewiant> Which, nowadays, has 3260 results.
18:13:46 <alise> Which is stupid, but there you go.
18:13:49 <alise> Deewiant: When was that?
18:14:02 <Deewiant> Don't know; haven't dated these.
18:14:14 <Deewiant> Pre-2007, I'm pretty suer.
18:14:16 <Deewiant> sure*
18:14:37 <Deewiant> Maybe 2005 or thereabouts.
18:14:37 <alise> 3,140 for +cantankerous +pandas
18:15:10 <AnMaster> why does leocad have an iphone version
18:15:13 <AnMaster> it is a lego cad system
18:15:20 <AnMaster> it doesn't make sense to use it on a phone
18:15:26 <alise> +flagella +bouncebackability has 4 results XD
18:15:44 <alise> +cantankerous +bouncebackability has *85*
18:16:03 <alise> AnMaster: are you sure it does?
18:16:16 <AnMaster> alise, see bottom of http://trac.gerf.org/leocad/wiki/CompilingGuide
18:16:24 <AnMaster> it says "iphone version"
18:16:50 <fizzie> Everything gets stuck on phones, purely for the perversity of it.
18:16:53 <alise> For money, I guess.
18:17:00 <alise> Most likely they want to sell it in the App Store or something?
18:17:02 <alise> Maybe not.
18:17:02 <AnMaster> alise, in a compilation guide?
18:17:05 <AnMaster> not money then
18:17:11 <alise> No, but you have to port it to sell it.
18:17:15 <AnMaster> hm
18:17:17 <alise> AnMaster: you need to buy the sdk to compile your own stuff for the iphone
18:17:20 <alise> it's like $90
18:17:23 <alise> cheaper to buy the app
18:17:30 <AnMaster> alise, wait, the sdk costs money?
18:17:32 <AnMaster> wth
18:17:38 <alise> Yes; you have to renew it too.
18:17:46 <alise> How do you think Apple makes its money? Apart from the, what was it, 30% cut off all sales too.
18:17:48 <AnMaster> alise, I presume there are torrents for it though
18:17:55 <alise> Er... how would that work?
18:18:01 <Deewiant> Hmh, googlewhack.com is broken.
18:18:05 <alise> You have to jailbreak your phone.
18:18:07 <AnMaster> alise, would work for jailbroken phones
18:18:09 <AnMaster> yes
18:18:13 <alise> and use one of the unofficial sdks
18:18:18 <AnMaster> but you would at least have the header files
18:18:20 <AnMaster> hm
18:18:35 <alise> To run an application on the iPhone, the application needs to be signed. This signed certificate is only granted by Apple after the developer has first developed the software through either the US$99/year Standard package or the US$299/year Enterprise package with the iPhone SDK.[9]
18:18:43 <alise> signed certificates, kerching
18:18:58 <AnMaster> yes that is the issue indeed
18:19:19 <AnMaster> so lets not use iphone, lets use some non-vendor-locked thing
18:19:28 <fizzie> There's that alternative "app store" for jailbroken phones and everything, though. I forget the name exactly.
18:19:37 <alise> Cydia or something. Or at least it used to be.
18:19:42 <alise> The jailbreaking scene moves so fast I have no idea what it is now.
18:19:50 <AnMaster> how hard is it to jailbreak nowdays? didn't it use to require soldering?
18:19:54 <fizzie> Cydia, right.
18:19:59 <alise> AnMaster: no, never
18:20:02 <alise> it's always been a software thing
18:20:05 <alise> and always been quite easy
18:20:07 <alise> very easy nowadays
18:20:09 <alise> Ask comex, he makes one of the jailbreaks :P
18:20:12 <AnMaster> alise, hm, was that for sim card thingy?
18:20:16 <AnMaster> near the beginning
18:20:48 <alise> I don't think you ever had to open it up, especially as opening it is near-impossible.
18:20:51 <alise> (It's a BITCH to open.)
18:21:24 -!- ec has changed nick to elliottcable.
18:21:42 <fizzie> (Away in a bus.)
18:22:03 <AnMaster> alise, I know someone who jailbroke ipod (last generation) and make it boot linux using something similar to good old syslinux or whatever it was called. That replaced DOS with linux in the memory
18:22:17 <alise> I broke my -- 4th generation, or something -- black and white iPod.
18:22:36 <alise> I had Rockbox on it; I don't think I ever quite got iPodLinux working.
18:22:38 <alise> Still, Rockbox had doom.
18:22:44 <fizzie> AnMaster: Loadlin, you mean? (Isn't syslinux that boot thing?)
18:22:45 <alise> Yes, one-bit doom with a clickwheel.
18:22:46 <alise> It was glorious.
18:22:49 <AnMaster> fizzie, ah that was it
18:22:52 <alise> Glorious, I tell you.
18:23:07 <AnMaster> alise, iirc that guy didn't use any existing jailbreak though, none of them were open source, all that existed at that time were windows blobs, so he reverse engineered one of them
18:23:29 <alise> I remember reading a beautiful story where someone reverse-engineered some part of the iPod by -- get this --
18:23:40 <alise> You know the little piezo that makes the click sound when you move the clickwheel around?
18:23:49 <Deewiant> Nope
18:23:53 <Deewiant> But do carry on
18:23:55 <alise> Well, it has one. Little electric piezo.
18:24:04 <alise> He used it to dump the internal contents of some firmware or whatnot.
18:24:10 <alise> By recording it playing the piezo according to the data.
18:24:13 <AnMaster> heh
18:24:16 <alise> Then cleaning it up, and converting it to data.
18:24:20 <alise> It played for hours or something iirc.
18:24:22 <alise> Beautiful.
18:24:25 <alise> "nilss over at the iPodLinux Project (previously on /.) has performed one of the coolest and most bizzare hacks I've seen in a while. He was able to extract the bootloader from the 4G iPod by sounding out ticks with the iPod's squeaky piezo. With some tweaking and a makeshift recording studio, he was able to dump the 64 kb file at 5 bytes/sec. And yes, this means that 4G iPods can now boot linux!"
18:24:32 <alise> http://hardware.slashdot.org/article.pl?sid=05/01/29/2017244
18:24:34 <alise> link is 404 now though
18:24:34 <AnMaster> alise, how did he get it to play the firmware?
18:24:51 <alise> AnMaster: by getting code on to it somehow
18:24:54 <alise> but they didn't have the bootloader, evidently
18:25:09 <AnMaster> alise, couldn't he had sent stuff back over some other connection then?
18:25:24 <AnMaster> also I bet it would require a lot of error correction to make it through
18:25:26 <alise> The piezoelectric buzzer inside the iPod that has the ability to play high pitched tones. As of yet it is only used to make a "click" noise when moving the wheel or pressing a button.
18:25:26 <alise> Nilss used the piezo in a very creative way to extract the boot ROM from the flash memory on the 4g models which was essential to figuring out how to run Linux on these new models with a changed architecture. Read the story here.
18:25:42 <AnMaster> hm
18:25:44 <alise> AnMaster: It was needed, though I forget the reason why.
18:25:48 <AnMaster> right
18:27:49 <alise> http://www.streamingmedia.com/Articles/Editorial/Featured-Articles/First-Look-H.264-and-VP8-Compared-67266.aspx lol look at this, turns out WebM is better than MPEG-4 at RIDICULOUSLY LOW BITRATES.
18:27:56 <alise> not MPEG-4, H.264
18:28:13 <alise> how utterly surprising, the absolute top quality video codec... isn't optimal at low bitrates
18:28:17 <alise> Quite frankly, shocked.
18:28:42 <AnMaster> 750K/s what a sucky download speed from code.google.com
18:28:48 <alise> lol
18:29:12 <Deewiant> alise: Since when is it "the absolute top quality"?
18:29:24 <alise> Deewiant: Well, okay; discounting lossless ones and other industry-specifics.
18:29:31 <alise> The absoluet top quality general-use codec.
18:29:34 <alise> You know what I mean. :P
18:29:36 <Deewiant> Isn't x264 better?
18:29:36 <alise> *absolute
18:29:45 <alise> x264 is an H.264 encoder...........
18:30:01 <alise> ...Hey, I knew something that Deewiant didn't! That's actually a first.
18:30:03 -!- p_q has joined.
18:30:06 <alise> Squee.
18:30:13 <Deewiant> No, it actually isn't
18:30:16 <alise> $ clyde -Rd xulrunner # this is a good idea
18:30:16 <Deewiant> But anyway
18:30:18 <Deewiant> *264
18:30:21 <alise> Deewiant: Yes it is.
18:30:25 <alise> x264 is a free software library for encoding video streams into the H.264/MPEG-4 AVC format. It is released under the terms of the GNU General Public License.
18:30:28 <alise> As of August 2008, x264 implements more features than any other H.264 encoder.
18:30:31 <Deewiant> alise: A first, I meant.
18:30:36 <alise> Oh.
18:30:40 <alise> What have I known before that you haven't?
18:30:52 <Deewiant> Many things, I'm sure. I don't memorize them :-P
18:30:59 <Deewiant> BUT ANYWAY
18:31:01 <alise> No, not that I know of
18:31:10 <alise> You know ... everything
18:31:17 <Deewiant> Last I heard H.264 was better than VP8
18:31:21 <alise> Of course.
18:31:33 <alise> But at very low bitrates without tuned encoder settings...
18:31:40 <Deewiant> And just now I realize that I misread what you said
18:31:41 <alise> Surprise, surprise, I don't even need to tel you the outcome.
18:31:44 <alise> *tell
18:31:48 <alise> Is keeping Firefox open after I forcefully remove XULRunner a good idea?
18:31:58 -!- poiuy_qwert has quit (Ping timeout: 265 seconds).
18:32:04 <Deewiant> I thought you were referring to VP8 for some reason
18:32:20 <Deewiant> It's probably fine
18:32:33 <alise> What if it tries to access some random file?
18:32:39 <alise> WHAT THEN.
18:32:40 <Deewiant> Like what?
18:32:52 <alise> Actually, you know what, I don't care enough about <video> and <audio> to compile Mozilla for it.
18:32:53 <alise> So never mind.
18:32:56 <alise> Deewiant: chrome:// stuff.
18:32:59 <Deewiant> Doesn't it have the stuff it needs open right from the start anyway
18:33:07 <alise> Not always, afaik.
18:33:43 <Deewiant> For an obvious example of something you've known is some of the BFS-related stuff from earlier today
18:34:01 <alise> Well, yes, but uh... it was sort of only half-not-knowing.
18:34:14 <Deewiant> How's that :-P
18:34:16 <alise> Like in this case you actually used your non-knowledge of some subject to make a comment that turned out to be nonsensical.
18:34:23 <Deewiant> Not really
18:34:24 <alise> Which is a different kind of not-knowing than the kind where you don't know something but it has no imapct.
18:34:26 <alise> *impact
18:34:26 <Deewiant> I was comparing x264 to VP8
18:34:33 <Deewiant> You thought I was comparing x264 to H.264
18:34:38 <Deewiant> Because I misunderstood what you said
18:35:01 <Deewiant> I still forgot that the format's H.264 and x264 is the encoder
18:35:13 <Deewiant> But I wasn't willfully as stupid as it may have seemed
18:37:21 <alise> Ah, okay
18:37:25 <alise> Then you are still unbeaten
18:37:26 <alise> Dammit
18:37:29 <alise> Why can't you be ignorant
18:37:31 <Deewiant> :-P
18:42:46 <alise> I should probably design my configuration manager some more.
18:43:43 <alise> http://www.energymech.net/users/proton/ wow at twsinit
18:49:46 <alise> I wish dietlibc wasn't gpl :(
18:52:04 -!- augur has quit (Remote host closed the connection).
18:53:11 -!- MizardX- has joined.
18:54:00 -!- MizardX has quit (Read error: Connection reset by peer).
18:54:10 -!- MizardX- has changed nick to MizardX.
18:57:47 <alise> Quantities defined as the combination of bits are actually elements of the elementary abelian group (Z/2Z)^n; and the relation defined as a<=b when a&b=a only creates a partial order (1011b is greater than 1010b but 1011b and 1101b are not comparable).
18:57:48 <alise> --[[Bit field]]
18:57:55 <alise> Wikipedia has no idea what audience it is writing for.
18:58:12 <alise> This is one section after talking about mutexes, and one *paragraph* after saying not to use enums for bitflags.
19:00:37 -!- oerjan has joined.
19:01:56 <alise> Hi oerjan.
19:03:36 * alise decides to write a little micro-grep.
19:04:57 <alise> Huh, regexps don't really have any useful options apart from case-insensitivity.
19:06:28 <alise> How interesting.^1
19:06:30 <alise> [1] Not actually interesting.
19:06:41 <alise> No, surely there must be others...
19:08:15 <oerjan> there's greediness, which is of course on a subexpression basis...
19:08:42 <oerjan> and there are ways to do case-insensitivity on subexpression basis too
19:08:47 <alise> that's not the Y in /X/Y though
19:08:56 <alise> greediness is part of the actual language
19:09:21 <oerjan> well perl has a number of options for how to treat strings consisting of multiple lines
19:10:01 <alise> yes; that doesn't apply for grep though
19:10:09 <alise> (so I feel perfectly justified in not implementing it :-))
19:10:26 <oerjan> (whether . matches \n, and whether ^ and $ match after/before \n, iirc)
19:10:41 <alise> yeah
19:10:44 <alise> in grep, of course, it's all line-based
19:11:18 <oerjan> you could of course do a grep with some other splitting (maybe based on a regexp...)
19:11:33 <alise> Hmm.
19:11:35 <alise> Maybe I will.
19:11:56 <alise> If I did, though, I still wouldn't need an option. I'll just make . match everything, including \n; if it's line-based, then the regexp will only be run on the one line, anyway.
19:12:10 <oerjan> however, my instinct is to revert to perl for anything that complicated :D
19:12:36 <fizzie> There's the "ignore whitespace in the pattern and allow comments" Perl flag too, but maybe that's not so commonly useful in a grep either.
19:12:43 -!- zzo38 has joined.
19:12:55 <zzo38> I added more idea in esolang list of ideas
19:13:04 <alise> oerjan: actually it would work fine
19:13:29 <alise> mugrep -s '\s+' '[0-9]+' ;; would match the all-digit columns of a whitespace separated file
19:13:31 <alise> e.g.
19:13:35 <alise> 123 4 a
19:13:39 <alise> <tab>bc<tab>4
19:13:40 <alise> 3
19:13:41 <alise> would print
19:13:42 <alise> 123
19:13:43 <alise> 4
19:13:43 <alise> 4
19:13:44 <alise> 3
19:13:59 <alise> oerjan: a bit overcomplicated though; I can't imagine any usecases that wouldn't also require more complex processing besides
19:14:15 <alise> and besides, in perl isn't that just
19:14:20 <oerjan> alise: there's the issue of how to separate the _output_ as well... if a match can contain \n
19:14:26 <alise> foreach split /\s+/, <> { print if /[0-9]+/ }
19:14:36 <alise> (or do you need to say $_ ~=?)
19:14:43 <alise> well, say, not print
19:14:48 <alise> oerjan: yeah
19:15:06 <oerjan> alise: $_ is not set by matching afaik
19:15:15 <oerjan> oh wait
19:15:23 <alise> it is by foreach, though
19:15:25 <oerjan> split probably does that
19:15:27 <oerjan> oh
19:15:36 <alise> my question was: does coercing a regexp to bool match it against $_?
19:15:41 <alise> it seems an obviously perly feature, but I'm unsure
19:15:48 <oerjan> alise: $_ =~ is redundant afaik
19:16:06 <alise> [ehird@ping ~]$ perl -ne 'print if /^abc$/'
19:16:06 <alise> abc
19:16:06 <alise> abc
19:16:06 <alise> d
19:16:06 <alise> f
19:16:07 <alise> xabcx
19:16:09 <alise> abc
19:16:11 <alise> abc
19:16:13 <alise> where the duplicated abcs are its output
19:16:15 <zzo38> I find use of greedy/un-greedy useful in regular expression
19:16:15 <alise> so yes, that should work.
19:16:40 <alise> foreach split /\s+/, <> { print if /\d+/ }
19:16:40 <alise> mugrep -s '\s+' '[0-9]+'
19:16:41 <alise> meh
19:16:56 <alise> zzo38: can you think of any useful regexp options other than /i and the newline-behaviour-changing ones?
19:17:20 <zzo38> No, I can't think of it (at the current moment)
19:17:30 <oerjan> alise: um _evaluating_ a regexp matches it against $_, afaik (not sure about list context)
19:18:17 <alise> oerjan: ah, you are correct
19:18:22 <alise> not evaluating, though; converting to scalar context
19:18:25 <alise> aren't regexps first-class?
19:18:40 <zzo38> Perhaps an option for including replacements inside of sub-expressions, in order to [1] match on the replacements and [2] use the sub replacement in the main replacement texts
19:18:48 <zzo38> Would be a bit useful in some cases
19:18:53 <oerjan> alise: i don't think so, maybe they are now
19:19:25 <zzo38> But I find greedy/un-greedy useful
19:19:34 <alise> huh, they're second-class?
19:19:34 <alise> strange
19:19:50 <alise> zzo38: That's not so useful, since I'm writing a mini grep clone
19:19:56 <alise> Well, actually a micro grep clone.
19:19:58 <alise> mugrep :P
19:20:18 <oerjan> alise: don't quote me on it though
19:20:46 <zzo38> OK, you don't have to include everything, but some things are useful
19:21:30 -!- kar8nga has joined.
19:22:32 <alise> Hmm, so the basic structure of a DFA regular expression is "accept X and continue; otherwise, go to Y"
19:22:49 <alise> where X is a character or character range (optimisation, we could just encode it as (a|b|c|d))
19:23:50 <cheater99> hello alise
19:23:51 <cheater99> how r u
19:24:06 <alise> so a|b|c ==>
19:24:07 <alise> _1: accept('a') || goto _2; goto _4;
19:24:07 <alise> _2: accept('b') || goto _3; goto _4;
19:24:07 <alise> _3: accept('c') || fail(); goto _4;
19:24:07 <alise> _4: ...
19:25:36 <alise> hmm, we can encode everything as ranges
19:25:36 <alise> [a-a]
19:25:45 <alise> although this makes [abc] a bit rubbish
19:26:02 <alise> the problem is that e.g. [\0-\255] would generate a pathologically large tree
19:26:50 -!- hiato has joined.
19:27:38 <oerjan> alise: this reminds me of that ehirdlang that was one of your first suggestions when coming here. http://oerjan.nvg.org/esoteric/ehird.pl (broken) and http://oerjan.nvg.org/esoteric/ehird.py
19:27:49 * oerjan waits for alise's acute embarassment
19:28:13 <alise> actually i like that lang
19:28:36 <alise> what's embarrassing about it
19:28:57 <hiato> yeah oerjan, what's embarrassing about it?
19:29:01 <alise> YEAH OERJAN
19:29:08 <hiato> COME ON MAN
19:29:23 <alise> [BEEP]ING [BEEP]ER [BEEP]
19:29:31 <alise> HUH? HUH OERJAN?!
19:29:38 <hiato> NOW WHAT?! I THOUGHT SO
19:29:46 <oerjan> alise: you were young and foolish, i _assumed_ you'd find it embarassing
19:29:57 <alise> hey only i'm allowed to call my past self foolish
19:29:59 <hiato> yeah alise, young and foolish
19:30:31 <alise> but regardless i think it's a good lang
19:30:35 <cheater99> she is still young and foolish
19:30:45 <alise> although:
19:30:46 <alise> print re.sub(".", prog[:-1], ".")
19:30:46 <alise> what is this
19:30:55 <alise> i can't tell what it's meant to do :)
19:30:55 <cheater99> lol
19:31:00 <hiato> lol
19:31:14 <oerjan> alise: anyway i remembered it because the perl shows how to simulate first class regexps with string variable interpolation
19:31:19 <alise> it's...
19:31:24 <alise> that's the same thing as print prog[:-1], oerjan
19:31:34 <alise> why did you write that.
19:31:43 <oerjan> is it?
19:31:55 <alise> you're replacing . with prog[:-1] in the string .
19:32:11 <zzo38> Do you know how to make program language with Egyptian hieroglyphics?
19:32:13 <hiato> not in the string re?
19:32:20 <alise> re is the regexp module
19:32:25 <oerjan> alise: oh, it does unescaping on the prog[:-1] as well
19:32:28 <oerjan> iirc
19:32:31 <hiato> aaah yeah, not ruby. My bad
19:32:34 <alise> oerjan: ah
19:32:42 <alise> oerjan: it also breaks it if you have \& or whatever it is in there :D
19:32:46 <alise> and \0 i think too
19:32:50 <alise> (as in literals, not the characters)
19:33:08 <oerjan> alise: um it's _supposed_ to be a regexp, isn't it
19:33:14 <cheater99> alise
19:33:16 <alise> no, foo. is meant to print foo i think
19:33:21 <cheater99> haven't you recommended pidgin to me
19:33:28 <alise> hmm... what would you guys call something that's either [abc] or [a-z] (possibly with only one character)
19:33:31 <alise> acceptance? range?
19:33:31 <oerjan> oh well
19:33:33 <alise> cheater99: ?
19:33:39 <cheater99> alise
19:33:40 <alise> cheater99: i think so
19:33:40 <cheater99> haven't you recommended pidgin to me
19:33:42 <cheater99> ok
19:33:45 <alise> why
19:33:46 -!- MizardX- has joined.
19:33:52 <cheater99> any idea how to make a contact go into multiple groups
19:33:56 -!- Gracenotes has quit (Ping timeout: 260 seconds).
19:34:09 <alise> you can't do it afaik
19:34:10 <cheater99> is it even possible??????????
19:34:13 <cheater99> omfg
19:34:14 <alise> i suggest not using groups
19:34:15 <cheater99> this is so bad
19:34:20 <cheater99> i have to use groups
19:34:21 <alise> cheater99: it's impossible with every client
19:34:23 <alise> afaik
19:34:26 <cheater99> i have nearly a thousand people
19:34:28 <alise> the server architectures don't support it
19:34:33 <cheater99> that's ok
19:34:39 <cheater99> i want to use it for the ones that i can use it for
19:34:45 <alise> 1,000 is well over the monkeysphere, delete 90%
19:34:51 <cheater99> no
19:34:56 <cheater99> you should see my facebook
19:35:01 <cheater99> it's all 16 year old girls
19:35:07 <alise> i figured.
19:35:13 <hiato> I din't.
19:35:15 <cheater99> so you have
19:35:28 <cheater99> I HOPE YOU ARE HAPPY NOW
19:35:41 <zzo38> Does the people who make ReactOS need to know the things I found in the NT object manager?
19:35:47 <alise> zzo38: Probably.
19:35:58 <cheater99> make sure to tell them
19:36:06 <cheater99> i hope win32 gets fully hacked at last
19:36:35 <cheater99> i think i should go and get some f00d
19:36:40 <cheater99> ttyl chaps
19:37:36 -!- MizardX has quit (Ping timeout: 276 seconds).
19:37:41 <zzo38> How do I tell them?
19:37:45 -!- maustin has joined.
19:37:45 -!- MizardX- has changed nick to MizardX.
19:38:11 <alise> zzo38: irc channel or mailing list
19:38:40 <alise> Hey, there's actually no regexp structure that doesn't fit the accept character, success&fail jumps model.
19:38:55 <alise> a*... is { x = {a, x, ...} }
19:39:10 <cheater99> what are you trying to do
19:39:24 <alise> a+... is { x = { 'a', y, fail }; y = { 'a', y, ... } }
19:40:02 <zzo38> Now we can make a accept/jump regexp program with macros, instead of writing regexp normally?
19:40:29 <alise> zzo38: I'm more using it as an implementation strategy :P
19:40:44 <alise> http://pastie.org/994060.txt?key=d8rirjx1oxekmnlvqi8lw
19:40:49 <zzo38> Yes, but we can do it both ways, maybe
19:40:53 <alise> Pretty sure I can shoehorn the entirety of regular expressions onto this.
19:40:56 <zzo38> Do you like this form? http://zzo38computer.cjb.net/misc/more_misc/send_money.htm
19:41:04 <alise> zzo38: You could write a preprocessor that turns sections that look like
19:41:11 <zzo38> alise: Including greedy/un-greedy?
19:41:24 <oerjan> alise: can you distinguish a.. what zzo38 said
19:41:24 <alise> #pragma regexp foo = /[0-9]+/i
19:41:26 <alise> into
19:41:30 <alise> some code that recognises it
19:41:34 <alise> and assigns it to the function pointer foo
19:41:41 <alise> oerjan: not sure
19:41:45 <alise> oerjan: I don't think so
19:42:05 <alise> oerjan: doesn't matter for grep, though
19:42:07 <alise> no groups
19:42:26 <oerjan> hm i guess
19:46:03 <alise> I was about to say "case-insensitivity will be really easy", but it won't be so easy for ranges
19:46:16 <alise> or, wait
19:46:29 <alise> can we downcase a range [a-b] by doing [lowercase(a)-lowercase(b)]?
19:46:40 <oerjan> no
19:46:46 <alise> yeah that's the problem
19:46:52 <oerjan> [D-a]
19:46:52 <alise> oerjan: but
19:46:57 <alise> oerjan: ah of course
19:47:06 <alise> heh, [^abc] is { [abc], fail, next }
19:49:05 <alise> oerjan: grr, how on earth do you downcase a range then... tricky (assuming your input is always lowercase)
19:49:15 <alise> of course, you can split it out then downcase every element, but that's very inefficient
19:49:37 -!- Gracenotes has joined.
19:49:45 <oerjan> alise: you only need to split it into at most 3 parts (assuming ASCII)
19:50:01 <alise> Howso?
19:50:09 <oerjan> oh wait
19:50:15 <oerjan> that's five parts
19:50:39 <oerjan> something, A-Z, something, a-z, something
19:51:07 <oerjan> each of those parts can be handled simply
19:51:50 <alise> Eh? :P
19:51:51 <oerjan> unicode would probably be horrible of course
19:52:10 <oerjan> alise: let's say you have [ -d]
19:52:52 <alise> Said.
19:53:16 <oerjan> it's the union of [ -@], [A-Z], [[-'], [a-d]
19:53:30 <oerjan> er
19:53:39 <oerjan> *[[-`]
19:53:54 <alise> you're crazy
19:54:04 <alise> anyway, sure
19:54:15 <oerjan> each of those ranges are easy to downcase
19:54:20 <alise> surely the algorithm to determine this won't be faster than an algorithm that just loops through at most 256 things, though :-)
19:54:45 <alise> i.e. go from start to end; downcase every character you see. If it is adjacent to the last character, increase the range by one. Otherwise, alternate it with a new range starting at the current character.
19:54:53 <oerjan> alise: oh one more thing
19:55:09 <oerjan> only one of those ranges actually _change_ while downcasing
19:55:52 <oerjan> meaning, hm, you actually only need 3 parts after all
19:56:27 <oerjan> [\0-@], [A-Z], [[-\?]
19:56:38 <oerjan> (iirc)
19:56:39 <alise> a?b = (ab|b) :P
19:56:52 <alise> a?b = { 'a', b, b }
19:57:14 <alise> oerjan: The main thing is algorithmic simplicity, though, unless it would involve bad runtime performance.
19:57:50 <oerjan> oh well
19:59:24 <alise> In fact, maybe I won't even support [a-b] internally, just translate it to [a..b] :P
20:02:05 -!- hiato_ has joined.
20:03:34 <alise> oerjan: worst case it would go through 255 states before finding a match
20:03:36 <alise> that's not so bad, is it?
20:04:03 <maustin> what is this you're working on?
20:04:35 -!- hiato has quit (Ping timeout: 276 seconds).
20:04:36 <alise> maustin: a micro grep implementation
20:04:42 <maustin> ouch
20:05:01 <alise> regexp is literal string, [abc], [a-b], [^abc], [^a-b], (...) for grouping, a|b|c, x*, x+
20:05:04 <alise> maustin: why ouch?
20:05:07 <oerjan> alise: um you would normally use a lookup table wouldn't you, rather than going through all character possibilities sequentially...
20:05:12 <maustin> why would you want to hurt yourself? : )
20:05:23 <alise> oerjan: Well... why didn't I think of that
20:05:28 <alise> maustin: why is that hurting myself? :P
20:05:38 <alise> oerjan: No seriously why O_O
20:05:44 <oerjan> heh :D
20:05:54 <alise> typedef struct {
20:05:54 <alise> enum { RANGE, ALT } type;
20:05:55 <alise> union {
20:05:55 <alise> struct { char start, end; } range;
20:05:55 <alise> char *alt;
20:05:55 <alise> } values;
20:05:57 <alise> } range;
20:05:59 <alise> GOODBYE FEEBLE STRUCTURE
20:06:30 <maustin> how much of regex do you want to support?
20:06:40 <alise> <alise> regexp is literal string, [abc], [a-b], [^abc], [^a-b], (...) for grouping, a|b|c, x*, x+
20:06:58 <alise> so just [...]s, (...)s, ...|...s, ...*s and ...+s
20:07:10 <alise> x+s are trivial, of course, just xx*
20:07:27 <oerjan> alise: so, _actual_ regexes, of the kind that can be turned into a finite automaton...
20:07:32 * alise always forgets how C functions can return arrays
20:07:36 <alise> since I use it so rarely...
20:07:37 <alise> oerjan: yes
20:07:58 <oerjan> alise: in that case it's even more wtf that you didn't think of lookup tables :D
20:08:08 <alise> sometimes my brain doesn't work.
20:08:39 <alise> oerjan: of course it's even more minimal than that, because it won't even handle greediness properly
20:08:45 <alise> oh i'll also handle x?
20:09:09 <oerjan> alise: well greediness is irrelevant for simply matching lines, as you said
20:09:31 <maustin> what about nested ()s?
20:09:34 <oerjan> in fact if you turned it into a DFA the greediness wouldn't show up at all
20:09:38 <alise> maustin: sure, but they're only for syntactical reasons.
20:10:23 <alise> x+? = (xx*)? = { A = { 'x', B, fail }, B = { 'x', B, ... } }?
20:10:46 <alise> x? = A with fail replaced with ...
20:10:53 <alise> { A = { 'x', B, ... }, B = { 'x', B, ... } }
20:10:56 <alise> as opposed to
20:11:03 <alise> { A = { 'x', A, ... } }
20:12:25 <maustin> (a|b) x|foo
20:12:38 <maustin> would you need backtracking or something for that?
20:13:38 <alise> no.
20:15:00 <alise> hmm
20:15:08 <alise> can a c function returning foo * return a local foo[n] variable?
20:15:40 <maustin> &foo[n] ?
20:16:13 <alise> no
20:16:14 <alise> as in
20:16:20 <alise> char *f() { char x[500]; return x }
20:16:30 <Deewiant> UB
20:16:35 <oerjan> alise: if it's on the stack it'll probably be overwritten, no?
20:16:36 <maustin> only if it's static
20:16:49 <maustin> or else, your computer will explode
20:17:33 <alise> yeah i thought so
20:17:37 <alise> but i hate malloc :<
20:17:58 <maustin> you can pass in a local
20:18:03 <Deewiant> If you just want 500 make it a global or static
20:18:24 <oerjan> alise: were you here when we discussed how to do that kind of allocation with CPS?
20:18:36 <oerjan> (relatively recently)
20:18:36 <alise> Deewiant: 256 actually
20:18:39 <alise> oerjan: like the Cheney on the MTA?
20:18:41 <alise> technique
20:18:46 <oerjan> alise: something like that
20:18:48 <alise> oerjan: yes, of course i know of it
20:18:51 <alise> i'm its main fanboy :P
20:19:13 <maustin> continuation passing?
20:19:30 <oerjan> alise: in our case we didn't consider it for scheme though, just for allocating extra memory safely on the stack
20:19:57 <oerjan> (and no thought for the GC)
20:20:22 <zzo38> I don't think a code like char *f() { char x[500]; return x } can work, you probably have to make a copy, or else, use it like f(g) { char x[500]; return g(x); } perhaps might work better
20:21:00 -!- lament has joined.
20:21:02 <oerjan> zzo38: well the last looks like the CPS
20:21:56 <oerjan> *latter
20:22:56 -!- hiato_ has quit (Ping timeout: 240 seconds).
20:23:11 -!- hiato has joined.
20:25:45 <alise> hmm, I never before noticed the lack of a file-specific #define
20:25:49 <zzo38> oerjan: O, I didn't know the CPS
20:27:00 <alise> hmm, not only do I need FAIL, I need END
20:27:09 <alise> is (void*)1 ever going to point somewhere according to the c standard? I bet it can
20:27:21 <oerjan> the END of FAIL
20:27:44 <zzo38> alise: I think yes, but not in protected mode
20:28:04 <zzo38> In protected mode, a command such as (void*)1 is probably a invalid command in C.
20:28:08 <alise> that's not the c standard
20:28:10 <alise> is it?
20:28:14 <alise> i don't think c talks about protected mode.
20:28:17 <alise> also it's an expression not a command
20:28:18 -!- MizardX has quit (Ping timeout: 276 seconds).
20:28:21 <zzo38> (Even if it works, it is still invalid)
20:28:37 <coppro> (void*)1; should never fail in C
20:28:52 <coppro> if it's dereferenced, sure
20:28:54 <coppro> but just casting? no
20:28:58 <oerjan> alise: C doesn't say anything about what numbers can be addresses, does it? in particular 0 is not necessarily NULL
20:29:12 <alise> oerjan: (void*)0 is guaranteed to be null, though
20:29:12 <oerjan> (er
20:29:21 <alise> in particular, the expression "0" of a pointer type is guaranteed to be NULL
20:29:26 <coppro> sure, but int i = 0; (void*)i; is not
20:29:29 <alise> yes
20:29:33 <oerjan> alise: what coppro said
20:29:47 <alise> coppro: what i mean is -- does *(X*)1 ever return something meaningful? *(X*)0 is guaranteed not to
20:29:53 <coppro> alise: It could
20:29:54 <alise> but I assume you're allowed to put stuff at 1
20:29:57 <alise> which is irritating
20:30:01 <alise> because I need two sentinel pointers!
20:30:12 <alise> I could malloc them to reserve some memory but come on :)
20:30:19 <coppro> that was going to be my suggestion
20:30:41 <alise> fine
20:30:45 <oerjan> alise: allocate a variable you never use... right. it doesn't need to be malloc though, couldn't it be static?
20:30:50 <alise> oerjan: ah, yes
20:31:07 * alise types "static void FAIL", slaps himself, types "static char FAIL"
20:31:36 -!- augur has joined.
20:31:38 <alise> static char sentinel[2];
20:31:38 <alise> static void *END = sentinel[0];
20:31:38 <alise> static void *FAIL = sentinel[1];
20:31:41 <alise> er, &sentinel[0]
20:31:54 <zzo38> Even if "(void*)1;" should never fail, I still think it is supposed to be invalid command in protected mode, even if it won't fail (it is obviously not something that *can* fail), but I still think it contains something which is supposed to be wrong in protected mode
20:32:08 <coppro> zzo38: what is this protected mode you speak of?
20:32:44 <zzo38> I mean protected mode that memory address cannot work like that in C
20:32:59 <coppro> why not?
20:33:12 <oerjan> zzo38: it's not that it's invalid, it's that it'll usually cause a page fault iirc. there was a linux exploit recently based on tricking something to allocate the first page in user mode
20:33:34 <coppro> yep
20:33:41 <oerjan> (or maybe it's not so recent any longer)
20:33:50 <coppro> the kernel was missing a NULL check, so it would look into user memory there
20:34:51 <alise> last_success = &rxp->success;
20:34:51 <alise> last_failure = &rxp->failure;
20:34:59 <alise> Quiz: Why not just {last = rxp}?
20:35:22 <oerjan> alise: perversely, i think you'd probably be safe in practice then if you put your sentinels in the same page as NULL
20:35:40 <oerjan> (but as usual, don't quote me on that)
20:35:42 <alise> "That's so perverse."
20:36:21 <coppro> I don't think the kernel will allocate memory in the first page unless specifically requested
20:36:22 <oerjan> but there's no guarantee of it, i guess. or for pages to even _exist_ in plain C...
20:36:32 <alise> Nobody wants to take my quiz challenge (
20:36:33 <alise> *:(
20:36:39 <coppro> (well, it will allocate its own memory, but it won't map another program's memory there)
20:37:19 <zzo38> What quiz challenge?
20:37:28 <zzo38> I don't know the answer
20:37:49 <oerjan> alise: perhaps you're deallocating rxp?
20:37:57 <zzo38> I don't even know the question even though I can see it
20:37:58 <alise> Nope.
20:38:07 <alise> The answer is that, take for instance [^abc]
20:38:14 <alise> Then we set last_success = &rxp->failure; and vise-versa
20:38:14 <zzo38> I don't even know the quiz, even though I can see that too.
20:38:16 <alise> See how that works?
20:38:23 <oerjan> ah
20:38:32 <alise> case '*':
20:38:33 <alise> *last_success = last;
20:38:33 <alise> last_success = last_failure;
20:38:34 <alise> Not sure that's correct.
20:38:40 <alise> Should the two really be equal? I guess * never fails.
20:38:43 <alise> So failure is success
20:38:49 <alise> So (a*|b) is the same as a*.
20:38:51 <alise> It will never fail.
20:39:23 <oerjan> alise: um it could fail by backtracking
20:39:30 -!- JodaZ has joined.
20:39:32 <alise> No backtracking in a regular regexp.
20:39:48 <alise> case '?':
20:39:48 <alise> last_success = last_failure;
20:39:49 <alise> break;
20:39:49 <alise> :-)
20:39:49 <JodaZ> are there any compilers that compile a high level language to brainfuck ?
20:39:53 <alise> JodaZ: yes
20:39:59 <JodaZ> alise, name ?
20:40:01 <alise> JodaZ: Pebble, BASIC-BF or whatever it's called, and C2BF.
20:40:03 <oerjan> alise: say (a*|b) matching b
20:40:14 <oerjan> oh wait
20:40:15 <alise> Pebble is designed for BF and also unmaintained, C2BF actually compiles a decent subset of C to Brainfuck and is unmaintained,
20:40:21 <zzo38> JodaZ: Also BrainClub
20:40:22 <alise> BFBASIC or whatever was used to write LostKng.b.
20:40:27 <alise> zzo38: forthlikes are not high elvel :P
20:40:32 <alise> *level
20:40:33 <alise> brb
20:41:02 <oerjan> *alise: say (a*|b)a matching ba
20:41:19 <JodaZ> thanks, zzo38, alise
20:41:22 <zzo38> Well, yes, it is more lower level than BASIC and C, but it can be used even using high level codes and low level codes, which is like how Forth works in general. (Still, BrainClub is not Forth, it is just a bit similar)
20:41:30 <oerjan> sometimes you have to backtrack
20:42:01 <oerjan> hm assuming that's matching at start
20:42:16 -!- zzo38 has quit (Quit: Spider Tarot Deck Standards Document).
20:42:16 <oerjan> (add ^ as appropriate)
20:42:58 -!- coppro has quit (Remote host closed the connection).
20:43:31 -!- coppro has joined.
20:43:41 <oerjan> alise: anyway regular regexps can certainly require backtracking unless you convert them into finite automata first
20:45:29 <oerjan> c(a*|b)c matching cbc for a clear example
20:48:25 -!- hiato has quit (Quit: quick reset).
20:48:48 -!- hiato has joined.
20:52:52 <alise> oerjan: (a|b)c = (ac|bc)
20:52:55 <alise> i can take advantage of that, surely?
20:53:02 <alise> to avoid the (a*|b)c problem
20:53:21 <alise> oerjan: anyway (a*|b)c can be done normally by wiring up c's failure pointer to b
20:53:26 <alise> then b's failure pointer to FAIL
20:53:30 <alise> not sure what algorithm that would involve though
20:55:25 <oerjan> sure you can do little hacks, but will they work on all cases...
20:55:50 <oerjan> the _intuitive_ algorithm uses backtracking
20:57:09 <oerjan> and of course backtracking can blow up exponentially, a*** and stuff...
20:57:27 <alise> yeah...
20:57:31 <alise> the proper nfa stuff is quite complicated
20:57:32 <alise> comapred to this
20:57:34 <alise> *compared
20:58:17 <oerjan> s/of course/i read somewhere that/
20:58:32 <alise> swtch.com
20:58:34 <alise> i bet
20:58:45 <alise> comex: are you twomic?
20:58:47 <oerjan> (it's "of course" in afterthought, of course)
20:58:53 <comex> no
20:58:58 <comex> following him, tho
20:59:43 <oerjan> i don't know that i have ever visited swtch.com before. it may have been just the perl manual.
20:59:59 <alise> comex: who are they?
21:00:06 <alise> I bet charles walker
21:00:09 <alise> as they followed me at the same time
21:00:13 <comex> no clue
21:00:22 <alise> they followed my tusho account though which isn't even my latest abandoned account
21:00:53 <alise> http://twitter.com/zuffix is the latest abandoned one :P
21:00:59 <alise> and the nomic logo is MY picture dammit
21:01:13 <alise> some glorious spam at the end there
21:01:26 <alise> "apparently owning things being undefined is no cause for a b nomic crisis" xD
21:02:51 <oerjan> alise: ok that "Regular Expression Matching Can Be Simple And Fast" rings a bell, but i'm not sure if it was there
21:15:24 <alise> adbc
21:20:33 -!- kar8nga has quit (Remote host closed the connection).
21:26:36 <alise> hmm
21:26:41 <alise> does anyone know how to connect two generates in python?
21:26:56 <alise> like in unix pipes, having two programs A and B and connecting each others std(out|in) to the other's std(in|out)
21:27:01 <alise> *generators
21:27:06 <alise> so basically two "mutually recursive" generators
21:27:08 <alise> (taking a generator as an argument)
21:29:14 <alise> (thinking about iterated prisoner's dilemma)
21:29:15 <alise> heh I wrote
21:29:17 <alise> def titfortat(opp):
21:29:17 <alise> print 'C'
21:29:17 <alise> for act in opp: yield act
21:29:20 <alise> but then realised that this is the same as
21:29:25 <alise> err *yield C
21:29:30 <alise> def titfortat(opp):
21:29:30 <alise> print 'C'
21:29:30 <alise> return opp
21:29:35 <alise> *yield
21:29:35 <alise> dammit
21:31:13 <AnMaster> <div align=right><b><blink><font color="#FF0000"><font size=+2>NEW</font></font></blink></b><a href="#version13">Read
21:31:13 <AnMaster> about the v1.3 20010120 release</a>&nbsp; <b><blink><font color="#FF0000"><font size=+2>NEW</font></font></blink></b></div>
21:31:21 <AnMaster> this should disqualify you from using the web
21:31:30 <alise> no it shouldn't they used the modern <div> tag
21:31:33 <alise> which is the funniest part
21:31:45 <AnMaster> alise, but <blink>!
21:31:57 <alise> yes, the two together are hilarious
21:32:18 <AnMaster> alise, also, they forgot quotes around "right", <div> without quotes for attribute values looks damn weird
21:33:30 <alise> AnMaster: actually in html5 it's considered fine to omit the quotes
21:33:46 <alise> indeed take a look at the source of http://diveintomark.org/, and he's one of the top html5 evangelists (writing a book about it)
21:34:15 <alise> also source of http://hg.diveintohtml5.org/hgweb.cgi/raw-file/dd8050265123/index.html (table of contents of the book)
21:34:45 <AnMaster> alise, sure maybe
21:34:53 <AnMaster> but it still looks very strange with div
21:35:00 <alise> yeah
21:35:03 <alise> in fact div is rarely used in html5
21:35:09 <alise> since there's article, section, header, and so on
21:35:23 <AnMaster> alise, also, what about "Times New Roman" for a <font> tag, would that need quotes?
21:35:44 <alise> yes, but <font> is deprecated :P
21:35:44 <AnMaster> iirc there was some quirk long ago that made that one not need quotes
21:35:48 <AnMaster> :P
21:35:49 <alise> well
21:35:57 <alise> html5 also specifies a parsing algorithm that works with tag soup as well
21:36:01 <AnMaster> surely HTML5 should embrace that
21:36:03 <alise> gecko is switching over to it
21:36:12 <alise> so in actuality "every string" is valid html5
21:36:15 <AnMaster> alise, yep, but I think tag soup is bad
21:36:23 <alise> it's just the forceful hand of extreme deprecation
21:36:27 <alise> that actually defines de-facto "valid" html5
21:36:34 <alise> (and validators go by this)
21:36:39 <alise> AnMaster: yeah but browsers have to support it
21:36:48 <AnMaster> alise, so validators are pretty much useless
21:36:50 <alise> html 5 is really two things, an update of HTML, and also a standardisation of how-to-handle-the-web
21:36:56 <alise> AnMaster: no, they go by the much stronger form
21:37:05 <alise> i.e. not the parser algorithm
21:37:12 <AnMaster> alise, go implement a html5 parser... lets see if you love html5 as much once you done that ;P
21:37:21 <alise> actually, it's pretty easy
21:37:27 <alise> which is why html5lib is available for python, ruby and php
21:37:35 <alise> this is because the algorithm is specified in great detail
21:37:38 <alise> in the spec
21:37:40 <alise> basically pseudocode
21:37:43 <AnMaster> alise, so you could do it with a LR(1)?
21:38:02 <alise> I don't know
21:38:06 <alise> I don't think you can, no
21:38:08 <alise> tag soup is not that simple
21:38:12 <AnMaster> exactly
21:38:29 <alise> and?
21:38:38 <AnMaster> you don't see this as a problem?
21:38:55 <alise> you want to write a browser which handles the real-world web with LR(1)?
21:38:57 <AnMaster> I admire python for one thing, and that is that the language is LL(1) to parse. fucking LL(1)!
21:38:58 <alise> have you LOOKED at page source lately?
21:39:09 <alise> of course you're not MEANT to use the shit in the parser algorithm
21:39:10 <AnMaster> alise, yes the real world is the issue here
21:39:17 <alise> the parser algorithm is there to make sure WE NEVER HAVE BROWSER INTEROPERABILITY PROBLEMS AGAIN
21:39:20 <alise> not to specify best practice
21:39:49 <AnMaster> alise, if all browsers followed the spec strictly then there wouldn't be any interoperability problems. Fat chance though...
21:40:30 <alise> Fun fact, all the major browsers apart from IE are switching to the HTML5 parser algorithm or something very similar.
21:40:33 <alise> I don't know what IE are doing.
21:41:17 <alise> def titfortwotats(opp):
21:41:17 <alise> forgive = 0
21:41:17 <alise> for act in opp:
21:41:17 <alise> if act == C:
21:41:17 <alise> forgive = 0
21:41:18 <alise> yield C
21:41:19 <alise> else:
21:41:21 <alise> forgive += 1
21:41:23 <alise> if forgive == 2: yield D
21:42:13 <AnMaster> what
21:43:20 <alise> What, "what"?
21:46:48 <maustin> what?
21:48:20 <alise> what
21:49:34 <alise> def titfortwotats(opp):
21:49:35 <alise> forgive = 0
21:49:35 <alise> for act in opp:
21:49:35 <alise> if act == C:
21:49:35 <alise> forgive = 0
21:49:35 <alise> yield C
21:49:37 <alise> else:
21:49:39 <alise> forgive += 1
21:49:41 <alise> if forgive == 2: yield D; forgive = 0
21:49:43 <alise> else: yield C
21:49:45 <alise> fixed tit for two tats
21:50:42 -!- jabb has joined.
21:53:56 <AnMaster> anyone know how to set env vars for wine apps?
21:55:28 -!- hiato has quit (Quit: /quit /quit /quit).
22:01:35 -!- Oranjer has joined.
22:04:55 <alise> rgijdfg
22:04:57 <alise> this is irritating
22:07:29 <jabb> what is?
22:09:57 <alise> I forgot
22:10:33 <alise> But if anyone wants to help me, tell me how to create two mutually linked generators given generator-functions gen1 and gen2 such that a == gen1(b) and b == gen2(a).
22:10:37 <alise> I'm not sure it's possible.
22:10:43 <alise> But it's what you want for Prisoner's dilemma.
22:10:48 <alise> Oh! You can do it if you have them be classes.
22:10:52 <alise> That makes things Ugly though.
22:14:48 <CakeProphet> alise: generators as in Python generators?
22:15:01 <alise> yeah
22:15:17 <CakeProphet> so a and b are generators correct?
22:15:37 <AnMaster> alise, rendering lego with povray is fun
22:15:45 <alise> CakeProphet: yes
22:15:50 <alise> I worked it out, it's just a bit ugly
22:16:11 <CakeProphet> alise: ah, then yeah.. you would need to introduce one of the generators at a later point in time. Perhaps with a send()
22:16:19 <CakeProphet> ah, yeah. it probably would be.
22:16:35 <CakeProphet> would be interesting if you could design a language that could produce constructions like that... possibly with lazy evaluation.
22:16:44 <AnMaster> anyone seen phantom_hoover?
22:17:10 <alise> CakeProphet: haskell can
22:17:13 <alise> and the functions could return lists
22:17:16 <alise> infinite lists, even
22:17:23 <CakeProphet> right.
22:17:36 <CakeProphet> Haskell has the benefit of no state I suppose.
22:17:39 <CakeProphet> makes things like that easier.
22:17:45 <alise> what are the usual scores for prisoner's dilemma? 0/1/3/5?
22:19:50 <alise> aww, you can't return another generator in a generator
22:21:04 <alise> haha my thing is totally broken :(
22:21:10 <alise> thought
22:21:12 <alise> def titfortat(opp):
22:21:12 <alise> yield C
22:21:12 <alise> for act in opp: yield act
22:21:14 <alise> was oh so clever
22:21:25 <alise> but it appears to just yield an infinite lewp
22:21:26 <alise> somehow
22:22:24 <alise> >>> run_match(titfortat, always_defect, 100)
22:22:24 <alise> (99, 104)
22:22:25 <alise> oh snap
22:22:34 -!- augur has quit (Remote host closed the connection).
22:23:09 <alise> hmm
22:23:21 <alise> I propose the "true score" of an iterated prisoner's dilemma game is
22:23:33 <alise> lim(iters -> inf) match(A, B, iters)/iters
22:25:27 <oerjan> !haskell data Strategy a = ST a (a -> Strategy a); tt x = ST x tt; match (ST x f) (ST y g) = (x,y) : match (f y) (g x); main = print . take 10 $ match (tt True) (tt True)
22:25:38 <EgoBot> [(True,True),(True,True),(True,True),(True,True),(True,True),(True,True),(True,True),(True,True),(True,True),(True,True)]
22:26:32 * alise writes haskell prisoner's dilemma instead
22:26:33 * oerjan whistles innocently
22:27:53 <oerjan> hm...
22:29:12 <oerjan> !haskell data Strategy b a = ST a (b -> Strategy a); tt x = ST x tt; match :: Strategy b a -> Strategy a b -> [(a,b)]; match (ST x f) (ST y g) = (x,y) : match (f y) (g x); main = print . take 10 $ match (tt True) (tt True)
22:29:21 <oerjan> er
22:29:22 <AnMaster> oerjan, here is a nice little[*] image I took: http://omploader.org/vNGlwYw
22:29:28 <AnMaster> [*] 53 MP
22:29:28 <oerjan> !haskell data Strategy b a = ST a (b -> Strategy b a); tt x = ST x tt; match :: Strategy b a -> Strategy a b -> [(a,b)]; match (ST x f) (ST y g) = (x,y) : match (f y) (g x); main = print . take 10 $ match (tt True) (tt True)
22:29:31 <EgoBot> [(True,True),(True,True),(True,True),(True,True),(True,True),(True,True),(True,True),(True,True),(True,True),(True,True)]
22:29:37 <alise> oh for goodness sake, I'm writing something far simple than that
22:29:40 <alise> you're overcomplicating things
22:29:51 * AnMaster prods fizzie about that
22:30:10 <oerjan> i just wanted to see if i could get the strategies to have different output types
22:30:55 <alise> ah
22:32:58 <oerjan> and also i know [a] -> [a] suffices but this way your types ensures that the strategies don't use information before it is given
22:33:00 -!- augur has joined.
22:33:03 <oerjan> *ensure
22:33:39 <alise> titForTat :: Prisoner
22:33:39 <alise> titForTat opp = C : opp
22:33:39 <alise> or
22:33:42 <alise> titForTat = (C :)
22:33:50 <oerjan> yeah
22:34:02 <oerjan> that's essentially what i started writing first
22:34:32 <alise> hmm the score function will be ugly
22:34:51 <oerjan> how so
22:34:56 <alise> hmm maybe not
22:35:33 <alise> actions :: Prisoner -> Prisoner -> [(Action,Action)]
22:35:33 <alise> actions f g = zip a b where a = f b; b = g a
22:35:37 <alise> kinda ugly that one but oh well
22:36:00 <alise> *Main> take 10 $ actions titForTat alwaysD
22:36:00 <alise> [(C,D),(D,D),(D,D),(D,D),(D,D),(D,D),(D,D),(D,D),(D,D),(D,D)]
22:36:17 <alise> then it's just mapping the 4 tuple possibilities to an integer, and summing away
22:36:28 <oerjan> yeah
22:36:31 <alise> well, two integers
22:36:55 -!- maustin has quit (Quit: Leaving).
22:37:45 <alise> hmm what's the function (a -> b) -> (a,a) -> (b,b)
22:38:02 <oerjan> join (***)
22:38:19 <oerjan> or wait
22:38:29 <oerjan> hm yes
22:38:38 <alise> fugly
22:38:56 <alise> er it's actually ... what is it hm
22:39:27 <alise> I actually want [(a,b),(c,d),(e,f)] -> (a+c+e, b+d+f)
22:39:35 <oerjan> oh
22:40:37 <oerjan> (sum *** sum) . unzip
22:40:45 <alise> I don't suppose that comes in a less spicy version
22:40:47 <alise> (curried :P)
22:40:55 <alise> result :: Integer -> Prisoner -> Prisoner -> (Integer, Integer)
22:40:55 <alise> result n f g = (sum *** sum) . unzip . take n . map score $ actions f g
22:40:57 <alise> totally haskell
22:41:14 <alise> should be *Int
22:41:32 <alise> *Main> result 10 titForTat alwaysD
22:41:32 <alise> (9,14)
22:41:52 <alise> my payoffs are:
22:41:56 <alise> score (C,C) = (3,3)
22:41:56 <alise> score (C,D) = (0,5)
22:41:56 <alise> score (D,C) = (5,0)
22:41:56 <alise> score (D,D) = (1,1)
22:42:01 <alise> taken from wikipedia
22:46:19 <pineapple> game theory?
22:50:55 <cheater99> hey alise
22:50:55 <cheater99> http://www.azulsystems.com/events/javaone_2009/session/2009_J1_HardwareCrashCourse.pdf
22:50:59 <cheater99> check this out
22:52:14 -!- tombom_ has quit (Quit: Leaving).
23:30:13 <FireFly> AnMaster, nice little picture
23:30:14 <CakeProphet> is there any known way to optimize all or some recursive algorithms to imperitive equivalents?
23:30:56 <oerjan> itym "iterative"
23:31:17 <CakeProphet> seems possible if you analyze the relationship between branch points in the code, function parameters, and changes made to parameters before subsequent recursive calls.
23:31:37 <AnMaster> <FireFly> AnMaster, nice little picture <-- heh ;P
23:31:46 <AnMaster> FireFly, so did it crash firefox? it did for someone else
23:31:54 <oerjan> CakeProphet: well tail recursion can be turned into iteration
23:32:00 <FireFly> Opera, and nope, works all right
23:32:11 <AnMaster> FireFly, mhm
23:32:20 <FireFly> I like the picture though
23:32:27 <AnMaster> FireFly, I want to upload a gigapixel image, just to watch the effects when I paste the link
23:32:33 <AnMaster> should do it all white so it compresses well
23:32:37 <AnMaster> or some such
23:32:49 <AnMaster> FireFly, that was the panorama?
23:32:54 <AnMaster> FireFly, or some other pic I posted?
23:32:59 <FireFly> Yep
23:33:09 <FireFly> The 16744x3173 px one
23:33:24 <AnMaster> FireFly, the base of the thing I took it with http://omploader.org/vNGl0eg (if I had pieces in the right colours it would have been http://omploader.org/vNGl1ag)
23:34:08 <FireFly> Hrm
23:34:14 <FireFly> Wait
23:34:24 <AnMaster> FireFly, posted some pics of it before yesterday or such
23:34:33 <FireFly> Ah
23:34:52 <AnMaster> let me find them
23:34:56 <AnMaster> http://omploader.org/vNGlobg
23:35:00 <AnMaster> http://omploader.org/vNGlobg
23:35:07 <AnMaster> http://omploader.org/vNGlocw
23:35:12 <AnMaster> FireFly, (progressive jpeg)
23:35:34 * FireFly should really get an RCX
23:35:49 <AnMaster> FireFly, well I had two, but one is dead after years of storage
23:35:52 <AnMaster> sad
23:35:59 <AnMaster> I should get another one as a replacement
23:36:04 <AnMaster> FireFly, you could get an NXT
23:36:10 <FireFly> Ah, yeah
23:36:13 <FireFly> Probably would
23:36:17 <AnMaster> FireFly, and have fun with 32 bits and FPU and all such
23:36:32 <AnMaster> FireFly, instead of doing it like real people: 16 bit, no MMU or FPU
23:36:37 <AnMaster> ;P
23:36:41 <FireFly> Heh
23:36:56 <AnMaster> FireFly, using a cooperative multitasking OS (alternative firmware)
23:37:01 -!- zzo38 has joined.
23:37:30 <AnMaster> FireFly, the controller program: http://sprunge.us/DTGf
23:37:55 <AnMaster> FireFly, license currently unknown. There might be an GPL/MPL conflict since the firmware is under MPL
23:38:01 <AnMaster> I don't know
23:38:17 <FireFly> Looks nice anyway
23:38:32 <AnMaster> FireFly, need to fix bugs with light sensor
23:39:01 <AnMaster> zzo38, don't you use a custom browser iirc?
23:40:13 <zzo38> AnMaster: Yes
23:40:34 -!- p_q has quit (Read error: Connection reset by peer).
23:41:13 <AnMaster> zzo38, does it handle loading http://omploader.org/vNGlwYw ?
23:42:06 <zzo38> Just wait, it is slow
23:42:34 <AnMaster> sure
23:42:41 <AnMaster> zzo38, progressive jpeg
23:42:45 <zzo38> It is a Mozilla based browser, however.
23:42:49 <AnMaster> so it might take a while for it to fully load
23:43:00 <AnMaster> zzo38, the image is 53 megapixel
23:43:12 <AnMaster> a panorama I took as a test
23:45:55 <zzo38> It did load, but it is slow even after it is loaded
23:47:00 <AnMaster> zzo38, ah I see
23:47:24 <zzo38> And it wastes a lot of memory
23:48:19 <zzo38> How slow is it on your computer?
23:48:58 <AnMaster> zzo38, in what? pretty fast in gimp
23:49:13 -!- poiuy_qwert has joined.
23:49:13 <AnMaster> zzo38, haven't tried in browser except on laptop where it is pretty fast
23:49:25 <AnMaster> but that is core 2 duo with 4 GB RAM
23:49:51 <zzo38> So, your computer is faster and more RAM, that is why your computer is more faster.
23:50:25 <zzo38> I haven't tried it yet except the web browser, I don't know if anything else will be faster. I have ImageMagick, but ImageMagick is slow with anything
23:54:21 -!- olsner has quit (Ping timeout: 276 seconds).
23:57:14 <AnMaster> zzo38, imagemagick doesn't do GUI?
23:57:23 <AnMaster> afaik it is completely a console program?
23:59:37 <zzo38> ImageMagick will display a picture, using the "display" command (all operations to modify and deal with pictures are by command-line)
←2010-06-05 2010-06-06 2010-06-07→ ↑2010 ↑all