00:00:51 <Gergor> pikhq_, remind me why the US doesn't consider guillotining a permissible method of execution.
00:02:02 <zzo38> Is it Phantom Hoover?
00:02:18 <Gergor> I am Phantom Hoover, yes.
00:04:14 -!- Klisz has quit (Quit: You are now graced with my absence.).
00:04:36 <elliott> Gergor: E-petition: Instate iron maiden as preferred form of capital punishment to defend US' sovereignity from EU interventions
00:04:51 <elliott> Gergor: E-petition: Instate Iron Maiden as preferred form of capital punishment to defend US' sovereignity from EU interventions
00:05:01 <itidus21> they could just use a machine gun
00:05:19 <zzo38> No. I think the individual who is getting executed should decide what method they want to be killed by.
00:05:21 <Gergor> Both count as torture devices, not methods of execution.
00:05:36 <elliott> Gergor: Um I definitely double-checked on Wikipedia and iron maidens can kill people.
00:05:50 <elliott> Also no they just keep turning up the volume until your ears burst or whatever and you die of blood loss
00:05:58 <pikhq_> Gergor: Per recent law, it is permissible for the President to order anyone tortured for any purpose to any extent.
00:06:03 <Gergor> zzo38, public execution by high-yield thermonuclear device.
00:06:28 <elliott> Inmates enter a soundproofed chamber progress through the foot-tapping stage to the headbangnig stage to the screaming stage to the writhing on the ground stage to the convulsive shaking stage to the dead stage.
00:06:35 <itidus21> what about, don't execute them at all
00:06:36 <pikhq_> (remind me again why it's the "land of the free"?)
00:06:47 <zzo38> Gergor: Of course where would have to be restrictions.
00:06:47 <elliott> itidus21: at last yous ay something reasonable.
00:07:00 <Gergor> pikhq_, don't let's turn this into an NDAAfest.
00:07:24 <zzo38> And, also, of course, please be careful before deciding to execute anyone at all. If you do, you cannot release them afterward, unlike the other prison which can be released if it is known to be innocent.
00:07:52 <itidus21> zzo38: while this is the case, guilt is just a matter for a jury of hicks to decide
00:08:09 <itidus21> many of whom can be paid off or intimidated if necessary
00:08:28 <pikhq_> And are intentionally selected for gullibility anyways.
00:08:46 <itidus21> because apparently thats the best we can come up with so far :D
00:08:49 <elliott> zzo38: Except... NECROMANCY?
00:09:13 <pikhq_> elliott: North Korea doesn't export their techniques.
00:09:21 <pikhq_> They prefer being the world's only necrocracy.
00:09:38 <elliott> Kim Jong-Il is actually just Kim Sung-Il in a robotic body.
00:09:56 <pikhq_> Kim Il-Sung is in all honesty the President of North Korea.
00:10:10 <itidus21> and he can control the weather
00:11:16 <ais523> itidus21: well, the Chinese government can control the weather
00:11:17 -!- incomprehensibly has joined.
00:11:27 <ais523> it's massively expensive, but they do it on occasion, such as making rain avoid the Olympics
00:12:52 <HackEgo> incomprehensibly: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: http://esolangs.org/wiki/Main_Page
00:13:03 -!- incomprehensibly has changed nick to micahjohnston.
00:13:03 <Gergor> ais523, cloud seeding?
00:13:06 <elliott> that was comprehensible, HackEgo
00:13:13 <HackEgo> elliott: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: http://esolangs.org/wiki/Main_Page
00:13:17 <ais523> Gergor: there are two known methods for doing that, but I think cloud seeding is what was actually used at the Olympics
00:13:18 <elliott> Gergor: No, that's using an EC2 host to upload Ubuntu.
00:13:57 <Gergor> Dammit, now I'm reading my nick as 'Gregor'.
00:13:58 <Gergor> I HAVE OUTFOXED MYSELF
00:13:58 <ais523> also, the massive screens going all the way around the top of the stadium bluescreened at one point
00:14:12 <ais523> Gergor: does your surname start with G?
00:15:04 <ais523> now I'm trying to understand where the first g in your usual nick comes from
00:16:28 -!- FireFly has quit (Changing host).
00:16:28 -!- FireFly has joined.
00:17:47 <ais523> oh, you're Phantom Hoover in disguise, not Gregor in disguise
00:18:25 <zzo38> ais523: It is obvious isn't it? Have you not see?
00:19:04 <elliott> Gergor: You should be Phangtom_Hoover in future now.
00:19:57 <zzo38> If it says ":Gergor!~phantomho@unaffiliated/phantom-hoover/x-3377486" then it is known
00:20:01 <Gergor> No, that's just stupid.
00:21:30 -!- MDude has quit (Ping timeout: 268 seconds).
00:23:55 <elliott> I pick Gergor to tell me to go to bed.
00:32:25 <zzo38> What is the next thing to do in D&D game? Compare handwriting? I think so.
00:34:25 <Gergor> Oh dear god, I started reading up on the Somalian Civil war and I can't stop.
00:38:33 -!- micahjohnston has quit (Quit: Leaving.).
00:42:52 -!- Gergor has quit (Ping timeout: 240 seconds).
00:45:54 <ais523> elliott: I'm not convinced that that works
00:46:06 <ais523> why don't you tell yourself to go to bed?
00:46:25 <ais523> I went to bed about two hours later than I should have done yesterday; it was a mistake
00:46:52 -!- elliott has quit (Ping timeout: 240 seconds).
00:48:07 <ais523> umm, Gergor quitting, that is
00:56:37 -!- NihilistDandy has quit (Quit: http://haskell.org).
00:56:51 <zzo38> What would you have done next in D&D game?
00:59:02 <zzo38> The type for ReaderT seem to be similar to the type for Kleisli category, but in a different order.
01:05:41 -!- tuubow has quit (Ping timeout: 252 seconds).
01:07:11 -!- Klisz has joined.
01:09:45 -!- ais523 has quit (Remote host closed the connection).
01:18:44 -!- kmc has quit (Read error: No route to host).
01:32:11 -!- kmc has joined.
01:35:15 -!- PiRSquared17 has joined.
01:35:49 <zzo38> PiRSquared17: Oops, maybe one extra letter is added by mistake
01:38:16 -!- nooga has joined.
01:41:10 -!- tuubow has joined.
01:41:35 <Gregor> There can only be one @codu.org
01:50:17 <zzo38> I think I have figured out derivative for lists. I read somewhere about derivative types making a hole, and I can see how the type I figured out can make a hole like that too
01:52:28 <zzo38> If a type is a monad, what circumstances is the derivative of that type can make a monad?
01:52:37 -!- Sgeo_ has changed nick to Sgeo.
02:01:20 -!- Klisz has quit (Read error: Connection reset by peer).
02:01:42 -!- Klisz has joined.
02:09:19 -!- kmc has quit (Quit: Leaving).
02:09:52 -!- nooga has quit (Ping timeout: 240 seconds).
02:16:59 -!- MSleep has joined.
02:23:09 -!- Vorpal has quit (Ping timeout: 248 seconds).
02:37:35 -!- kallisti has quit (Quit: Reconnecting).
02:37:45 -!- kallisti has joined.
02:37:45 -!- kallisti has quit (Changing host).
02:37:45 -!- kallisti has joined.
02:39:51 <Gregor> OH sit-coms, where a psychiatrist can be second-in-command of NASA. (Can you name that sit-com?)
02:43:02 -!- oerjan has joined.
02:44:07 -!- augur has joined.
02:44:28 <zzo38> I don't know either
02:49:00 <kallisti> http://www.youtube.com/watch?v=Fv53K9MnDuM&feature=related
02:49:39 <kallisti> WITTS (World Improvement Through The Spirit Ministries) is a not-for-profit organization of World-Class Engineers/Scientists/Servants of God and Humanity, actively offering solutions to the energy crisis and the other critical issues of our troubled planet.
02:50:37 <kallisti> Automobiles which run totally on water and air, the only exhaust is oxygen, water, and air.
02:51:07 <kallisti> the formula looks something like: water + air -> miracles + water + air + oxygen
02:51:49 <kallisti> Anti-gravity machines that can travel as easiily through outer space as through air. These can also be built to travel through water (oceans), and even through solid earth.
02:51:52 <kallisti> This former mechanism can be built as a device that is pedal operated (like a bicycle) and is able to fly through the air with no motor, wings, or propellers.
02:52:18 <kallisti> finally I can pilot an anti gravity bicycle to the center of the hollow earth.
02:54:04 <oerjan> the only problem is you have to have enough faith. otherwise: *WHOOPS* *CRASH* *!#%/%&
02:54:12 -!- Nisstyre has quit (Ping timeout: 240 seconds).
02:54:38 <kallisti> For any confused individuals out there, We encourage to do just a little research, and you will discover THOSE LAWS ONLY APPLY TO CLOSED SYSTEMS.
02:54:41 <kallisti> And, if you research it further, you will find that closed systems are extremely rare!
02:54:52 <kallisti> ....closed systems such as.... the universe.
02:55:25 <kallisti> "So rare in fact, that many Physicists will tell you that closed systems are virtually non existent. Mostly, they are theoretical constructs."
02:56:12 <Slereah> But kallisti, a singularity is removed from the universe!
02:58:20 <kallisti> lol they offer to teach you their batshit "quantum energy" technology via skype, but only if you donate.
02:58:39 <kallisti> also the AMAZING QUANTUM HEALING LIGHT
02:59:02 -!- kmc has joined.
02:59:08 <monqy> i wonder if vortex based mathematics has gotten that far
03:01:22 <kallisti> which I'm pretty sure is just a circle of LEDs
03:02:03 <kallisti> "ENHANCED WIND POWER SYSTEMS For those with special need to also utilize wind power."
03:02:25 <kallisti> why do they sell ENHANCED WIND POWER SYSTEMS when they literally have limitless supplies of quantum energy.
03:02:27 <itidus21> i understand that new breed of flat screens has LEDs
03:07:48 <oerjan> kallisti: because WIND has special healing spiritual powers, duh
03:08:09 <kallisti> "Conspiracy advocates therefore claim that the scientific community has controlled and suppressed research into alternative avenues of energy production via the institutions of peer review."
03:08:30 <kallisti> peer review: oppressing the masses
03:10:37 <HackEgo> ania irt aftal inatia med gellippicisttaings tinovers belinglmakh pecareze horimarmy mynacidithetutedium mnt nfleune razatouressixardeb prea callati finionkuropolon thussay epteegiolia moc pmas krefies uninfle res il noi pclotermles rionnnsbecomphelcaequin ber urriophocked permes jan brasdier sgri ectsultlyin corgotieus housphserreis to oxylphrier scheme um cyap en ismincione ly ie nundiver lano casserg snather
03:10:53 <Gregor> This channel is gettin' really horimarmy.
03:10:58 -!- oerjan has set topic: rionnnsbecomphelcaequin | http://codu.org/logs/_esoteric/.
03:11:37 -!- Gregor has set topic: rionnnsbecomphelcaequin | Particularly horimarmy rionnnsbecomphelcaequin, in fact | http://codu.org/logs/_esoteric/.
03:13:40 <kallisti> oh, huh. I was expecting http://en.wikipedia.org/wiki/History_of_perpetual_motion_machines to be a blank page.
03:15:25 <oerjan> perpetual money machines
03:17:50 <kallisti> oerjan: well, those probably exist.
03:17:56 <kallisti> if you have enough initial investment.
03:18:29 <kallisti> until, of course, you make all the money in the world.
03:18:48 <monqy> the solution then is to make more money
03:18:56 <oerjan> i recall scrooge mcduck did that once.
03:20:35 <oerjan> i vaguely recall this had sufficiently bad consequences that it had to be undone.
03:23:44 <oerjan> <itidus21> The main body of the topic "akljsdklgdjhndrthiojeriogj" contains 26 characters, from an alphabet of 14 characters "akljsdkhnrtioe". The number of instances of each character in the alphabet is "12241322121121".
03:23:54 <oerjan> you counted k twice hth
03:25:00 <oerjan> 22:33:53: <elliott> there are at least /two/ Hexham Wikipedians?
03:25:00 <oerjan> 22:34:08: <elliott> where do they all /fit/?
03:25:10 <oerjan> have you checked your downstairs closet?
03:25:43 <kallisti> monqy: once you own all the money, making more money just inflates its value. you've literally won the economy.
03:25:57 <kallisti> the only way to gain more wealth would be to acquire more natural resources.
03:26:23 <oerjan> kallisti: and for _that_, use your WITTS
03:26:39 <kallisti> well, you may want to hire some people to help you...
03:26:56 <monqy> how do you get it back
03:27:00 <kallisti> maybe some bodyguards to prevent everyone from robbing you.
03:27:15 <oerjan> monqy: money needs to be in circulation, duh
03:27:54 <monqy> ice cream store on a truck
03:28:18 <kallisti> I don't understand the motivation for world powers to suppress information about free energy.
03:28:21 <oerjan> in fact could one not say that money only has real value in the moment it is transferred.
03:28:34 <kallisti> if free energy is discovered that literally implies that humanity can become infinitely prosperous.
03:28:45 <oerjan> since that corresponds to an exchange of service
03:28:48 <kallisti> the meager amount of wealth they have currently on the earth means nothing compared to the future wealth they could have.
03:30:21 <oerjan> kallisti: change of power balance, duh
03:30:45 <oerjan> also, you can probably make some cheap horrible weapons with it.
03:31:28 <kallisti> well academia certainly has nothing to gain as they would likely be in power in that scenario
03:31:40 <oerjan> although that would be a reason for them to develop it for themselves, secretly.
03:32:59 <kallisti> in a free energy scenario people with knowlege to apply free energy would be the powerful ones.
03:33:17 <oerjan> kallisti: FINALLY, MAD SCIENTISTS
03:35:02 * kallisti thinks we should mine asteroids.
03:35:46 <kallisti> some asteroids have more raw resources on them than basically everything on the earth.
03:36:24 <kallisti> sure it would be incredibly expensive, but THINK OF THE REWARDS
03:43:25 -!- calamari has joined.
03:48:31 <kallisti> @tell elliott I wonder how legit this is: http://news.softpedia.com/news/Introducing-Ubuntu-11-10-Without-Unity-228425.shtml
03:52:08 <kallisti> also, anyone know anything about Linux Mint?
03:52:47 -!- TeruFSX has quit (Read error: Connection reset by peer).
03:53:39 <zzo38> Is this the proper way to derivative of list type? newtype List' x = List' (Either (x, List' x) [x]);
03:56:07 -!- TeruFSX has joined.
03:57:30 <calamari> kallisti: I've been running Lubuntu 11.10 and like it alright
03:58:30 * Sgeo is using Lubuntu 11.10
03:59:44 <calamari> I think unity is pushing people to these alternate desktops
04:01:02 <oerjan> strange, i thought derivatives were zippers, but that looks like a lousy zipper for lists.
04:01:51 <oerjan> as it doesn't invert the path down to the cursor
04:03:35 <Sgeo> My crappy computer pushed me to Lubuntu
04:03:55 <zzo38> oerjan: I read somewhere else that it had something to do with type with hole. It does look like type with hole, to me, though.
04:05:12 <kallisti> calamari: Lubuntu is not Linux Mint, I thought.
04:06:03 <kallisti> @tell elliott A FP vs. imperative question. Have fun http://stackoverflow.com/questions/8611211/differences-in-separation-of-static-and-stateful-code-in-different-languages
04:07:15 <calamari> kallisti: you're right it's not.. just offering an alternative
04:15:44 <Sgeo> What about .. XFCE?
04:16:00 <kallisti> I'd prefer Gnome 3 with classic interface. Linux Mint looks promising because it does exactly that
04:16:06 <kallisti> with some modifications available.
04:16:22 <kallisti> otherwise I'm probably going to try Debian or something
04:16:43 <calamari> I was going to go with Debian, then I realized I lost a lot of ppa's
04:18:18 <kallisti> Sgeo: GETTING SLOPPY WTIH TEH APDELBROTS
04:19:37 <oerjan> zzo38: btw i think i have an argument that the backwards list applicative cannot possibly be a monad.
04:20:11 <monqy> backwards list applicative?
04:21:19 <oerjan> consider x = [1,2,3]; y = [4,5,6]; z = [7,8,9,10,11,12]. then bjoin . fmap bjoin $ [[x,y],[z]] involves only rectangular lists so can be directly calculated
04:22:30 <oerjan> w = fmap bjoin [[x,y],[z]] = [[1,4,2,5,3,6],[7,8,9,10,11,12]] and then bjoin w = [1,7,4,8,2,9,5,10,3,11,6,12]
04:25:42 <zzo38> Yes, it is what I thought.
04:26:08 <oerjan> monqy: if f is an applicative, then newtype BW f x = BW (f x); instance Applicative f => Applicative (BW f) where { pure = BW . pure; BW g <*> BW x = BW (flip id <$> x <*> g) } instance Functor f => Functor (BW f) where { fmap g (BW x) = BW (fmap g x) }
04:27:02 <oerjan> now, bjoin [[x,y],[z]] must be a list whose elements are among x,y,z, by parametricity.
04:29:49 <oerjan> hm i'm missing a detail here
04:30:57 -!- augur has quit (Remote host closed the connection).
04:31:29 <pikhq_> What. The Secretary of Homeland Security is exempt from all laws.
04:32:58 <oerjan> a lemma though: if ll is a list of finite lists with no empty list elements, then all elements of concat ll must appear in bjoin ll.
04:34:27 <pikhq_> In a "brilliant" move, in the act providing funding for the border fence, the Secretary of Homeland Security was made exempt from *any laws* that the Secretary, in the Secretary's sole discretion, determines necessary to ensure quick construction of the border fence.
04:36:48 <oerjan> because if m = foldl1' gcm (map length ll), and f l = map (replicate (m `div` length l)) l; then map f ll duplicates each element of ll to make it rectangular; so join . map bjoin $ map f ll is calculated rectangularly and so contains exactly one of every element from concat $ map f ll. but this is a superset of concat ll.
04:37:08 -!- Nisstyre has joined.
04:38:09 <oerjan> *to make it rectangular and with all rectangles the same "area", thus the same length of their bjoin's.
04:38:46 <oerjan> this proves that all elements of concat ll appear in bjoin ll.
04:38:49 <itidus21> <oerjan> you counted k twice hth -- you're right.. i screwed up the k somehow
04:40:03 <oerjan> *from concat . concat $ map f ll
04:41:00 <oerjan> s/join/bjoin/ up there too
04:43:32 <oerjan> this means that v = bjoin [[x,y],[z]] cannot contain more than one of x,y,z each, since otherwise bjoin v would contain more than one of some subelement.
04:43:53 -!- oerjan has quit (Quit: leaving).
04:48:52 -!- Sgeo has quit (Ping timeout: 240 seconds).
04:52:15 -!- oerjan has joined.
04:52:47 <kallisti> I just realized I should be using POSIX::floor instead of int
04:54:03 -!- Sgeo has joined.
04:54:08 -!- DCliche has joined.
04:55:55 <oerjan> zzo38: i think that argument at least shows that when ll is a finite list of nonempty finite lists, bjoin ll must contain exactly one of each element of concat ll. the part i've forgotten is why this gives a contradiction.
04:57:16 -!- Klisz has quit (Ping timeout: 240 seconds).
04:59:09 <kallisti> it would be nice if no and use had block styles.
04:59:22 <kallisti> instead of { no warnings; ... }
05:05:25 <kallisti> oerjan: is help text generally considered a success in Unix land?
05:06:09 <oerjan> i may never have heard of it, does that count? :P
05:06:39 <oerjan> I HAVE NO IDEA WHAT YOU ARE ASKING
05:06:40 <kallisti> you mean you don't know what I'm talking about or you've never seen a -h option return failure?
05:06:42 <pikhq_> kallisti: Yes, puts("SPEW TEXT OF HELPFULNESS");exit(EXIT_SUCCESS); is permitted.
05:07:11 <kallisti> I like to expect sanity from things.
05:07:15 <oerjan> oh that kind of success
05:07:35 <oerjan> TRY TO BE MORE AMBIGUOUS NEXT TIME
05:07:36 <pikhq_> Unless, of course, that's puts("invalid option");
05:08:34 <kallisti> die "Couldn't compile default datafile: $@" if $@;
05:08:39 <kallisti> die "Couldn't load default datafile: $!" unless @r;
05:08:46 <kallisti> Perl Error Handling: Best Practices
05:10:45 <kallisti> $@ and die or !@r and die or die
05:12:38 -!- augur has joined.
05:13:43 <kallisti> possibly the most dubious line of code I've ever written. I had to double check why I did that to make sure past me did the right thing.
05:25:52 <Sgeo> <3 This Is Gallifrey
05:38:50 <Sgeo> kmc has an interesting esolang idea.
05:39:39 <kallisti> would it be considered bad style to have long options with uppercase in them?
05:40:19 <Sgeo> kallisti, I love the song
05:40:38 <oerjan> try to sneak in some kannada characters while you're at it.
05:49:04 <PiRSquared17> http://ka.wikipedia.org/wiki/ (warning: possibly browser crashing) is Kannada?
05:49:59 <PiRSquared17> No... is it http://kn.wikipedia.org/wiki/ (same warning) ?
05:51:58 <itidus21> but eh.. stupid me uses firefox and has the fonts available perhaps
05:52:43 <PiRSquared17> According to http://meta.wikimedia.org/wiki/Small_wikis#Small_wikis , kn = Kannada
05:53:00 <itidus21> kannada is an indian language i think
05:53:43 <itidus21> but then.. i am in the company of geeks who know everything >.<
05:55:48 <oerjan> i mainly know kannada as the source for the eye characters of the look of disapproval smiley.
05:55:59 <itidus21> indian languages i can name off the top of my head with the bonus of seeing kannada just now are: kannada, pali, sanskrit, urdu(?), bengali, punjabi, oriya, marathi, hindi
05:57:57 <PiRSquared17> http://kn.wikipedia.org/wiki/ಪುರಾತನ_ಕಾಲದ_ಸೂರ್ಯ_ಗ್ರಹಣಗಳ_ಪಟ್ಟಿ
05:59:19 <itidus21> i got Failed to parse (lexing error): <nowiki> as part of that page
06:00:47 <PiRSquared17> '''Thick mold' [[Contact name == ==[[Image: [[Media: Example.jpg]] <math> <nowiki> inserted into the formula here </ nowiki >--~~~~----</ math >]]]]''
06:05:44 <zzo38> kalisti: I think it is bad style to have long options at all. But, that is just my opinion anyways
06:12:45 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.8858
06:21:16 -!- tuubow has quit (Ping timeout: 240 seconds).
06:25:55 <kallisti> oerjan: fizzie: http://sprunge.us/IbRH here's my current word generator. It's currently not completely tested due to some sort of weird encoding issue in my dataset builder ("training" script or whatever).
06:25:59 <kallisti> see if you can spot any problems.
06:27:29 -!- tuubow has joined.
06:30:24 <kallisti> wait why am I flooring my random value for the random selection routine..
06:31:50 <pikhq_> Sadly, not in Unicode.
06:32:59 <kallisti> since my numbers are now most likely going to be ratios in [0,1] I feel it might be a bad idea to floor that number..
06:34:02 -!- NihilistDandy has joined.
06:40:14 -!- PiRSquared17 has changed nick to PiRSquaredAway.
06:41:29 -!- calamari has quit (Quit: Leaving).
06:53:22 -!- Nisstyre has quit (Remote host closed the connection).
07:01:43 <kallisti> !perl "--eng-1M" =~ s/(^|-)(.)/\u$2/gr
07:01:44 <EgoBot> Bareword found where operator expected at /tmp/input.2909 line 1, near "s/(^|-)(.)/\u$2/gr"
07:02:07 <kallisti> !perl my $_ = "--eng-1M"; s/(^|-)(.)/\u$2/g; print;
07:03:44 <kallisti> !perl my $_ = "--eng-1M"; s/(^|-)[^-]/\u$2/g; print;
07:04:34 <zzo38> If you use Zero (an uninhabited type) and Maybe to represent natural numbers in types, then you could make a type for a list with a fixed number of elements is simply (->)
07:05:06 <kallisti> !perl my $_ = "--eng-1M"; s/(^|-)([^-])/\u$2/g; print;
07:08:15 <zzo38> I think a extension for Haskell to make natural number types should do like what I specified here
07:09:13 <kallisti> !perl my $_ = "--eng-1M"; s/(^|-+)([^-])/\u$2/g; print;
07:10:27 <kallisti> !perl my $_ = "--eng-1M"; s/(^|-+)(.)/\u$2/g; print;
07:10:34 <kallisti> !perl my $_ = "--eng-1M"; s/(^|-+?)(.)/\u$2/g; print;
07:41:52 -!- oerjan has quit (Quit: eek update).
07:58:34 <Sgeo> kallisti, update
08:05:49 <kallisti> Sgeo: I'm guessing that you noticed the little nicholas cage button on the top right?
08:28:28 -!- Phantom_Hoover has joined.
08:29:28 <kallisti> Wide character in print at ./words.pl line 133.
08:30:14 <Deewiant> http://stackoverflow.com/questions/6162484/why-does-modern-perl-avoid-utf-8-by-default
08:31:19 <kallisti> I really don't think that's my problem, since I'm doing all of the usual utf8 things.
08:40:29 <kallisti> there was nothing wrong at all.
08:41:13 <kallisti> when making my program Unicode friendly I decided that use open qw(:encoding(UTF-8) :std) was probably unecessary. And then I forgot about it not being there when I tried to print out data during test. :P
08:42:35 <kallisti> hm, it actually works, I think.
08:45:21 <kallisti> but now the load time is abysmal.
08:51:15 <kallisti> what's the best way to put these files on hackego, as far as organizing them.
08:51:59 <kallisti> I have a data directory with a bunch of perl scripts and then the actual script itself.
08:54:43 <HackEgo> bin \ canary \ karma \ lib \ paste \ quotes \ share \ wisdom
09:00:36 <Patashu> I found this video of a toad playing a video game http://www.youtube.com/watch?v=bnduwnA1jxg&feature=g-all-u&context=G2b6f33cFAAAAAAAAHAA
09:00:44 <Patashu> and was wondering what other animals have been made to play video games?
09:00:59 <Patashu> I know researchers use monkeys to control vr realities / robot arms / etc and solve tasks, for example
09:01:59 <kallisti> `fetch http://dl.dropbox.com/u/16495819/Data.tar.bz2
09:02:10 <HackEgo> 2011-12-23 09:02:09 URL:http://dl.dropbox.com/u/16495819/Data.tar.bz2 [9307699/9307699] -> "Data.tar.bz2" [1]
09:02:12 <kallisti> `fetch http://dl.dropbox.com/u/16495819/words.pl
09:02:29 <HackEgo> 2011-12-23 09:02:28 URL:http://dl.dropbox.com/u/16495819/words.pl [4064/4064] -> "words.pl" [1]
09:03:41 <kallisti> `mv chmod +x words.pl && mv words.pl bin/words
09:03:44 <HackEgo> mv: missing destination file operand after `chmod +x words.pl && mv words.pl bin/words' \ Try `mv --help' for more information.
09:03:53 <kallisti> `run chmod +x words.pl && mv words.pl bin/words
09:04:04 <HackEgo> Data \ Data.tar.bz2 \ bin \ canary \ karma \ lib \ paste \ quotes \ share \ wisdom
09:04:14 <HackEgo> mv: missing destination file operand after `Data share/WordData' \ Try `mv --help' for more information.
09:04:29 <HackEgo> Optional module Math::Random::MT::Perl not found. \ Usage: words [-dhNo] [DATASETS...] [NUMBER_OF_WORDS] \ \ valid datasets: --eng-1M --eng-all --eng-fiction --eng-gb --eng-us --french --german --hebrew --russian --spanish --irish --german-medical --bulgarian --catalan --swedish --brazilian --canadian-english-insane --manx --italian --ogerman --portuguese --polish --gaelic --finnish \ default: --eng-1M \ \ options:
09:04:44 <kallisti> oh that's going to be annoying.
09:05:10 <kallisti> Gregor: plz to install Math::Random::MT::Perl kthx
09:06:09 <kallisti> it wasn't this slow on my computer though..
09:06:12 <HackEgo> Optional module Math::Random::MT::Perl not found.
09:06:58 <HackEgo> Optional module Math::Random::MT::Perl not found. \ Unknown option: \ Unknown option: 5 \ Unknown option: 0
09:07:15 <HackEgo> Brazilian.pl \ Bulgarian.pl \ CanadianEnglishInsane.pl \ Catalan.pl \ Eng1M.pl \ EngAll.pl \ EngFiction.pl \ EngGb.pl \ EngUs.pl \ Finnish.pl \ French.pl \ Gaelic.pl \ German.pl \ GermanMedical.pl \ Hebrew.pl \ Irish.pl \ Italian.pl \ Manx.pl \ Ogerman.pl \ Polish.pl \ Portuguese.pl \ Russian.pl \ Spanish.pl \ Swedish.pl
09:07:52 <kallisti> Patashu: you have to use run if you have options
09:08:37 <HackEgo> Optional module Math::Random::MT::Perl not found.
09:09:51 <kallisti> well no, the warning is on STDERR so that's not going to help.
09:09:54 <HackEgo> Optional module Math::Random::MT::Perl not found.
09:10:31 <kallisti> echo "print $0" >> bin/test.pl
09:10:34 <kallisti> `run echo "print $0" >> bin/test.pl
09:10:44 <kallisti> `run chmod +x bin/test.pl && perl bin/test.pl
09:11:20 <kallisti> `run echo "print $0" > bin/test.pl
09:11:24 <kallisti> `run chmod +x bin/test.pl && perl bin/test.pl
09:11:34 <kallisti> `run echo 'print $0' > bin/test.pl
09:11:36 <kallisti> `run chmod +x bin/test.pl && perl bin/test.pl
09:11:54 <HackEgo> coliburtuta ecculekesbrudonteedosphithypurrentandacconseadbreublur planous kquing
09:13:32 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds).
09:14:04 <HackEgo> Data.tar.bz2 \ bin \ canary \ karma \ lib \ paste \ quotes \ share \ wisdom
09:14:26 <kallisti> `perl -e 'print $1 #WHY' 'why'
09:14:29 <HackEgo> String found where operator expected at -e line 1, near "'print $1 #WHY' 'why'" \.(Missing operator before 'why'?) \ syntax error at -e line 1, near "'print $1 #WHY' 'why'" \ Execution of -e aborted due to compilation errors.
09:15:13 <kallisti> `run perl -e 'print $1 #WHY' 'why'
09:15:26 <kallisti> `run perl -e 'print $ARGV[1] #WHY' 'why'
09:15:35 <kallisti> `run perl -e 'print $ARGV[0] #WHY' 'why'
09:15:41 <kallisti> `run perl -e 'print $0 #WHY' 'why'
09:16:16 <kallisti> `run echo 'print $0' > test.pl
09:17:16 <kallisti> `run echo 'use Cwd; print getcwd' > bin/test.pl
09:17:43 <HackEgo> rm: cannot remove `bin/test.pl test.pl': No such file or directory
09:17:49 <HackEgo> rm: cannot remove `test.pla': No such file or directory
09:17:53 <HackEgo> Data.tar.bz2 \ bin \ canary \ karma \ lib \ paste \ quotes \ share \ test.pl \ wisdom
09:21:26 <kallisti> `fetch http://dl.dropbox.com/u/16495819/words.pl
09:21:29 <HackEgo> 2011-12-23 09:21:28 URL:http://dl.dropbox.com/u/16495819/words.pl [4065/4065] -> "words.pl" [1]
09:21:46 <kallisti> `run chmod +x words.pl && mv words.pl bin/words
09:23:43 <kallisti> `run perl -e 'do "share/WordData/French.pl" and print "WHY" or die'
09:25:07 <HackEgo> vologically rocimli pred mists trinter
09:25:13 <kallisti> yes it's timing out on the larger datasets.
09:25:42 <HackEgo> comimattanwat's oscio air's alities super presoxal strenzenessnes bailato conconto renaliging
09:25:44 <HackEgo> bash: --: invalid option \ Usage:.bash [GNU long option] [option] ... \.bash [GNU long option] [option] script-file ... \ GNU long options: \.--debug \.--debugger \.--dump-po-strings \.--dump-strings \.--help \.--init-file \.--login \.--noediting \.--noprofile \.--norc \.--posix \.--protected \.--rcfile \.--restricted \.--verbose \.--version
09:25:50 <HackEgo> Usage: words [-dhNo] [DATASETS...] [NUMBER_OF_WORDS] \ \ valid datasets: --eng-1M --eng-all --eng-fiction --eng-gb --eng-us --french --german --hebrew --russian --spanish --irish --german-medical --bulgarian --catalan --swedish --brazilian --canadian-english-insane --manx --italian --ogerman --portuguese --polish --gaelic --finnish \ default: --eng-1M \ \ options: \ -h, --help this help text \ -d,
09:28:57 -!- Phantom_Hoover has joined.
09:32:21 <fizzie> `run words --finnish 5
09:32:27 <HackEgo> alki aseteokseeninan ryöppyämällylty kutsempinani veromittaisemme
09:36:09 <fizzie> That's not too shabby. "veromittaisemme" is almost a real word; it's a compound of real words, anyway, even though I'm not sure what's their meaning when combined like that, if any.
09:37:42 <HackEgo> tars moszealanders tubeamshodon socrip acae noningly destitizershing blamizedrists stermi disecheftertable disquardell unte pate ing's ironcons geness's cation gilroofness ebuy alberrein carpediss undisgrammen cologies hysingelias petroue medifies dogs kelfate seaf's taatshru electituatina hightled vr's okorta best liber's madding consion hemerositid tubble ptantim strat unic windunnate onfulfilag nebroty inface curverlier rhippoin read
09:38:18 <kallisti> I forgot to filter 's on this dataset
09:38:34 <fizzie> `run words --finnish 15
09:38:36 <kallisti> but I'm converting everything over to Storable finally so that will hopefully speed up the larger datasets.
09:38:39 <HackEgo> sit linanne madallani hyperäisimmällä nopeiltasi korjuman hoitteluillisemmio sijatussaattavalla ihmeäviilinteissani nojaksempiisi säänellaan huojaamilla kielevammiltamme momeaksentua muisillensa
09:38:59 <kallisti> run words --finnish --candian-english-insane 15
09:39:06 <fizzie> "nopeiltasi" = "from your fast ones".
09:39:40 <fizzie> Maybe you should: rewrite it in C.
09:39:50 <fizzie> Maybe you should: rewrite it in Haskell.
09:40:01 <fizzie> Maybe you should: rewrite it in COBOL.
09:40:09 <fizzie> Okay, that's all I've got.
09:40:19 <kallisti> the problem with that is that... I have to rewrite everything
09:40:23 <kallisti> and use a different serialization format.
09:41:04 <fizzie> I've got Perl scripts and Befunge code cooperating on fungot's babble-models; it's not such a huge job to just define something.
09:41:05 <fungot> fizzie: mr president, the liberals are not either, the only solution that can provide an alternative to the american cosmetics industry. do american fnord really have to say.
09:41:20 <shachaf> fizzie: It's not like C/Haskell/COBOL are different languages in any meaningful way.
09:41:50 <kallisti> fizzie: I don't think I can do that easily
09:41:58 <kallisti> actually serialization kind of looks difficult in Haskell, unless I use Read/Show
09:43:12 <kallisti> I guess since I'm using a faster language that would be sufficient.
09:43:28 <fizzie> Or whatever, I'm sure there are billions of things.
09:43:31 <kallisti> oh wait I bet there's already typeclass instances for common data structures.
09:43:45 <fizzie> I just picked whatever elliott's "mchost" had for the low-level.
09:44:20 <kallisti> but maybe storable will fix everything?
09:44:31 <fizzie> It should certainly speed up the loading.
09:46:12 <kallisti> I guess I probably should have done this a while ago.
09:46:17 <kallisti> the read/write code is actually simpler now. :P
09:46:31 <fizzie> "säänellaan" -- broken vowel harmony 1, Markov assumption 0.
09:47:14 <fizzie> You can't have ä and a in the same word (or subword of a compound word, anyway), broadly speaking.
09:47:28 <fizzie> But of course the a's have completely forgotten about the ä's.
09:47:31 <kallisti> that's stupid. stop having a difficult language.
09:47:39 <kallisti> I'm sure words breaks plenty of English rules too, not that there are many.
09:48:42 <shachaf> That's the One True Serialisation Library.
09:51:10 <Deewiant> fizzie: Some foreign imports break that though, like "analysointi" or "rekrytointi"
09:51:22 <fizzie> Deewiant: OLUMPPIALAISET.
09:51:24 <HackEgo> Can't open perl script "utf-8": No such file or directory
09:52:22 <kallisti> I really only do special processing on the english datasets
09:52:27 <kallisti> specifically removing 's and s'
09:52:47 <fizzie> `run words --finnish 15
09:52:53 <HackEgo> mekkaistisi myhäikäisittamallise perhemmiksenne peisteta keksesi erällensa kehittamme imeämme fiksillan harauksemmiksempi työskelumpinämmille psyvästämme minansa kärsivahtavissa estuvistollista
09:53:48 <kallisti> yeah your vowel harmony bullshit is going to get messed up a lot.
09:54:07 <fizzie> Long-distance dependencies often are.
09:54:48 <kallisti> `run words --spanish --french 20
09:55:22 <kallisti> `run words --finish --ogerman 20
09:55:29 <kallisti> `run words --finnish --ogerman 20
09:55:36 <HackEgo> aufführungekste loisteignallangab vag laisio-kurs brotamikromaiser metastadi ymmächeschest ertär nauraimafie länneminimmotisoll illenne kurstaltagenerilläufe milcode minte scii profferaviehun prosen spekultan hermatiintuvinast berni
09:55:58 <fizzie> "metastadi", the concept of our capital city.
09:56:17 <fizzie> (Helsinki is called "stadi" slangwise.)
09:56:36 <kallisti> `run words --ogerman --german-medical --russian 20
09:56:42 <fizzie> "Helsinkians themselves never refer to their slang as Helsinki slang(i) but instead as stadin slangi or simply slangi. Stadi is a slang word, borrowed from the Swedish stad, "city". Literally, the name would mean "slang of the city", but stadi always means just the city of Helsinki in the slang – all other cities are unconditionally referred to by the common Finnish word for "city" ("kaupunki")."
09:57:03 <kallisti> `run words --ogerman --german-medical 20
09:57:10 <HackEgo> tofferen ranoviereiz lindo promulgaritätigkeimab nother einkubakhäuse versorten behanisiker patorweißen stem kretecht endelisanges kugenheitestapeut gelfigusamphil tresung spersche anovokalzen fludier kommenwagenren bandlungertem
09:57:47 -!- NihilistDandy has quit (Quit: http://haskell.org).
09:58:07 <kallisti> yeah that one is going to be too big I think.
09:58:14 <kallisti> the only ones that seem to word are from /usr/share/dict
10:00:09 <kallisti> `run words --gaelic --finnish 10
10:00:14 <HackEgo> vankeämme ghreittiivistaramassa suaim had phrìdeimmis h-earrattavien säile phuiliöillään thuumiar theinokkaavall
10:00:59 <HackEgo> vähän virhemmältä hallisenne hylkimällenne agenevimmilla millasiakvaa riisimmastani päämättömämmillä käyttämänänne viamäksenne
10:01:33 <fizzie> You could probably make the loading somewhat faster by special-casing @loaded_data == 1 and avoiding the "loop through the whole model" step. Don't know how much that buys.
10:02:08 <fizzie> That's quite some real words there. "vähän", "hylkimällenne", "käyttämänänne".
10:02:54 <kallisti> yeah I assumed increasing the grams would make that more likely.
10:02:54 <Deewiant> "hallisenne" too, if halls can have diminutivese.
10:03:03 <fizzie> Yes, I was considering that.
10:03:14 <fizzie> It sounds vaguely derogatory.
10:03:25 <fizzie> Like you're dissing someone's hall.
10:03:44 <fizzie> "No kyllähän tämä teidän... hallisenne varmaan menettelee. Ehkä."
10:04:27 <kallisti> fizzie: yeah I can skip the normalization step completely.
10:04:38 <kallisti> but I really think it's the loading time that's slowing it down the most.
10:04:56 <kallisti> the previous version didn't have that problem, and used a large dataset
10:05:58 <kallisti> hmmm, well turning off normalization only prevents the summation from happening, probably not going to matter much.
10:06:28 <kallisti> but anyway the word lengths are vastly improved, so that's a plus.
10:07:12 <fizzie> Anyway, "vähän" -> a little, "hylkimällenne" -> to/for the one you rejected, "käyttämänänne" -> I can't be really bothered to figure this one out. "käyttämänne X" -> the X you used, though.
10:09:55 <fizzie> "hylkiä" to reject, "X-n hylkimä" something rejected by X, "hylkimänne" something rejected by you (plural, or polite singular), "hylkimällenne" the allative "to"/"for" case of that.
10:10:55 <fizzie> You just pile on the prepositions.
10:11:00 <HackEgo> avguda föringa tätter förmigheterielöjts navans fria lyckönda nuteruts naivitören ents tyngdeå styrar begraffa baltationen nålde subtramhet sedlanden sinnen kastabelanroppskriv feja
10:11:10 <fizzie> Looks quite swedish to me.
10:11:43 <fizzie> "sinnen" is the indefinite plural form of sinne 'mind, sense'.
10:11:47 <kallisti> fizzie: oh all the fucking time we do (also we don't give a shit about subject-predicate ordering)
10:12:36 <kallisti> actually sometimes you have a choice between 2 or 3 different preposition and your sentence will mean the exact same thing.
10:12:44 <fizzie> Oh, and 'avguda' is sort of "to adore, to worship".
10:13:05 <kallisti> yeah small dataset + 4-gram = actual words sometimes
10:13:22 <kallisti> eng-all on my computer is proving to be interesting.
10:15:02 <fizzie> You could also in theory do on-the-fly interpolation of only the 'grams you need, but that'd be a bit of a hassle.
10:15:24 <kallisti> unless I rewrote it in Haskell of course. :P
10:15:47 <kallisti> I guess interpolating the whole thing is kind of immensely wasteful...
10:16:15 <fizzie> Aw, no Norwegian? oerjan's going to be so disappointed.
10:16:28 -!- tuubow has quit (Ping timeout: 252 seconds).
10:17:05 <kallisti> show me a norwegian dictionary seperated by lines and I'll show you a words.pl that can generate Norwegian-esque words
10:18:18 <fizzie> http://packages.debian.org/sid/all/wnorwegian/filelist
10:18:23 <kallisti> the way I see lazy interpolating work is: it checks the interpolated data and if an entry doesn't exist it goes to the @loaded_data and fills the gram table on the fly.
10:19:45 -!- nooga has joined.
10:19:53 <fizzie> Them Norlanders are sort of confusing with their language, what with having two different in-use written forms (Nynorsk, Bokmål) of it.
10:20:07 <kallisti> all of your languages are confusing.
10:21:47 <kallisti> hmmm I have to be careful with autovivification here though.
10:21:54 <kallisti> merely /checking/ a key creates it.
10:22:18 <kallisti> but I think I end up interpolating after I check and it fails the first time
10:22:33 <kallisti> if I could somehow check twice without interpolating it could cause weird bugs.
10:26:25 <kallisti> I end up writing expressions like this in Perl entirely too often. :P
10:28:18 <kallisti> question: does dereferencing in perl create a copy of the data?
10:28:42 <kallisti> I'm pretty sure it doesn't, I think.
10:32:48 -!- GreaseMonkey has quit (Quit: The Other Game).
10:40:49 <HackEgo> naurajuisuku (Target: 5) librasta (Target: 8) painivierto (Target: 8) pansaismielemme (Target: 11) aloimilleni (Target: 7)
10:42:20 <kallisti> tends to overshoot the target a little bit, which is good.
10:42:32 <kallisti> `run words -d -o 2 --finnish 5
10:42:39 <HackEgo> vieraalimentävilkaksi (Target: 15) aaksestävälinettavina (Target: 15) myönneperustanne (Target: 12) varammenttivottein (Target: 15) saanneensa (Target: 15)
10:43:27 <kallisti> -o changes the target offset, -N skips normalization, and -d shows targets (in the version I'm working on -d will show the length-target difference which is the important thing)
10:44:30 <kallisti> ideally the length-target difference should equal the offset itself (I think)
10:45:31 <kallisti> yes, because when that happens it means you matched the length from the histogram while also landing on a space to ensure a smooth word ending.
10:46:47 <kallisti> ($ftable{' '} //= 0) *= 2**($len-$target);
10:47:11 <kallisti> I think I'm relying on the space grequency to always be in the interval [0,1]
10:47:58 <kallisti> or maybe it ends up being the same thing regardless.
10:48:13 <fizzie> I don't see how, given that pick does sum(@w) -- it's just a 2^(len-target) multiplier for the probability of a space.
10:48:29 <kallisti> is there a better function I could use?
10:50:31 <fizzie> I don't really know, that sounds vaguely reasonable. At len == target it's no-adjust, and then it goes up/down quite fast.
10:51:03 <kallisti> I'm sure it's landing on good lengths I'm just not sure that it's landing on good endings.
10:51:12 -!- TeruFSX_ has joined.
10:51:16 -!- TeruFSX has quit (Ping timeout: 252 seconds).
10:51:17 <kallisti> because that function greatly distorts the space frequency.
10:52:35 <fizzie> Well. It does avoid all completely unseen word-endings, which is good.
10:53:12 <fizzie> Also anecdotically speaking the finnish words seem to have really quite reasonable endings; it almost always seems to be some common suffix, which is sort of what we do.
10:53:28 <fizzie> -mme, -ne, -na, -nsa, -ksi, and so on.
10:53:35 <kallisti> yes I noticed the common suffixes
10:54:03 <fizzie> `run words --finnish 20
10:54:10 <HackEgo> esillasi kuullemmaksen vallonmukaisiman peimuavaruistamiamme ahdostaalle tuhisteltamme huttavakaulevillä vastanne tavamme kylmällämme sopukeutumikselta välleni afroamillensa paljamiasi nottarjoisamme työvistelemaksemi soviksensa poikkeesta laavaanne säihkiostavaltani
10:57:32 <fizzie> It's the first-person plural possessive noun case, as well as the first-person plural conjugation for the verbs in the basic (indicative) mood.
10:57:46 <fizzie> Don't know why first-person plural would be any more common than the others, though.
10:59:00 <fizzie> Though for the others the noun and verb endings differ. (Our ship = "laivamme", we speak = "puhumme"; your (pl.) ship = "laivanne", you (pl.) speak = "puhutte".)
10:59:00 <kallisti> so it's like having 's everywhere. :P
10:59:16 <kallisti> because finnish has more rules.
10:59:36 <kallisti> instead of "lol put 's and sometimes s' at the end of things when it's possesive except for contractions"
10:59:50 <fizzie> "kylmällämme" = with our cold, in that list above.
11:00:55 <fizzie> And "laavaanne" = "into your lava".
11:01:21 <kallisti> so I /think/ I've made the code better
11:01:26 <kallisti> by doing the lazy interpolation thing.
11:01:27 <Deewiant> "vastanne" = the second half of "et vastanne" ~= "you probably won't answer"
11:02:14 <Deewiant> Alternatively, "vastanne" = "your vasta" :-P
11:03:06 <kallisti> ##Lazily interpolate the gram table on the fly
11:03:46 <fizzie> Where vasta = "A kind of whisk made of birch twigs and used in the sauna to enhance the effect of heat by beating oneself with it".
11:04:07 <fizzie> It's also called "vihta".
11:04:22 <Deewiant> Yes, I figured I'd leave that out since there wasn't a one-word translation for it. :-P
11:04:24 <fizzie> Vasta is the East Finnish word for it, I think.
11:05:19 <HackEgo> Option f is ambiguous (finnish, french)
11:05:30 <HackEgo> avoistavaa aihdoltanne kuoliittämielmiisi afroavaaksesi suosaksi jahtamiltänne säilemästä levissa innollannesi pelisemme
11:06:04 <fizzie> "pelisemme" is the diminutive of "pelimme", 'our game'.
11:06:51 <kallisti> wow this is going to be so much faster.
11:08:06 <kallisti> I wonder if my special case is actually even slower than this one.
11:08:32 <kallisti> whereas this one doesn't (but still does unnecessary normalization)
11:10:08 <fizzie> You could make the %grams, %freqs into $grams, $freqs hashrefs so you can just non-copy assign, I guess. (And then just initialize them to {} if there's more than one @loaded_data. Or something.)
11:10:21 <fizzie> One more level of indirect-o-tron, of course.
11:10:32 <kallisti> but I think the normalization has been rendered pretty much imperceptible
11:10:42 -!- monqy has quit (Quit: hello).
11:10:45 <kallisti> so there's no harm in removing the special case.
11:11:37 <kallisti> granted the actual hash table itself isn't very large, maybe a few hundred keys at most.
11:12:43 <fizzie> Maybe soon you can even get English words out of the bot.
11:13:01 <kallisti> if by soon you mean "hours from now"
11:13:06 <fizzie> fungot: Could you generate words too? Do you have it in you?
11:13:08 <kallisti> because I'm having to reconstruct all the data for the billionth time.
11:13:09 <fungot> fizzie: mr president, i was insulted and my honour was called into question and mr anastassopoulos, the vice-president and the other does not want any superfluous bureaucracy. the same applies to amendments nos 6, 8, 10, 13, 16, 20, 22, 25, 26, 28 to 30, 32, 43, 46, 47, 48, 51, 129, 52, 85 and 101. some amendments, for example, has not changed its mind since we last spoke about this with all due respect to mrs villiers and almo
11:13:10 <fungot> f~fs@unaffiliated/fizzie: madam president, the blessing given by the commission over the next two years.
11:13:18 <fizzie> I think that's a "no".
11:13:47 <kallisti> fizzie: you could have it randomly insert words.pl stuff instead of fnord
11:14:01 <kallisti> I would miss fnord if you did that.
11:14:26 <kallisti> I love a good discordian reference.
11:15:39 <fizzie> I guess it could stick in a random word every now and then, I'd just probably need to call to an external program for that. Unless of course I do a Befunge word generation module too. (I don't think the existing babble-code is quite "functional" enough for me to re-entrantly call it recursively.)
11:16:27 <kallisti> I assume by "external program" you mean "words.pl" since it's currently the cutting edge in word generation technology.
11:17:04 <kallisti> or maybe "words.hs" once I get around to writing it.
11:17:23 <kallisti> for increased performance in your mission critical tasks.
11:17:54 <kallisti> oh right this markov model generator thing starts to eat up memory around this time
11:19:13 <kallisti> but, yes, in retrospect perl was a poor choice for this, since it requires a marginal amount of efficiency.
11:19:41 <kallisti> but it's actually not unbearably slow, HackEgo just has a strict time limit or is on a slow server or something.
11:20:00 <kallisti> it runs pretty quickly on my computer.
11:37:38 <kallisti> fizzie: I shouldn't be flooring $r in the pick routine, right?
11:37:58 <kallisti> I removed floor from that algorithm, because I don't think it makes any sense with floating point numbers.
11:53:53 <kallisti> delete local is a neat construct
11:58:00 <fizzie> Yes, if they're not integers it shouldn't be floored. Though I think with non-integers there's a chance that because of roundoff errors, pick might in fact fall out of the loop. Maybe.
12:00:55 <fizzie> HackEgo's on a prgmr VPS, isn't it? Those aren't exactly well-known for their computational power, at least the low-memory ones. (CPU scheduling weights equal RAM amounts.)
12:01:36 <fizzie> Though who knows, maybe Gregor's paying for four gigabytes or something.
12:02:29 <HackEgo> total used free shared buffers cached \ Mem: 250760 8416 242344 0 0 2292 \ -/+ buffers/cache: 6124 244636 \ Swap: 0 0 0
12:02:34 -!- Patashu has quit (Ping timeout: 240 seconds).
12:02:34 <fizzie> (That's the silliest command.)
12:02:51 <kallisti> hmmm so, except for efficiency
12:03:24 <kallisti> !($blah =~ /.../) should be equivalent to $blah !~ /.../
12:03:32 <fizzie> `run free # young hearts
12:03:35 <HackEgo> total used free shared buffers cached \ Mem: 250984 7416 243568 0 0 2292 \ -/+ buffers/cache: 5124 245860 \ Swap: 0 0 0
12:04:07 <kallisti> I'm wondering which would be faster in my case.
12:04:55 <kallisti> my $filter = qr/^[\p{Alphabetic}\p{Dash_Punctuation}\p{Connector_Punctuation}']+$/;
12:06:09 <kallisti> I think the majority of cases will match.
12:06:27 <kallisti> but when they DON'T match I go to the next iteration of the loop.
12:07:12 <kallisti> I don't think there's a way to avoid looping through the whole string via regex.
12:07:38 <kallisti> because I need to verify that every character is correct.
12:10:44 -!- Vorpal has joined.
12:11:28 <fizzie> Let's welcome Vorpal in eir native language, shall we?
12:11:30 <fizzie> `run words --swedish 20
12:11:37 <HackEgo> kapte extreterskt distimrerna fogatalspla mistats kyparkullen brevärning allraskedjord folkningar ampulländ inistenade vifter frundaleranas omiersmäst årsrumme dalars kunskriffusk uppgrade matning orkanon
12:13:07 -!- iconmaster_ has joined.
12:15:57 <HackEgo> thairedoun apalmuds canism sept thrily guarrator blood's aceflecho cactere deoriopsis adverm aphilhorn anturstak slikeaks daubact burstruann posteachthy winghaytom dumaco absorphai
12:16:57 <kallisti> this is like an endless source of words for fantasy authors.
12:17:11 <kallisti> `run words --english-fiction 20 #too slow, I bet
12:17:15 <HackEgo> Unknown option: english-fiction
12:17:17 <kallisti> `run words --eng-fiction 20 #too slow, I bet
12:17:54 <kallisti> iconmaster_: it's an improvement on an existing one that does English words... I say "improvement" but currently it runs too slow for HackEgo's tastes.
12:18:12 <kallisti> but I've got a faster one that I'll be adding probably tomorrow.
12:18:16 <fizzie> It's the very special "completely broken" sort of improvement.
12:18:34 <kallisti> functionally it works fine. it's just inefficient atm.
12:18:59 <HackEgo> luthilehedjass tican prtranichase bu compal ransuil nuchecanatige con paecclogrossl mas blumilins exce re ings fegenchmer le gehas maclaffien dolies lannebathceleablft
12:19:13 <fizzie> Functionally speaking it's vastly improved, since it can now do Finnish and Swedish just fine, which are certainly an improvement over boring old English.
12:19:36 <iconmaster_> I made a generator for my graphing calculator once
12:20:06 <iconmaster_> I weighted certain letters gor each letter last.
12:20:25 <kallisti> fizzie: also it can do Swinnish or Fwedish
12:20:47 <iconmaster_> It was pretty ok, but it gave me a lot of qs for some reason.
12:20:58 <kallisti> a word generator on a calculator?
12:21:15 <kallisti> `run word --swedish --finnish 20
12:22:03 <kallisti> maybe that's when it timed out.
12:22:11 -!- iconmaster_ has quit (Quit: Pardon me, but I have to die in NetHack again.).
12:22:33 <fizzie> The Finnish-Swedish folks tend to just mix the languages on a word granularity; or sometimes with compound words with Swedish beginnings and Finnish endings.
12:22:45 <fizzie> "jättekiva" and so on.
12:23:10 <fizzie> `run words --finnish --swedish 20
12:23:14 <kallisti> `run word -N --swedish --finnish 20
12:23:17 <HackEgo> somammands eksför tristammasse moriersi vastat sovvaggenerta omligenemalt amman kompiin tres snatorallvimma fiktattus illättän kärska geparampen kollammalteista hjä valtsaab rämassa siinhoittömina
12:23:18 -!- elliott has joined.
12:23:41 <kallisti> elliott: did you finish your Markov thing yet?
12:24:25 <fizzie> `run words --finnish --swedish 20
12:24:31 <HackEgo> rudienseämpioisioiminnis ensatummalmarna eromatiomamas ogär balla röyhemme kiinpassandivas sönäni poängestanin söpöttstå waala olorukatsuttan säni kits fångelbani karförssioniste rikans kalleninkalisi käynnatts antustamenedus
12:24:32 <fizzie> Those are such nonsense.
12:25:08 <lambdabot> elliott: You have 2 new messages. '/msg lambdabot @messages' to read them.
12:25:21 <kallisti> elliott: it's slightly broken (on HackEgo)
12:25:31 <kallisti> elliott: meaning it's too slow. BUT TOMORROW IT WON'T BE (I think)
12:25:44 <kallisti> elliott: so only the smaller datasets work currently.
12:26:14 <elliott> <lambdabot> kallisti said 8h 36m 57s ago: I wonder how legit this is: http://news.softpedia.com/news/Introducing-Ubuntu-11-10-Without-Unity-228425.shtml
12:26:19 <elliott> kallisti: It's just GNOME 3.
12:26:24 <elliott> You can get that with an apt-get.
12:26:35 <kallisti> elliott: also I'm thinking about switching to Linux Mint since it sounds like pretty much what I want.
12:26:53 <elliott> Linux Mint is beyond terrible.
12:27:13 <kallisti> is this like.. based on things.
12:28:27 <elliott> As for the scumminess, here's one instance:
12:29:14 <elliott> Banshee the audio player, when directed to an audio store, uses a referral link that gives a tiny kickback to its developers. Canonical and the Banshee developers agreed on changing this to one that directs the revenue to Canonical, on the condition that 1/3 of the profits go to Banshee.
12:29:38 <elliott> The Linux Mint developers, upon pulling this change into their distro, changed it to a new URL which gave 100% of the profits to themselves.
12:29:47 <elliott> With a misleading changelog message.
12:30:18 <elliott> When they had to defend themselves upon it being widely reported, the guy actually said -- and I'm quoting from memory, not paraphrasing here -- "Any revenue stream in Linux Mint that does not go to us is a BUG, and if you see one, you should report it."
12:30:52 <elliott> They also just don't really give a flying fuck about free software in general, they're opportunists.
12:31:02 <kallisti> so I should hate them on ethical grounds. okay. that will make me feel slightly bad if I decide that it functions as I would like it to.
12:31:23 <elliott> It's also shit technologically, but that part's obvious.
12:31:51 <kallisti> `run words --canadian-english-insane --ogerman 25
12:32:01 <HackEgo> arschede diskrew altlos ausführer graphe computag apperstempfeinfer offmänge heit seise plättillitier idous bewraph gas montertrobusüblin grimin unfelibe cyberginne allinigne gattress's creted wattungobah strammatine diosemplymph straturansgebäude's
12:32:20 <elliott> `run words --canadian-english-insane 10
12:32:22 <Phantom_Hoover> elliott, you do realise that the immediately-accessible information on a given thing is going to be written with a positive spin, right?
12:32:26 <fizzie> kallisti: You might want to do something like @ARGV = split /\s+/, $ARGV[0] if $#ARGV == 0 and $ARGV[0] =~ /\s/; or something like that so that you can `words --foo --bar 42 instead of having to remember to `run words --foo --bar 42.
12:32:30 <HackEgo> stolong und echinles rinodiacoi enkie hebbing gigasses diopagany synger sulphurre
12:32:36 <elliott> kallisti: This is worse than `word.
12:32:49 <Phantom_Hoover> So it's not at all easy to find reasons that Mint is shit technologically if you don't already know where to look.
12:33:04 <elliott> Phantom_Hoover: I tend to assume competent people are capable of doing their own research? I mean, I wasn't exactly given the divine gift of knowledge that Linux Mint is shit.
12:33:37 <fizzie> elliott: It does rather pleasant Finnish, in fact.
12:33:42 <fizzie> `run words --finnish 20
12:33:48 <HackEgo> osaapuilla vaihermu hylkään ikärkeamme pärisimme aalemaksensa kallanne pystämästään imaalaamaksenne vassasitisti alkutelmän asineesi yltäni suimaksi stresseen kokeasellesi muodostani irvelaankero kärpäseni loppina
12:33:54 <fizzie> And very passable-looking Swedish for a Finn.
12:34:04 <Phantom_Hoover> Where do you look up criticism of a thing (this is an honest question; I have never been able to work this out)?
12:34:17 <fizzie> "pärisimme" = "we buzzed". (It's also a slang term for this and that.)
12:34:30 <fizzie> (And "hylkään" = "I reject".)
12:34:47 <kallisti> elliott: I've rewritten it with Storable and am also doing a lazy interpolation thing. I'm sorry you think it sucks. Maybe insane canadian english just sucks?
12:35:10 * kallisti is just waiting on the new data to finish so he can upload the changes.
12:36:08 <elliott> kallisti: Unless you are incapable of installing proprietary drivers and things like Flash in Ubuntu or Debian, Linux Mint buys you exactly nothing. It is just a stupid reskinning and rebranding with proprietary software and its own http://upload.wikimedia.org/wikipedia/commons/5/59/Mintupdate.png completely pointless http://upload.wikimedia.org/wikipedia/commons/7/75/Mint-Software-Manager.png duplicate shitty versions of software that already ex
12:36:08 <elliott> ists in its upstream distros. Also, it's not like they're offering to maintain GNOME 2; all they are doing is some shitty shell extensions that makes gnome-shell slightly more like GNOME 2, and shipping the MATE fork of GNOME 2, which is *not* Linux Mint-specific or anything, they're just packaging it. (It's already in the Arch AUR, for instance, as it's a project by (a subset of) the Arch community.)
12:36:38 <elliott> The only reason people use it is because they're the kind of people who use Ubuntu, except they hear it has Flash by default and they like the skin.
12:36:40 <fizzie> (Also "yltäni", "muodostani" and "kärpäseni" are words. Quite a high percentage that time.)
12:37:03 <elliott> <Phantom_Hoover> Where do you look up criticism of a thing (this is an honest question; I have never been able to work this out)?
12:37:05 <elliott> Phantom_Hoover: Google "X sucks".
12:37:33 <HackEgo> mark beeinblattseiträge teur sackerlicht heitellingeschichtsvorat bau gauswocherat frageerschzeitleiden übert doktagsfaktiviehuh entaubwand lobat tonne verwahlt extmarschung wegungsplander warenntlos haustralb inflanschaltwick fehlerquäle pochst laggezähnenblößer hineuwachdro kühlugließen elagt
12:37:35 <Phantom_Hoover> Not one of the results that come up first on my screen pertain to the X window system.
12:37:42 <elliott> "Ubuntu and Linux Mint adopt radically different update strategies. Ubuntu recommends its users update all packages and upgrade to newer versions using an APT-based upgrade method. Resulting problems and regressions are regarded as temporary issues that can be fixed by further updates. In comparison, Linux Mint recommends not to update packages that can affect the stability of the system and recommends the use of its Backup Tool and fresh install
12:37:43 <elliott> ations to upgrade computers to newer releases.[37]"
12:37:58 <elliott> Pandering to Windows users' insecurities I see
12:38:08 <elliott> Phantom_Hoover: ...dude, X was a placeholder.
12:38:24 <kallisti> `run words --german-medical 25
12:38:27 <HackEgo> antin interobiets aronchinavicum vollarend abschesistersmektion neurodynaprote modarmatoms nodatiolentere antihisch neurontger heta thronchol mittentwichtungsprol l�ssentepatoreaktion desalium wundteinw�rer digemfibronal grimentratikelgebo erysmografie immungen rektorvativ tasisteomycinsultimerbe bewegene virurgischem ionen
12:38:45 <kallisti> hmmm those characters don't show up in my font.
12:39:16 <Phantom_Hoover> Those are the top 5 results on DDG for 'linux mint sucks'.
12:39:17 <elliott> Phantom_Hoover: No, because I have no idea what you're listing, or why you think em dashes are an appropriate character to denote them with.
12:39:30 <kallisti> why the fuck is there a german medical dictionary in Ubuntu repos.
12:39:43 <elliott> http://www.google.co.uk/search?sourceid=chrome&ie=UTF-8&q=%22linux+mint+sucks%22 ;; admittedly, these aren't very good results, but they *are* about Linux Mint sucking.
12:39:48 <fizzie> kallisti: Nine out of 10 mad German scientists use Ubuntu; there's a market for it.
12:40:01 <elliott> Phantom_Hoover: Anyway, Linux Mint uses DDG by default. So clearly they've whitewashed it.
12:40:28 <kallisti> elliott: should I maybe try Arch or will I break everything?
12:40:41 <Phantom_Hoover> Wondering why I switched to DDG, struggling to come up with a good answer.
12:41:30 <kallisti> elliott: but I bet there's resources on how to not break everything.
12:41:34 <elliott> kallisti: But you could use it as an opportunity to escape shitty DEs (while breaking everything).
12:41:38 <elliott> And yes, there are, but you're an idiot.
12:42:47 <kallisti> https://wiki.archlinux.org/index.php/Official_Installation_Guide
12:43:15 <elliott> I'm not helping you if you fuck it up.
12:43:35 <kallisti> I'll set it up on my external.
12:45:07 <elliott> Sigh, after me and another guy collectively spend paragraphs and paragraphs explaining to this guy why he doesn't want existentials, he posts again saying "hey I fixed it now, I'm gonna put it on Hackage, what do you think!!" without actually listening.
12:47:47 <kallisti> elliott: did you have any trouble with wireless?
12:48:39 <elliott> I don't use wireless on this machine. You should plug your computer into Ethernet.
12:48:43 <elliott> At least while installing.
12:48:54 <elliott> There is no chance whatsoever the tiny livecd has any wifi drivers.
12:49:20 <kallisti> I was going to go with core anyway, just to see if it came with wifi.
12:52:02 <fizzie> Utnubbu netinst disc didn't have drivers for my wired Ethernet; that was the strangest.
12:52:37 <kallisti> elliott: there's "net" and "core" with core supplying extra packages and net being the barebones net install.
12:53:27 <fizzie> Well I certainly wasn't going to download a DVD's worth of stuff.
12:53:34 <elliott> kallisti: You want the netinstall.
12:53:43 <elliott> core will just make you download everything again afterwards on the first -Syu.
12:53:52 <kallisti> I /guess/ I can walk over to an ethernet cable. sheesh. so demanding.
12:53:52 <elliott> fizzie: ...Ubuntu is a 600 meg CD ISO...
12:54:40 <kallisti> Allows you to change your editor preference. You'll have the choice between nano and vi (and pico/joe/vim if you install those in a separate console). You can skip this menu, but you will be asked again when needed.
12:54:56 <fizzie> elliott: Well, yeah, but the 'minimal' CD is still much smaller. Anyway, the 'alternate' CD -- which is the only way to do some installations, isn't it? -- didn't have the driver either.
12:55:25 <fizzie> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/560249 -- and apparently no-one seems to be fixing it, since according to the last message 11.10 alternate CD is still lacking it.
12:55:49 <kallisti> this is a very very good installation guide.
12:56:28 <fizzie> (The "desktop" CD I think does have it, which is a bit weird.)
12:57:15 <kallisti> hmmm so I could actually just dd the image onto my external.
12:57:34 <elliott> kallisti: which would leave you unable to install it onto your external.
12:57:40 <elliott> Because the external would be being used. To install it.
12:57:52 <kallisti> right but it says the image is an Arch system
12:57:56 <kallisti> so... that would install it for me.
12:58:42 <elliott> kallisti: Here's my new strategy: Instead of explaining things to you, which would make me want to die, I will just say "no" whenever you should not do something for very good reasons.
12:59:40 <elliott> kallisti: Unless you want your system to never grow beyond ~100 megs.
12:59:49 <elliott> kallisti: And be preconfigured solely for the purpose of running an installer.
13:00:01 <elliott> And have essential system configuration not done properly because the installer does that.
13:00:29 <kallisti> The images run like any regular installed Arch Linux system.
13:00:29 <kallisti> In fact, they're exactly the same, just installed to a CD or USB image instead of a hard disk.
13:00:32 <kallisti> They include the entire "base" package set, as well as various networking utilities and drivers and have the aif package installed.
13:01:25 <elliott> kallisti: Dude... stop trying to prove someone who actually runs an Arch system and has used the installer about 10 times wrong by quoting a wiki page that is intended for people trying to install the system in a normal way.
13:01:32 <elliott> Yes it is a LiveCD. Yes that's completely fucking irrelevant.
13:02:18 <elliott> The partition is a 100 megabyte CD filesystem (not anything reasonable or Linuxy), non-resizable. You will have to manually edit config files without knowing which ones you need to touch to stop it being the installation CD. It prints out "here's how to install" messages when you log in; you would have to manually remove those.
13:02:25 <elliott> There are so many fucking ways in which that is a completely terrible idea.
13:02:34 <elliott> Do it if you want but you'll be a complete idiot.
13:02:41 <kallisti> It was not so much attempting to prove you wrong as it was presenting what I saw as a discrepency.
13:04:25 <fizzie> ISO9660 filesystem, in addition to being non-resizable, is also non-writable, which might be a bit of an issue.
13:05:30 <elliott> fizzie: I thiiink it might be used to contain an image which is mounted in RAM.
13:05:41 <elliott> fizzie: At least you can install packages on it (I installed w3m and irssi to view the wiki and IRC).
13:05:47 <fizzie> Sure, if you never want to make permanent modifications to it.
13:20:00 <kallisti> eng-fiction and eng-gb always finish first and then I'm stuck with eng-all, eng-1M, and eng-us for a few hours each taking about half a gig of memory.
13:23:53 <elliott> 03:30:21: <oerjan> kallisti: change of power balance, duh
13:24:01 <elliott> thank you, i wasn't sure if everyone else was as dumb as kallisti
13:24:23 -!- nooga has quit (Ping timeout: 252 seconds).
13:26:22 -!- Slereah has quit (Ping timeout: 252 seconds).
13:26:36 <elliott> 03:53:39: <zzo38> Is this the proper way to derivative of list type? newtype List' x = List' (Either (x, List' x) [x]);
13:27:20 <elliott> i dunno what the algorithms look like for that
13:27:35 -!- nooga has joined.
13:27:36 <elliott> but you can probably mangle it into something more traditional algebraically....
13:27:51 <kallisti> elliott: why would anyone seize control of power when there is /infinite amounts of energy/.. you can share it endlessly and still be infinitely prosperous.
13:28:01 <elliott> 04:15:29: <kallisti> eh I don't like LXDE
13:28:01 <elliott> 04:15:44: <Sgeo> What about .. XFCE?
13:28:23 <kallisti> I believe the reasons I don't like it are the same reasons you don't.
13:28:44 <kallisti> limitations with the interface.
13:29:40 -!- Slereah_ has joined.
13:30:10 <kallisti> and I've never used LXDE but what I mean by "I don't like LXDE" is "I don't want to use LXDE on my primary computer"
13:30:52 <kallisti> because there's a good chance I won't like it.
13:31:47 -!- nooga has quit (Ping timeout: 244 seconds).
13:32:01 <elliott> lxde sucks. anyway just pacman -S cabal-install && cabal install xmonad
13:33:07 <kallisti> I'm still waiting for a day where I don't need my computer in a stable configuration and where I have lots of free time that I can devote to not having an established system.
13:33:24 <elliott> then why are you installing arch
13:33:42 <kallisti> I'm going to play around with it on my external and see if I like it.
13:33:48 <elliott> anyway /me reinstalled and had xmonad setup basically usably within about 5 hours
13:34:10 <kallisti> that's a long time for someone who knows what they're doing.
13:36:30 <kallisti> also I'm not entirely convined I want xmonad.
13:37:12 -!- sebbu2 has joined.
13:37:18 -!- sebbu2 has quit (Changing host).
13:37:18 -!- sebbu2 has joined.
13:37:54 -!- sebbu has quit (Ping timeout: 240 seconds).
13:40:56 <elliott> <kallisti> that's a long time for someone who knows what they're doing.
13:41:08 <elliott> Most of that was floundering about trying to solve a problem that was solved by a reboot.
13:41:26 <elliott> Anyway, if you don't want xmonad, don't want GNOME 3, don't want KDE, don't want Xfce, don't want LXDE, what the fuck *do* you want?
13:41:35 <kallisti> ah. reverse Windows mind virus.
13:41:55 <kallisti> well I haven't tried Gnome 3 classic, but I think that's what I want?
13:42:14 <kallisti> I guess I just got attached to Gnome 2.
13:43:22 <elliott> kallisti: GNOME 3 fallback mode is fine if you want something like GNOME 2 but worse... you know, such as Xfce.
13:43:42 <elliott> The difference being, of course, that the Xfce developers actually /care/ about their version of it, whereas GNOME's is a throwaway.
13:49:18 <kallisti> the touchpad is warm. the fan vent burns a little bit.
13:50:36 -!- nooga has joined.
13:56:42 -!- Phantom__Hoover has joined.
13:57:19 <fizzie> Next: flames are shooting out of the fan vent, the keyboard keys have melted off, ...
13:57:46 <fizzie> (The technical term for that is "Extreme Computing", also called XC.)
13:58:53 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds).
13:59:13 -!- nooga has quit (Ping timeout: 268 seconds).
13:59:45 -!- derdon has joined.
14:14:44 <kallisti> yes, all of these things are happening
14:30:12 <elliott> fizzie: The web corpus is larger than the googlebooks corpus, right?
14:30:43 <fizzie> I think it was, though not very many orders of magnitude.
14:31:49 <elliott> fizzie: 2x as big? 10x? 1000x? 4 is "not very many" :P
14:32:40 <elliott> I'm trying to decide whether to store backwards RCT data in the weird non-reversed form or not; on the one hand, it'll inflate the file by less than the 2x it would doing it the "obvious" way; on the other hand, so inconsistent! and slower to go that way.
14:32:59 <elliott> And I don't really want to have to buy a 2 terabyte external disk; do they even *exist*?
14:33:11 <elliott> Admittedly my representation will be rather more compact than PostgreSQL.
14:33:17 <elliott> So if the web corpus is ~1 terabytes there...
14:35:15 <fizzie> http://commondatastorage.googleapis.com/books/ngrams/books/googlebooks-eng-all-totalcounts-20090715.txt first field (number of unigrams read) sums up to 360717742667, that is 360 million unigrams. LDC's catalog entry says the total number of tokens for the "Web 1T" is 1,306,807,412,486. So it's about 3.6 times larger in terms of total numbers of words read in to make it.
14:35:30 <fizzie> In terms of unique tokens, the difference might be... different.
14:36:18 <elliott> fizzie: Well, "size of resulting RCT" is mostly what I care about.
14:36:33 <elliott> So "number of 5-grams" is presumably the best approximation for comparison.
14:36:51 <elliott> I guess I'll build it the big-but-fast way and measure(tm0.
14:37:21 <fizzie> Sadly, the googlebooks dataset doesn't give out a count of 5-grams.
14:37:56 <fizzie> And you can't just sum up the number of lines in those 800 cvs files, since it's got all those per-year rows.
14:38:18 <fizzie> (Plus I don't have those 800 files.)
14:43:32 -!- Ngevd has joined.
14:44:58 <fungot> Ngevd: mr president, this report takes on a real and efficient internal market required that those rules already apply to average emissions from some refineries. part two of 18 and to reduce the length of the terms of the treaty, but allow me to refer to this post as ' chair' of the budget where we think it would be good to start this process.
14:45:04 <fungot> Available: agora alice c64 ct darwin discworld europarl* ff7 fisher fungot homestuck ic irc iwcs jargon lovecraft nethack pa qwantz sms speeches ss wp youtube
14:51:17 <kallisti> 09:32 < elliott> And I don't really want to have to buy a 2 terabyte external disk; do they even *exist*?
14:51:49 <elliott> kallisti: Shut up, I remember 2 terabyte /internal/ disks being newfangled only a few years ago.
14:52:16 <kallisti> wow, what an old codger. get with the times, bro.
14:53:15 <kallisti> 09:24 < rottenrec> anyone here do penetration testing, copywriting, or have extensive online marketing experience ?
14:53:26 <kallisti> I should be like "what needs penetrating
15:03:58 -!- MSleep has changed nick to MDude.
15:17:18 -!- Phantom__Hoover has quit (Quit: Leaving).
15:32:46 -!- incomprehensibly has joined.
15:56:34 <Gregor> elliott, kallisti: I have a 3TB internal disk :)
15:58:28 <elliott> Gregor: Enjoy bad cost:space ratio
15:58:49 <elliott> Also reduced reliability (at least ISTR hearing that the 2 terabyte disks were pretty unreliable back when they came out)
16:29:48 <Vorpal> elliott, it it cost:space efficient if you count the physical space it fills in your computer :P
16:30:22 <Vorpal> given that 2 * 1.5 TB would fill twice as much space
16:46:17 <fizzie> Gregor: But are you, in fact, paying for four gigabytes of prgmr?
16:59:18 <elliott> fizzie is master of all wats ;_;
17:21:25 -!- oerjan has joined.
17:22:40 <oerjan> <fizzie> Aw, no Norwegian? oerjan's going to be so disappointed. <-- uff da.
17:29:50 <oerjan> > let bjoin ll = case group $ map length ll of { _:_:_ -> error "Nonrectangular list"; _ -> concat $ transpose ll }; x = [[1,2],[3,4],[5,6]]; y = [[7,8],[9,10],[11,12]]; z = [[13],[14],[15],[16],[17],[18]] in [pl | pl <- permutations [x,y,z], bjoin (map bjoin pl) == bjoin (map (bjoin . map bjoin) [[x,y],[z]]]
17:29:51 <lambdabot> <no location info>: parse error on input `]'
17:30:29 <oerjan> > let bjoin ll = case group $ map length ll of { _:_:_ -> error "Nonrectangular list"; _ -> concat $ transpose ll }; x = [[1,2],[3,4],[5,6]]; y = [[7,8],[9,10],[11,12]]; z = [[13],[14],[15],[16],[17],[18]] in [pl | pl <- permutations [x,y,z], bjoin (map bjoin pl) == bjoin (map (bjoin . map bjoin) [[x,y],[z]]) ]
17:31:48 <oerjan> > let bjoin ll = case group $ map length ll of { _:_:_ -> error $ "Nonrectangular list " ++ show ll; _ -> concat $ transpose ll }; x = [[1,2],[3,4],[5,6]]; y = [[7,8],[9,10],[11,12]]; z = [[13],[14],[15],[16],[17],[18]] in [pl | pl <- permutations [x,y,z], bjoin (map bjoin pl) == bjoin (map (bjoin . map bjoin) [[x,y],[z]]) ]
17:31:50 <lambdabot> *Exception: Nonrectangular list [[1,7,3,9,5,11,2,8,4,10,6,12],[13,14,15,16,...
17:32:43 <oerjan> > let bjoin ll = case group $ map length ll of { _:_:_ -> error $ "Nonrectangular list " ++ show ll; _ -> concat $ transpose ll }; x = [[1,2],[3,4],[5,6]]; y = [[7,8],[9,10],[11,12]]; z = [[13],[14],[15],[16],[17],[18]] in [pl | pl <- permutations [x,y,z], bjoin (map (bjoin . map bjoin) pl) == bjoin (map (bjoin . map bjoin) [[x,y],[z]]) ]
17:32:44 <lambdabot> arising from a use of `e_1123456789101...
17:34:07 <Gregor> <fizzie> Gregor: But are you, in fact, paying for four gigabytes of prgmr? // 25GB
17:34:23 <Gregor> And I'm paying for the server, not the HD, although I keep running out.
17:46:38 <elliott> {-# LANGUAGE TypeOperators, Arrows, TypeFamilies, FlexibleContexts, GADTs, RankNTypes #-}
17:50:41 -!- PiRSquaredAway has changed nick to PiRSquared17.
18:05:33 -!- Madoka-Kaname has quit (Ping timeout: 240 seconds).
18:09:36 -!- azaq23 has joined.
18:12:03 <fizzie> <fizzie> HackEgo's on a prgmr VPS, isn't it? Those aren't exactly well-known for their computational power, at least the low-memory ones. (CPU scheduling weights equal RAM amounts.)
18:12:04 <fizzie> <fizzie> Though who knows, maybe Gregor's paying for four gigabytes or something.
18:18:45 <elliott> fizzie: They're not that bad at computational power...
18:19:04 <fizzie> Not *bad*, but not good either; I've seen benchmarks.
18:19:05 <elliott> fizzie: They're a bit slower than Linode when congestion is low, and a hell of a lot more reliable under congestion.
18:19:13 <elliott> I am basing this on an Actual Benchmark(tm) I saw once.
18:19:27 <fizzie> I've seen some benchmarks by disinterested third parties.
18:19:30 <elliott> fizzie: http://journal.uggedal.com/vps-performance-comparison/
18:19:48 <fizzie> That looks very familiar.
18:20:32 <fizzie> Anyway, first graph: Unixbench single process score, it's... somewhere a bit over 200, vs. Linode's 723.
18:20:35 * elliott is summarising the results without re-reading them, though, so the passing of time may have made his reporting shoddy.
18:21:08 <elliott> fizzie: Here's one that talks about peak-vs-whatever performance: http://journal.uggedal.com/vps-comparison-between-slicehost-and-prgmr/
18:21:11 <elliott> Just slicehost vs. prgmr, though.
18:21:19 <elliott> And slicehost are slow as shit.
18:21:28 <fizzie> Yeah, and also very variable.
18:21:44 <elliott> Hmm, that actually shows prgmr slower than slicehost during congestion :)
18:21:51 <elliott> I say: Too many variables.
18:22:25 <elliott> fizzie: Anyway, prgmr also happen to be very generous with RAM at the price-points they're at, so it's a bit of an unfair comparison.
18:23:02 <fizzie> Anyway, since prgmr CPU scheduler is weighted by ram size, if you have 256M out of a 32G server, that's one 128th of a (admittedly several-core) server if you happen to get neighbours who mine bitcoins all day.
18:23:12 <elliott> Linode 512 megs RAM, 20 gigs storage, 200 gigs traffic, $19.95/mo; prgmr 1024 megs RAM, 24 gigs storage, 160 gigs traffic, $20/mo; prgmr would have to be pretty darn slow not to come out on top there.
18:23:21 <fizzie> They're certainly very efficient if you start counting $s, that's very sure.
18:23:22 <elliott> (Or maybe you have a really easy-to-serve but massive-traffic website and those 40 gigs are everything. :p)
18:23:52 <elliott> fizzie: They don't pack their servers that much
18:23:56 <elliott> Their blog has server specs, IIRC
18:24:08 <elliott> I don't recall hearing anything about 32 gig monsters :)
18:24:35 <elliott> http://blog.prgmr.com/xenophilia/2011/05/i-am-replacing-table-tonight.html ;; this talks about RAM sizes.
18:24:51 <elliott> So more like 16 gigs than 32.
18:25:02 <elliott> And >4 cores, at least that machine is.
18:25:40 <elliott> fizzie: Also I'm not sure how acceptable mining bitcoins 24/7 would be:
18:25:41 <elliott> 9. To knowingly engage in any activities designed to harass, or that will cause a denial-of-service (e.g., synchronized number sequence attacks) to any other user whether on the prgmr.com network or on another provider's network is prohibited.
18:25:41 <elliott> 10. Using prgmr.com's Services to interfere with the use of the prgmr.com network by other customers or authorized users is prohibited.
18:25:44 <elliott> but of course these things are vague as always.
18:28:08 <elliott> fizzie: (Also a VPS sounds really suboptimal for mining bitcoins, since they don't usually have beefy GPUs. :p)
18:29:52 <elliott> 09:43:45: <fizzie> I just picked whatever elliott's "mchost" had for the low-level.
18:29:55 <elliott> fizzie: It's the cereal package.
18:30:48 <fizzie> Anyhoo, my 256M virtubox is on an Opteron 6128, apparently, so 8 cores, but I don't suppose a Xen domU can really ask the dom0 about how much physical memory the box in total has.
18:31:03 <fizzie> load average: 0.00, 0.00, 0.00 - I'm also a very polite neighbour for someone.
18:33:14 <elliott> fizzie: Who's that with, prgmr?
18:33:27 <elliott> I would check pyralspite's load, but that would require emailing prgmr saying "I lost my ssh key /again/"
18:33:27 <fizzie> Yes, the VPS provider of champions.
18:33:31 <elliott> and I think they'd start to get suspicious.
18:34:25 <fizzie> I had sort-of narrowed it down to prgmr and buyvm, and, well, http://www.doesbuyvmhavestock.com/
18:34:33 <fizzie> (The answer is always "no".)
18:34:39 <elliott> 10:45:31: <kallisti> yes, because when that happens it means you matched the length from the histogram while also landing on a space to ensure a smooth word ending.
18:34:42 <fizzie> (Also they seemed a bit weird.)
18:34:46 <elliott> kallisti: I'm glad you're finally starting to see the genius of my scheme.
18:35:08 <elliott> fizzie: Those people look a bit "fly-by-wire", to steal Gregor's terminology.
18:35:31 <elliott> Why did you consider these people?
18:35:57 <elliott> Yes, but they're still OpenVZ people. :p
18:36:03 <elliott> THE MARK CANNOT BE ERASED.
18:36:20 <elliott> Also they support Windows.
18:36:42 <fizzie> Apparently (in the words of someone else) they have a bit of a cult following.
18:36:49 <elliott> fizzie: I was expecting that doesbuyvmhavestock.com to be one of those single-purpose websites with a big "NO" because, um, they're a publicly traded company and people never sell their stocks or something?
18:39:18 <fizzie> The "is it friday?" infoscreen in the lobby of our CS building had been changed into an "is it christmas?" infoscreen. Seasonal.
18:47:07 <elliott> "buyvm.net borders on a cult (in a good way). They only release stock when they feel they can adequately support it, and when they announce stock is coming, people watch countdown pages and hang out on their IRC channel, salivating. Once stock is released, it’s often gone within an hour.
18:47:07 <elliott> The reason for this Apple-store-like behavior is that they are one of the best budget providers. Good plans, sterling reputation, and they participate on WHT. You won’t find the smoking performance of a 6sync or linode here, but you will find solid nodes that don’t bounce and good service (for a budget provider)."
18:47:15 <elliott> fizzie: These people wack, yo.
18:47:44 -!- Ngevd has quit (Quit: Goodbye).
18:57:16 <fizzie> That's probably where I got the "cult" from.
19:20:40 <elliott> oerjan: btw i was thinking about how you said the reflection package looked kinda inefficient to you
19:21:19 <elliott> oerjan: I think it's probably not that bad, at least if what I'm imagining is its implementation strategy, because I've thought of a simplified version that seems obviously fast to me :)
19:22:28 <elliott> (a) use data Pointer x0 x1 x2 ... x63, data O, data I to represent pointers; (b) use runtime hackery to get a pointer directly to the thunk, rather than having to allocate storage for it (although ForeignPtrs don't have that much overhead to my understanding so it shouldn't matter much)
19:22:45 <elliott> obviously that fixes you to one pointer bit-width, but while we're being this unportable...
19:23:07 <Gregor> fizzie: Anyway, HackEgo is slow because HackEgo is slow.
19:23:28 <elliott> Gregor: Transactional HackEgo wouldn't be >:) >:) >:)
19:23:41 <elliott> fizzie: Hey, how do I insert "xN " for N in [0,64) in emacs, thx
19:23:49 <elliott> Gregor: YOU WANTED ME TO TEST IT MYSELF
19:24:17 <oerjan> elliott: you still have to actually construct a class dictionary encoding a bit pattern for your pointer
19:24:47 <elliott> oerjan: hmm... let me try and implement this, 'cuz maybe i'm missing something :P
19:25:25 <Gregor> fizzie: Anyway, I pay $20/mo for the 1GB plan. Neither an unbelievable nor terrible deal.
19:26:02 <elliott> http://xah-forum.blogspot.com/2009/10/emacs-inserting-numbers-into-column-of.html NO XAH
19:26:04 <oerjan> elliott: oh and you need the pointer to be stable, obviously, or intervening gc can crash your implementation...
19:26:07 <elliott> USING YOUR FUNCTION TO ACCOMPLISH THIS SIMPLE TASK
19:26:34 <elliott> oerjan: well yes. although i can think of fun ways around that :)
19:29:18 -!- NihilistDandy has joined.
19:32:25 <elliott> oerjan: hm it occurs to me that there is no standard way to get the integer value out of a pointer
19:38:22 -!- DCliche has quit (Quit: You are now graced with my absence.).
19:39:10 -!- Klisz has joined.
19:42:17 <zzo38> Do you think wii remote would be good input device for computer pinball game? That way, you can push the table at different strength and angle
19:43:05 <NihilistDandy> It seems like it would be really easy to cause a tilt
19:44:23 <zzo38> NihilistDandy: Yes, it probably would be easy to cause a tilt, especially if tilting the controller would do that. You could correct sensitivity in software, possibly even add physical mass to make it harder to push if necessary, and you could do other things
19:47:23 -!- PiRSquared17 has quit (Changing host).
19:47:23 -!- PiRSquared17 has joined.
19:48:10 -!- PiRSquared17 has quit (Changing host).
19:48:10 -!- PiRSquared17 has joined.
19:53:55 -!- pikhq has joined.
19:53:57 -!- pikhq_ has quit (Ping timeout: 252 seconds).
19:56:08 <elliott> oerjan: gah this type hackery is tricky
20:10:44 -!- GreaseMonkey has joined.
20:11:54 -!- oerjan has quit (Quit: Good night).
20:39:00 -!- pikhq_ has joined.
20:39:14 -!- pikhq has quit (Ping timeout: 252 seconds).
20:40:57 <zzo38> I read something about "monadish" which seems like a monad combined with a category somehow. return :: m a a x; join :: m a b (m b c x) -> m a c x; (>>=) :: m a b x -> (x -> m b c y) -> m a c y;
20:41:40 <zzo38> fmap would be the same as the ordinary fmap, so it is still an ordinary functor, I think
20:43:02 <zzo38> And then, can you make comonadish? extract :: w a a x -> x; duplicate :: w a c x -> w a b (w b c x);
20:43:42 <zzo38> Does that seem correct? I don't know.
20:44:33 -!- Sgeo has quit (Ping timeout: 240 seconds).
20:45:59 <copumpkin> zzo38: but yeah, I think your thing would be an indexed comonad
20:46:14 <zzo38> copumpkin: O, OK, then.
20:47:22 <zzo38> How do indexed monads work?
20:47:36 <zzo38> What is there example?
20:52:17 -!- sebbu2 has changed nick to sebbu.
21:17:35 <copumpkin> a state monad whose state type can change
21:17:43 <copumpkin> or something that tracks whether a file descriptor is open or not
21:22:25 -!- incomprehensibly has quit (Quit: Leaving.).
21:22:48 <elliott> zzo38: http://personal.cis.strath.ac.uk/~conor/Kleisli.pdf
21:23:03 <elliott> if it's the one i'm thinking of :P
21:41:05 -!- pikhq has joined.
21:43:58 -!- pikhq_ has quit (Ping timeout: 252 seconds).
22:01:24 -!- Sgeo has joined.
22:10:47 -!- monqy has joined.
22:10:47 <elliott> kallisti: My unending superiority to you continues
22:28:09 -!- pikhq_ has joined.
22:28:57 <elliott> kallisti: I'm currently 2471 units of betterer than you.
22:29:02 -!- pikhq has quit (Ping timeout: 248 seconds).
22:34:18 <Gregor> Tell me about y'all's traditional Christmas dinners.
22:36:17 -!- Sgeo has quit (Read error: Connection reset by peer).
22:38:40 <elliott> Gregor: Is this, like, Jewish cultural studies?
22:39:04 <elliott> "YOUR ASSIGNMENT IS TO FIND OUT WTF THOSE WEIRD CHRISTIANS DO ON CHRISTMAS."
22:41:56 <fizzie> Gregor: Our traditional Christmas food (I think it's the third or fourth time now) is tortillas with this ground-beef/bell-pepper/red-onion/assorted-spices/salsa filling. Very seasonal and Finnish.
22:42:32 -!- Sgeo has joined.
22:48:40 * Sgeo ponders writing a password-protected State monad
22:49:05 * Sgeo wtfs at elliott's code
22:49:13 <Sgeo> I assume you wrote code that wrote that?
22:49:31 <elliott> no... well the data Txx and instance ReifyBit Txx yes
22:49:36 <elliott> but the rest is hand-written
22:49:50 <elliott> all the ones that are just lines with numbers
22:49:59 <Sgeo> I can't help but think that this is an area where a Lisp-like would shine
22:50:12 <elliott> oh i could have templatehaskelled it easily
22:50:17 <monqy> liskell (canned laughter)
22:50:28 <elliott> lisp isn't amazing enough to do the things i did /after/ the autogenerated code
22:50:36 <elliott> which is the part you're meant to wtf at dammit you're all so shallow
22:50:57 <monqy> i tried reading it but my eyes glazed over maybe i will try harder next time
22:51:05 <Sgeo> I vaguely know the reflection stuff turns values into types and types into values or something
22:51:19 <Sgeo> So, I'm guessing that this turns arbitrary data into a type?
22:51:27 <elliott> this is my own implementation of the reflection stuff
22:51:31 <elliott> MOAR SPEED!!! theoretically
22:51:54 <elliott> Sgeo: well it stuffs the value you give it into a pointer
22:51:59 <elliott> a pointer is just 8 bytes (on 64-bit machines)
22:52:05 <elliott> T00 to TFF represent a byte
22:52:19 <elliott> (Address a T00 T11 T22 T33 T44 T55 T66 T77)
22:52:27 <elliott> and the rest are the bytes of the pointer
22:52:35 <elliott> then the Reify instance does the rest
22:52:41 <elliott> i.e. turning it back into the bytes
22:52:44 <elliott> coercing them to a pointer
22:56:56 <Gregor> fizzie: Thank you for your legitimate answer that's not what elliott and kallisti answered.
22:57:22 <Gregor> elliott, kallisti: I ask because the traditional meal in the USA is very much the same as the traditional Thanksgiving meal in the USA; that is, turkey. I assume it's not that elsewhere.
22:57:52 <kallisti> I never eat turkey for christmas
22:58:08 <kallisti> in fact I don't even think we do like...a christmas dinner that's any kind of specific thing.
22:58:39 <fizzie> Gregor: Oh, if you wanted the actual traditional Finnish thing, it's the roast ham (with this mustard cover thingie), but quite often in this modern multicultural days it can be turkey too.
22:59:21 <elliott> Gregor: Well, turkey for Christmas is definitely a Thing here, yes.
23:00:23 <elliott> Gregor: I suspect the Americans were unable to come up with a new meal for their new holiday, presumably on account of being fucking idiotic enough to attempt to declare Genocide: The National Holiday.
23:00:28 <elliott> So they just stole Christmas.
23:00:48 <kallisti> at least it's not like PHP where your matches are preggo.
23:00:51 <elliott> fizzie: What about a... turkey fajita?
23:01:01 <elliott> Gregor: "Christmas dinner is the primary meal traditionally eaten on Christmas Eve or Christmas Day. Christmas dinner around the world may differ and the traditions present below can reflect the culture of the respective country it is being celebrated in. Turkey is present in a fair number of these meals."
23:01:04 <elliott> Gregor: A fair number, yo.
23:01:16 <Gregor> A fair number in-deeeed.
23:01:18 <elliott> "Christmas dinner in Australia is based on the traditional English version.[1] However due to Christmas falling in the heat of the Southern Hemisphere's summer, meats such as ham, turkey and chicken are sometimes served cold with cranberry sauce, accompanied by side salads or roast vegetables."
23:01:20 <Gregor> However, turkey is an American bird.
23:01:27 <elliott> AUSTRALIA YOU JUST CAN'T HAVE CHRISTMAS OKAY, ACCEPT IT
23:01:45 <elliott> Gregor: That's what they *want* you to think.
23:01:48 <fizzie> Then there's a set of I-think-they're-vaguely-Finnish-in-that-they're-not-exactly-the-same-things-elsewhere set of casserole-style dishes (carrot, rutabaga, I forget the third one), and this beetroot-based totally-all-red salad called "rosolli"; it's got beetroot, carrots, potatoes, apples, pickled cucumber; maybe other stuff.
23:01:48 <elliott> It actually came from Finland.
23:02:01 <fizzie> Actually why on earth am I listing them when http://en.wikipedia.org/wiki/Joulup%C3%B6yt%C3%A4 does it far more concisely?
23:02:03 <Gregor> It's sort of like how all Italian food is actually just derivative American food what with the tomatotrololol.
23:02:31 <elliott> kallisti: If you want to catch up with me better start writing AWESOME ANSWERS like http://stackoverflow.com/questions/8616861/purity-of-functions-generating-bytestring-or-any-object-with-foreignptr-compone/8616941#8616941!!!!!!!!!!!!
23:03:23 -!- iconmaster has joined.
23:03:48 -!- PiRSquared17 has quit (Quit: ChatZilla 0.9.88 [Firefox 8.0.1/20111120135848]).
23:04:04 <elliott> Gregor: "In England, the evolution of the main course into turkey did not take place for years, or even centuries. At first, in medieval England, the main course was either a peacock or a boar, the boar usually the mainstay. The turkey appeared on Christmas tables in England in the 16th century,[6] and popular history tells of King Henry VIII being first English monarch to have turkey for Christmas."
23:05:52 <fizzie> "A Christmas ham or Yule ham is a traditional ham dish associated with modern Christmas, Yule and Fennoscandian Jul. The tradition is suggested to have begun among the Germanic peoples as a tribute to Freyr, a god in Germanic Paganism associated with boars, harvest and fertility.[1] It was later popularized by the Catholic Church as a test of truthful conversion from Judaism. Backsliding Marranos would decline to eat the Christmas ham, while authentic c
23:05:52 <fizzie> onverts could enjoy the pig meat with equanimity." <- Crafty Christians.
23:07:26 <Gregor> Should've made boar curry instead of turkey curry.
23:08:28 <Sgeo> elliott, do you think Template Haskell is LamE?
23:08:36 <monqy> sgeo..........................
23:09:47 <Sgeo> :t Template.Haskell.TH.LamE
23:09:58 <Sgeo> :t Language.Haskell.TH.LamE
23:09:59 <lambdabot> [Language.Haskell.TH.Syntax.Pat] -> Language.Haskell.TH.Syntax.Exp -> Language.Haskell.TH.Syntax.Exp
23:12:01 <elliott> fizzie: Did you read my code??? I WORKED HARD ON THIS YOU GUYS
23:13:04 <kallisti> elliott: did you answer that awesome thing I linked you?
23:13:40 <elliott> Hmm, how can I avoid the whole StablePtr business...
23:19:27 <elliott> I HOPE YOU UPVOTED ME ON MERIT AND NOT IDENTITY
23:21:38 <kallisti> it's an opportunity to ramble about the differences between functional and imperative programming and possibly get some rep as a result.
23:21:49 <elliott> NihilistDandy: Oh. Some terrible question that was already answered.
23:22:24 <NihilistDandy> I love SO because it's like c2 without all the TopMind
23:24:01 <fizzie> elliott: Also it's out of the bag now: http://www.open-std.org/jtc1/sc22/wg14/ "News 2011-12-19: New revision of ISO/IEC 9899:2011 C standard (C11) published"
23:24:40 <elliott> NihilistDandy: Ask kallisti for the link :P
23:24:45 <elliott> <lambdabot> kallisti said 8h 19m 25s ago: A FP vs. imperative question. Have fun http://stackoverflow.com/questions/8611211/differences-in-separation-of-static-and-stateful-code-in-different-languages
23:25:33 <fizzie> You can certainly implement a cat in it.
23:26:12 <elliott> NihilistDandy: I love SO because IT'S LIKE CRACK.
23:27:18 <elliott> My incredibly accurate extrapolation tells me that I should have 91,688 reputation in a mere year.
23:28:21 <kallisti> NihilistDandy: it has one. It's called "edit count"
23:29:10 <kallisti> the Wiki tribes take great pride in their individal edit counts, using them as a means to structure their hierarchical society.
23:29:55 <pikhq_> GOD MOTHERFUCKING DAMMIT BUSYBOX
23:30:10 <pikhq_> THERE IS NO REASON FOR "-f" TO BE AN INVALID ARGUMENT FOR POWEROFF.
23:30:25 <pikhq_> I HAVE THE CODE RIGHT HERE. "-f" IS IMPLEMENTED. THERE ARE NO IFDEFS.
23:31:40 <elliott> NihilistDandy: Oh, .stackexchange :P
23:31:45 <elliott> I thought you were just Swedish or something.
23:31:56 <elliott> Maybe StackExchange should buy the .se TLD.
23:32:05 <elliott> pikhq_: You probably have a newer version of the code than you're running.
23:32:26 <elliott> pikhq_: Really though, BusyBox coreutils? Why?
23:32:40 <pikhq_> elliott: I'm actually looking at the tarball I just compiled this out of.
23:33:35 <elliott> I think busybox has some screwy non-ifdef config stuff too.
23:38:24 <Sgeo> @let elliott = error "Attempted to describe elliott"
23:45:14 <elliott> pikhq_: In what... strcmp? :P
23:45:44 <pikhq_> The libc call reboot is int reboot(int cmd), right?
23:46:01 <pikhq_> musl implements that as just syscall(SYS_reboot, cmd);
23:46:15 <elliott> pikhq_: The glibc call, yes.
23:46:25 <elliott> /* For libc4 and libc5 the library call and the system call
23:46:25 <elliott> are identical, and since kernel version 2.1.30 there are
23:46:25 <elliott> symbolic names LINUX_REBOOT_* for the constants and a
23:46:25 <elliott> fourth argument to the call: */
23:46:28 <pikhq_> Problem is, the Linux syscall reboot expects a couple magic values.
23:46:30 <elliott> int reboot(int magic, int magic2, int cmd, void *arg);
23:46:32 <elliott> /* Under glibc some of the constants involved have gotten
23:46:34 <elliott> symbolic names RB_*, and the library call is a 1-argument
23:46:36 <elliott> wrapper around the 3-argument system call: */
23:46:44 <elliott> pikhq_: Depending on the haeder you include.
23:49:52 -!- Madoka-Kaname has joined.
23:50:01 <pikhq_> elliott: The LINUX_REBOOT_MAGIC stuff is just so goddamned stupid.
23:55:23 -!- Patashu has joined.
23:55:49 <elliott> pikhq_: I presume it's to avoid accidentally executing garbage which reboots the system
23:55:58 <elliott> Garbage = random data bytes
23:56:59 <pikhq_> No, it's a motherfucking easteregg.
23:59:09 <pikhq_> MAGIC1 is 0xfee1dead, MAGIC2 is Linus' birth date, MAGIC2{A,B,C} are the birth dates of his kids.
23:59:57 <kallisti> GUYS IF YOU ACCIDENTALLY LEXICALLY SCOPE SOMETHING IT'S NOT GOING TO PACKAGE SCOPE