< 1320451994 829911 :madbr!~madbrain@modemcable205.137-82-70.mc.videotron.ca JOIN :#esoteric < 1320452003 789015 :Phantom__Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 QUIT :Quit: Leaving < 1320452450 636290 :pumpkin!~pumpkin@unaffiliated/pumpkingod QUIT :Quit: Computer has gone to sleep. < 1320453827 60709 :copumpkin!~pumpkin@unaffiliated/pumpkingod JOIN :#esoteric < 1320454194 512584 :sllide!~jari@ip565eb113.direct-adsl.nl QUIT :Read error: Connection reset by peer < 1320454558 869260 :copumpkin!~pumpkin@unaffiliated/pumpkingod NICK :JesusGarcia < 1320454571 562601 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :OK, I got the Haskell program to load the \fontdimen values from a TFM font. < 1320454575 663248 :JesusGarcia!~pumpkin@unaffiliated/pumpkingod NICK :copumpkin < 1320454585 813542 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :Now I just need to add the other stuff too. < 1320454642 519058 :Darth_Cliche!~Darth_Cli@70-59-41-246.hlrn.qwest.net JOIN :#esoteric < 1320455263 892354 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :The "makeFont" function takes thirteen parameters, ten of which are applied using the <*> operator. < 1320455285 900178 :Vorpal!~AnMaster@unaffiliated/anmaster QUIT :Ping timeout: 248 seconds < 1320455379 129302 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :(map fromEnum <$> (mReadData h 12 :: IO [Word16])) >>= \z -> makeFont n m z <$> mReadData h (z !! 1) <*> mReadData h ((z !! 3) + 1 - (z !! 2)) <*> mReadData h (z !! 4) <*> mReadData h (z !! 5) <*> mReadData h (z !! 6) <*> ........ < 1320456424 181031 :SgeoN1!~AndChat@ool-ad034d00.dyn.optonline.net QUIT :Read error: Connection reset by peer < 1320456442 354153 :SgeoN1!~AndChat@ool-ad034d00.dyn.optonline.net JOIN :#esoteric < 1320458407 51823 :CakeProphet!~eris@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake JOIN :#esoteric < 1320458435 288403 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :guard is a very useful command, I have used it with the list monad and with the Maybe monad. < 1320458446 984279 :Darth_Cliche!~Darth_Cli@70-59-41-246.hlrn.qwest.net QUIT :Quit: You are now graced with my absence. < 1320459527 237944 :nooga!~nooga@maverick.aircity.pl PRIVMSG #esoteric :ninuini\ < 1320459817 910288 :quintopia!~quintopia@unaffiliated/quintopia PRIVMSG #esoteric :yes < 1320459822 461813 :quintopia!~quintopia@unaffiliated/quintopia PRIVMSG #esoteric :i agree < 1320459829 38043 :copumpkin!~pumpkin@unaffiliated/pumpkingod QUIT :Ping timeout: 260 seconds < 1320459854 355281 :copumpkin!~pumpkin@unaffiliated/pumpkingod JOIN :#esoteric < 1320460494 768563 :oklopol!~oklopol@dyn58-57.yok.fi PRIVMSG #esoteric :i met a burglar < 1320460521 160294 :oklopol!~oklopol@dyn58-57.yok.fi PRIVMSG #esoteric :chatted with him for 5 minutes, went home and called the cops. will prolly be stabbed soon enough :D < 1320460527 833792 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :Now I made the entire part of the Graphics.DVI program for loading font metrics. < 1320460585 862728 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :Because it is a functional programming language, it is entirely different to the other programs for doing so. < 1320460825 144358 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :Inside of a record syntax it has the code: fontDimen = 0 : transEnum (shiftR (head pa) 4) : (rescale fsc <$> tail pa), firstChar = transEnum $ hdr !! 2, leftBoundChar = guard (last lk >= 0xFF000000) >> makeLigKern ke' (drop (fromEnum $ last lk .&. 0xFFFF) lk), < 1320460953 271869 :nooga!~nooga@maverick.aircity.pl QUIT :Ping timeout: 255 seconds < 1320461615 475705 :Zuu!~zuu@unaffiliated/zuu QUIT :Ping timeout: 244 seconds < 1320462173 624969 :Madoka-Kaname!~moe@inportb/loli/cirno-chan QUIT :Read error: Operation timed out < 1320462551 472184 :Madoka-Kaname!~moe@ppp-70-251-229-235.dsl.rcsntx.swbell.net JOIN :#esoteric < 1320462551 747507 :Madoka-Kaname!~moe@ppp-70-251-229-235.dsl.rcsntx.swbell.net QUIT :Changing host < 1320462551 800510 :Madoka-Kaname!~moe@inportb/loli/cirno-chan JOIN :#esoteric < 1320462591 175152 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :However it doesn't check that the font file is valid, so it is possible to get runtime errors if something tries to access index in a table that is larger than the number of items in that table. < 1320464762 725560 :tiffany!~kawaii@fl-76-3-17-148.dhcp.embarqhsd.net QUIT :Quit: Leaving < 1320465102 130883 :variable!root@freebsd/developer/variable QUIT :Excess Flood < 1320465217 869606 :variable!root@freebsd/developer/variable JOIN :#esoteric < 1320465555 380251 :variable!root@freebsd/developer/variable QUIT :Excess Flood < 1320465698 80397 :variable!root@freebsd/developer/variable JOIN :#esoteric < 1320466460 238238 :Gregor!foobar@codu.org PRIVMSG #esoteric :So I finally implemented WebSplat Zalgofication. < 1320466463 339394 :Gregor!foobar@codu.org PRIVMSG #esoteric :And it's SO SLOW :( < 1320467066 21108 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :What does Zalgofication mean? < 1320467326 666256 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :This is instructions for a chess variant I invented a while ago, and I wrote it on paper. I will describe: Except for the king, the pieces are flat, and the owner is known by the direction they are facing, rathan than by colors. The king is tall piece like a tombstone. Pawns move one space directly forward (even when capturing), and cannot promote. There are six other kind of pieces. < 1320467338 633952 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :1 (Cannon): Moves like Chinese cannon. < 1320467344 723707 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :2 (Rider): It is (2,0) rider. < 1320467393 275650 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :3 (Abstain): As rook, can capture your own as well as opponent's pieces. It destroys itself (going to opponent's bench) whenever it capture something. Toggle abstain mark of the type and owner of the captured piece. Abstained pieces cannot move. < 1320467452 994086 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :4 (Mingle): Cannot capture. Move orghogonally an even number of spaces, and can jump over other pieces. Contents of squares it jumps over are interleaved (e.g. ABCD -> ACBD, ABCDEFGH -> AEBFCGDH). < 1320467482 355559 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :5 (Ignore): Move like a rook but cannot capture. Toggle ignore mark of square moved from. Ignored squares cannot be moved into except by number fives. < 1320467534 633162 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :6 (Select): No displacement capture. Move one orghogonally then over any number of squares rookwise. Pieces on squares with a piece of same type on adjacent square (opposite direction of first move) are captured by you (you choose order). Other ones fall towards first moved space stops on square just before reaching it. < 1320468236 263152 :oerjan!oerjan@sprocket.nvg.ntnu.no JOIN :#esoteric < 1320469435 260157 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :I have read something about a probability monad. It seem to me, it would be, return makes one value with 1 probability, fmap maps the values, join multiplies the inner probabilities by the outer probabilities, (>>) just results in the value on the right, (>>=) applies a probabilistic function to values. Actually, I think the probability values could be any monoid; it doesn't have to be a number. < 1320469504 208405 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :Although if it is a number, and the contained value is of a type having equality, then you can simplify by adding the probabilities together, by having a separate function that does that. < 1320470611 354139 :MDude!~fyrc@c-174-55-44-190.hsd1.pa.comcast.net NICK :MSleep < 1320471594 427459 :GreaseMonkey!~gm@unaffiliated/greasemonkey QUIT :Quit: The Other Game < 1320474113 75253 :quintopia!~quintopia@unaffiliated/quintopia PRIVMSG #esoteric :Gregor: iei < 1320474134 830158 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :eieio < 1320474134 947116 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :oerjan: You have 2 new messages. '/msg lambdabot @messages' to read them. < 1320474237 694336 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :that elliott, so calm and patient < 1320474341 56173 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :> ala Sum foldMap [1,2,3,4] < 1320474342 532217 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Not in scope: `foldMap' < 1320474349 841143 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :@_@ < 1320474367 895392 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :> ala Sum Data.Foldable.foldMap [1,2,3,4] < 1320474368 789907 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : 10 < 1320474384 209467 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :fancy < 1320474412 26139 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :@tell elliott fancy < 1320474412 260563 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Consider it noted. < 1320474495 212801 :quintopia!~quintopia@unaffiliated/quintopia PRIVMSG #esoteric :45*60*25 < 1320474547 80323 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :> ala Product Data.Foldable.foldMap [45,60,25] < 1320474547 929454 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : 67500 < 1320474596 177142 :quintopia!~quintopia@unaffiliated/quintopia PRIVMSG #esoteric :yeah i did it with bc :P < 1320475054 350372 :CakeProphet!~eris@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake QUIT :Ping timeout: 260 seconds < 1320475291 624833 :hagb4rd!~perdito@koln-4db4e155.pool.mediaWays.net QUIT :Ping timeout: 240 seconds < 1320476354 803061 :Madoka-Kaname!~moe@inportb/loli/cirno-chan PRIVMSG #esoteric ::t ala < 1320476355 636108 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :forall o n b n' o'. (Newtype n o, Newtype n' o') => (o -> n) -> ((o -> n) -> b -> n') -> b -> o' < 1320476371 630228 :Madoka-Kaname!~moe@inportb/loli/cirno-chan PRIVMSG #esoteric :@src ala < 1320476371 747334 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Source not found. There are some things that I just don't know. < 1320476376 299873 :Madoka-Kaname!~moe@inportb/loli/cirno-chan PRIVMSG #esoteric :@hoogle ala < 1320476377 202028 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Data.List intercalate :: [a] -> [[a]] -> [a] < 1320476377 435883 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Graphics.UI.GLUT.Callbacks.Window DialAndButtonBoxButton :: ButtonIndex -> KeyState -> DialAndButtonBoxInput < 1320476377 488797 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Graphics.UI.GLUT.Callbacks.Window type DialAndButtonBoxCallback = DialAndButtonBoxInput -> IO () < 1320476443 408388 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :I added a few more classes related to monoids: MonoidPlus, Group, MonoidMinus, MonoidNorm. < 1320476531 994131 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :MonoidPlus adds mpempty and mpappend, which should be distributive over mempty and mappend; Group adds minverse. < 1320476559 645633 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :Madoka-Kaname: http://hackage.haskell.org/packages/archive/newtype/latest/doc/html/Control-Newtype.html < 1320476638 475208 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :zzo38: MonoidPlus is called a semiring < 1320476659 234113 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :oerjan: O, I didn't know that. < 1320476714 57411 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :Actually it isn't; the annihilation property does not necessarily hold. < 1320476757 154333 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :oh < 1320476918 724852 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :Now I added a Semiring class, that adds no additional methods but it is only used to tell you which ones are semirings. < 1320477145 957958 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :Actually, there is another property that is not part of the definition of MonoidPlus, which is commutative addition. < 1320477444 3115 :madbr!~madbrain@modemcable205.137-82-70.mc.videotron.ca PRIVMSG #esoteric :argh < 1320477458 441765 :madbr!~madbrain@modemcable205.137-82-70.mc.videotron.ca PRIVMSG #esoteric :unlambda/ski calculus is so unforgiving < 1320477602 472010 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :!unlambda ``````````````````````.I.s. .e.g.o.b.o.t. .w.o.r.k.i.n.g. .n.o.w.?i < 1320477624 768451 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :!help don't bet on it < 1320477625 267648 :EgoBot!foobar@codu.org PRIVMSG #esoteric :​Sorry, I have no help for don_t_bet_on_it! < 1320477640 488051 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :oh hm < 1320477686 989001 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :@unlambda ```````````.T.h.i.s. .m.i.g.h.t..i < 1320477687 380421 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : This might. < 1320478499 188669 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net QUIT :Quit: hello < 1320478566 945908 :CakeProphet!~eris@h55.59.18.98.dynamic.ip.windstream.net JOIN :#esoteric < 1320478571 889197 :CakeProphet!~eris@h55.59.18.98.dynamic.ip.windstream.net QUIT :Changing host < 1320478571 941434 :CakeProphet!~eris@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake JOIN :#esoteric < 1320478832 284176 :CakeProphet!~eris@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :this channel is a waste. < 1320479065 422108 :quintopia!~quintopia@unaffiliated/quintopia PRIVMSG #esoteric :it's better than that other one < 1320479194 384387 :CakeProphet!~eris@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :no. < 1320479211 15933 :quintopia!~quintopia@unaffiliated/quintopia PRIVMSG #esoteric :how do you know < 1320479211 539130 :CakeProphet!~eris@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :this is a game. < 1320479260 393543 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :What kind of game? Chess game or card game? < 1320479280 310538 :CakeProphet!~eris@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :a game of masturbation. < 1320479317 685559 :quintopia!~quintopia@unaffiliated/quintopia PRIVMSG #esoteric :zzo38: a board game that isnt chess < 1320479346 1135 :CakeProphet!~eris@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :@tell elliott HAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHA < 1320479346 469243 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Consider it noted. < 1320480991 902655 :Ngevd!~Taneb@host-2-99-82-44.as13285.net JOIN :#esoteric < 1320481194 738149 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :Hello < 1320481602 169554 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :Now I added the instance Num t => Ring (Product t); < 1320482391 120869 :Jafet!~Jafet@unaffiliated/jafet JOIN :#esoteric < 1320482443 697567 :sebbu!~sebbu@unaffiliated/sebbu QUIT :Ping timeout: 240 seconds < 1320482501 716627 :sebbu!~sebbu@ADijon-152-1-33-211.w83-194.abo.wanadoo.fr JOIN :#esoteric < 1320482501 947796 :sebbu!~sebbu@ADijon-152-1-33-211.w83-194.abo.wanadoo.fr QUIT :Changing host < 1320482502 422 :sebbu!~sebbu@unaffiliated/sebbu JOIN :#esoteric < 1320483207 766443 :oerjan!oerjan@sprocket.nvg.ntnu.no QUIT :Quit: leaving < 1320484737 771603 :hagb4rd!~perdito@koln-d932d478.pool.mediaWays.net JOIN :#esoteric < 1320484748 304551 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 JOIN :#esoteric < 1320485519 526194 :oklopol!~oklopol@dyn58-57.yok.fi QUIT :Ping timeout: 260 seconds < 1320485580 881864 :Zuu!~zuu@unaffiliated/zuu JOIN :#esoteric < 1320486158 726088 :Ngevd!~Taneb@host-2-99-82-44.as13285.net QUIT :Ping timeout: 252 seconds < 1320486716 684150 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com QUIT :Remote host closed the connection < 1320487902 721496 :Ngevd!~Taneb@host-2-99-82-44.as13285.net JOIN :#esoteric < 1320488054 359523 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 QUIT :Ping timeout: 248 seconds < 1320488699 918867 :SgeoN1!~AndChat@ool-ad034d00.dyn.optonline.net QUIT :Quit: Bye < 1320488713 813469 :nooga!~nooga@maverick.aircity.pl JOIN :#esoteric < 1320488786 884146 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 JOIN :#esoteric < 1320488941 743863 :madbr!~madbrain@modemcable205.137-82-70.mc.videotron.ca PRIVMSG #esoteric :``s`k``s`k``s`k``s`k``s`k``s`k``si`kksks`sikk < 1320488944 169367 :madbr!~madbrain@modemcable205.137-82-70.mc.videotron.ca PRIVMSG #esoteric :damnit < 1320488948 621487 :HackEgo!foobar@codu.org PRIVMSG #esoteric :​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: `s`k``s`k``s`k``s`k``s`k``s`k``si`kksks`sikk: not found < 1320488959 779318 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :madbr? < 1320488974 365668 :madbr!~madbrain@modemcable205.137-82-70.mc.videotron.ca PRIVMSG #esoteric :function that makes a pair in unlambda I think < 1320489007 345432 :madbr!~madbrain@modemcable205.137-82-70.mc.videotron.ca PRIVMSG #esoteric :took a couple hours to figure out (without cheating and looking up in the docs) < 1320489062 283029 :madbr!~madbrain@modemcable205.137-82-70.mc.videotron.ca PRIVMSG #esoteric :obviously that function is probably crucial for any data type aside from the bit < 1320489081 767049 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :Or the natural number < 1320489113 278331 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Pair as in standard LC pair? < 1320489130 254902 :madbr!~madbrain@modemcable205.137-82-70.mc.videotron.ca PRIVMSG #esoteric :dunno what standard LC part means < 1320489152 205022 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :http://en.wikipedia.org/wiki/Lambda_calculus#Pairs < 1320489160 207177 :madbr!~madbrain@modemcable205.137-82-70.mc.videotron.ca PRIVMSG #esoteric :when it gets 3 arguments, returns the first one if true, second one if false < 1320489236 193883 :madbr!~madbrain@modemcable205.137-82-70.mc.videotron.ca PRIVMSG #esoteric :ngevd: I guess you can build numbers from church numerals or something but it's probably faster to do bit arrays or trees < 1320489253 327432 :madbr!~madbrain@modemcable205.137-82-70.mc.videotron.ca PRIVMSG #esoteric :for larger numbers < 1320489268 125297 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :I really wouldn't know < 1320489317 841654 :madbr!~madbrain@modemcable205.137-82-70.mc.videotron.ca PRIVMSG #esoteric :but yeah basically unlambda is incredibly laborious to write :o < 1320489387 547453 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :madbr, the standard pair is \x y f -> f x y. < 1320489414 302254 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :S(S(KS)(S(KK)(S(KS)(S(K(SI))K))))(KK) in definitely not unlambda notation < 1320489431 731498 :madbr!~madbrain@modemcable205.137-82-70.mc.videotron.ca PRIVMSG #esoteric :similar but a bit different I guess < 1320489468 43066 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :How does yours work? < 1320489475 43533 :madbr!~madbrain@modemcable205.137-82-70.mc.videotron.ca PRIVMSG #esoteric :f is different < 1320489502 945821 :madbr!~madbrain@modemcable205.137-82-70.mc.videotron.ca PRIVMSG #esoteric :f is either i for true (first member), or `ki for false (second member) < 1320489517 650251 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :i won't work < 1320489522 299034 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :You want k for true < 1320489522 352660 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :True... isn't i. < 1320489527 765756 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :What Ngevd said. < 1320489540 814218 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :i would apply the two arguments together, I think < 1320489549 531011 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Yep. < 1320489549 643674 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :Unless unlambda is weirder than I thought < 1320489602 972271 :madbr!~madbrain@modemcable205.137-82-70.mc.videotron.ca PRIVMSG #esoteric :guess you could use k for true and `ki for false, then you would have a skighly different pair constructor yes < 1320489664 750517 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :I don't see how you can use i for true at all. < 1320489684 596572 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :i can't get rid of information < 1320489702 133743 :madbr!~madbrain@modemcable205.137-82-70.mc.videotron.ca PRIVMSG #esoteric :i = don't replace with i, `ki = replace with i < 1320489710 671716 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Information-hoarding is a terrible condition, Ngevd. < 1320489731 275521 :madbr!~madbrain@modemcable205.137-82-70.mc.videotron.ca PRIVMSG #esoteric :apply on a function that replaces the input with something else < 1320489744 901944 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Ah, right. < 1320489758 328798 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Sound, if convoluted. < 1320489775 836783 :madbr!~madbrain@modemcable205.137-82-70.mc.videotron.ca PRIVMSG #esoteric :is there anything not convoluted in lambda calculus :o < 1320489789 993455 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :No, not at all. < 1320489823 319995 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :By which I mean it's not all that convoluted. < 1320489873 244419 :madbr!~madbrain@modemcable205.137-82-70.mc.videotron.ca PRIVMSG #esoteric :ah < 1320489879 798111 :madbr!~madbrain@modemcable205.137-82-70.mc.videotron.ca PRIVMSG #esoteric :is there anything not convoluted in unlambda then ? :D < 1320489895 28587 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Unlambda is terrible, so I decline to comment. < 1320489927 566203 :madbr!~madbrain@modemcable205.137-82-70.mc.videotron.ca PRIVMSG #esoteric :it's terrible and awesome I guess < 1320489936 772119 :madbr!~madbrain@modemcable205.137-82-70.mc.videotron.ca PRIVMSG #esoteric :though it's just ski calculus really < 1320489996 292878 :madbr!~madbrain@modemcable205.137-82-70.mc.videotron.ca PRIVMSG #esoteric :but yeah a good esoteric language should have mindfuck power, and unlambda definitely qualifies < 1320490006 636618 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :It's not my favourite language < 1320490007 24149 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :By fa < 1320490007 76640 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :r < 1320490009 141825 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :For mindfuck, go for Malbolge < 1320490039 82638 :madbr!~madbrain@modemcable205.137-82-70.mc.videotron.ca PRIVMSG #esoteric :no that's just random shit < 1320490052 893816 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :It's not "random shit" < 1320490061 478966 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :Clearly it's too much of a "mindfuck" for your mind < 1320490074 183082 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :Saying that, it's too much of a mindfuck for my mind < 1320490094 341127 :madbr!~madbrain@modemcable205.137-82-70.mc.videotron.ca PRIVMSG #esoteric :I don't remember the details of malbolge too much < 1320490106 267517 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :http://esolangs.org/wiki/Malbolge < 1320490109 248102 :madbr!~madbrain@modemcable205.137-82-70.mc.videotron.ca PRIVMSG #esoteric :but last time I remember it's just evil and not at all deep < 1320490206 862289 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :A Malbolge program is something I can stand in awe at < 1320490219 214502 :madbr!~madbrain@modemcable205.137-82-70.mc.videotron.ca PRIVMSG #esoteric :I'm not a fan of bitwise languages I guess < 1320490230 137039 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :Good news, Malbolge is tritwise! < 1320490234 137009 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric ::P < 1320490250 996643 :madbr!~madbrain@modemcable205.137-82-70.mc.videotron.ca PRIVMSG #esoteric :but yeah it's just imperative < 1320490263 891050 :madbr!~madbrain@modemcable205.137-82-70.mc.videotron.ca PRIVMSG #esoteric :and not some mindbendingly crazy new paradigm < 1320490305 848529 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :Unlambda's paradigm dates back to at least 1924 < 1320490317 683125 :madbr!~madbrain@modemcable205.137-82-70.mc.videotron.ca PRIVMSG #esoteric :true < 1320490338 280943 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :madbr, Unlambda's paradigm predates conventional imperative programming. < 1320490346 277267 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :Which dates to 1954 < 1320490375 66997 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :If Assembly is counted as a different paradigm < 1320490403 923223 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :Which comes from about the same time < 1320490484 822172 :madbr!~madbrain@modemcable205.137-82-70.mc.videotron.ca PRIVMSG #esoteric :yeah ok < 1320490537 598730 :madbr!~madbrain@modemcable205.137-82-70.mc.videotron.ca PRIVMSG #esoteric :still thinking the point is to come up with crazy paradigms :D < 1320490550 526173 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :Like Piet? < 1320490599 89101 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :Or Befunge? < 1320490605 418497 :madbr!~madbrain@modemcable205.137-82-70.mc.videotron.ca PRIVMSG #esoteric :sorta yeah < 1320490626 547060 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :But not like Unlambda < 1320490652 376649 :madbr!~madbrain@modemcable205.137-82-70.mc.videotron.ca PRIVMSG #esoteric :anyways, sleep < 1320490654 370457 :madbr!~madbrain@modemcable205.137-82-70.mc.videotron.ca QUIT :Quit: Radiateur < 1320490680 563056 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :He seems nice < 1320491042 106576 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :Flobnar seems interesting < 1320491472 802838 :Ngevd!~Taneb@host-2-99-82-44.as13285.net QUIT :Ping timeout: 252 seconds < 1320491577 981170 :Ngevd!~Taneb@host-2-99-82-44.as13285.net JOIN :#esoteric < 1320491979 753401 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :I think a funge on the hyperbolic plane would be interesting < 1320492018 992595 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :Shame I haven't actually figured out how the hyperbolic plane works < 1320492241 960676 :sebbu2!~sebbu@ADijon-152-1-33-211.w83-194.abo.wanadoo.fr JOIN :#esoteric < 1320492242 303564 :sebbu2!~sebbu@ADijon-152-1-33-211.w83-194.abo.wanadoo.fr QUIT :Changing host < 1320492242 356022 :sebbu2!~sebbu@unaffiliated/sebbu JOIN :#esoteric < 1320492451 955629 :sebbu!~sebbu@unaffiliated/sebbu QUIT :Ping timeout: 240 seconds < 1320492927 896655 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com JOIN :#esoteric < 1320493223 415135 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :It seem the MonadPlus instance for Parsec does not follow the laws. < 1320493722 438444 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au QUIT :Quit: MSN: Patashu@hotmail.com , Gmail: Patashu0@gmail.com , AIM: Patashu0 , YIM: patashu2 , Skype: patashu0 . < 1320494055 822919 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net JOIN :#esoteric < 1320494078 810990 :pikhq!~pikhq@174-22-159-47.clsp.qwest.net QUIT :Ping timeout: 258 seconds < 1320495044 54895 :Ngevd!~Taneb@host-2-99-82-44.as13285.net QUIT :Ping timeout: 240 seconds < 1320495844 376064 :Vorpal!~AnMaster@unaffiliated/anmaster JOIN :#esoteric < 1320498046 718709 :variable!root@freebsd/developer/variable QUIT :Excess Flood < 1320498248 38401 :variable!root@freebsd/developer/variable JOIN :#esoteric < 1320498350 168407 :Jafet!~Jafet@unaffiliated/jafet PRIVMSG #esoteric :Funge a klein bottle < 1320499363 907882 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric : Shame I haven't actually figured out how the hyperbolic plane works < 1320499385 156914 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :One way to think of it is that the angles around a point add up to more than 360°. < 1320499412 214215 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :This is wrong, but it's wrong in a way which is right if you don't go into too much depth. < 1320499433 719321 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Oh, right, he left. < 1320500657 69163 :sllide!~jari@ip565eb113.direct-adsl.nl JOIN :#esoteric < 1320500968 146314 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :Jafet, sure, why not < 1320501006 66727 :Ngevd!~Taneb@host-2-99-82-44.as13285.net JOIN :#esoteric < 1320501013 116256 :Jafet!~Jafet@unaffiliated/jafet PRIVMSG #esoteric :Well, the first question is whether you're going to funge in three dimensions or four < 1320501031 554968 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :Hello! < 1320501031 673894 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :ouch < 1320501042 575796 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :I saw what you said, Phantom_Hoover < 1320501046 726995 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :Hmm < 1320501085 661858 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :Jafet, wait, the klein bottle forms a plane that is connected to itself in "weird" ways doesn't it? < 1320501097 581620 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :Oh, Houlton, Maine. < 1320501104 613472 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :Why do you despise Hexham so? < 1320501126 991407 :Jafet!~Jafet@unaffiliated/jafet PRIVMSG #esoteric :http://kleinbottle.com < 1320501241 245089 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Vorpal, ... < 1320501254 791400 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :http://en.wikipedia.org/wiki/Fundamental_polygon < 1320501263 188166 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :I'm going to leave this here. < 1320501297 785719 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Jafet, fun fact, the guy who runs that site also caught Markus Hess. < 1320501343 940193 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :A Klein bottle is a Mooobius strip made even weirder, right? < 1320501375 256545 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :It's a Mobius strip with the other edges joined as well. < 1320501382 691602 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :Thought sp < 1320501388 839816 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :that is what I meant < 1320501414 879628 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :Langton's ant on a Mooobius strip: taking metaphors the wrong way < 1320501493 876535 :fizzie!fis@iris.zem.fi PRIVMSG #esoteric :Langton's cow on a Mooobius strip sounds more likely. < 1320501929 729843 :sebbu2!~sebbu@unaffiliated/sebbu NICK :sebbu < 1320503051 218009 :ais523!~ais523@unaffiliated/ais523 JOIN :#esoteric < 1320503673 263957 :MSleep!~fyrc@c-174-55-44-190.hsd1.pa.comcast.net NICK :MDude < 1320503769 463246 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :so, it turns out that the recent zero-day affecting Windows turned out to be a security bug in the kernel's font parser < 1320503782 376622 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :...! < 1320503794 927620 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :Seems an odd place for a security bug < 1320503820 157212 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :seems like an odd place for a font parser < 1320503862 106394 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :apparently it's historical reasons based on trying to run NT 4 on old hardware, and they never moved it back < 1320503975 382678 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :ais523, heh < 1320504016 457208 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :ais523, I thought NT 3/4 tried to put a lot of stuff in user space? < 1320504036 294220 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :perhaps. but not that < 1320504040 656926 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :right < 1320504237 774054 :fizzie!fis@iris.zem.fi PRIVMSG #esoteric :Didn't NT4 in fact move some stuff back into kernel space for speeds. < 1320504278 21228 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :ah, perhaps < 1320504306 250051 :fizzie!fis@iris.zem.fi PRIVMSG #esoteric :"The graphics device interface handles image management for the monitor and printers. It provides system calls to allow user programs to write on the monitor or printers in a device-independent way. It also contains the window manager and hardware device drivers. In versions of NT prior to NT 4.0, it was in user space but the performance was disappointing, so Microsoft moved it into the kernel to speed it up." < 1320504348 805089 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :heh, so GDI /is/ kernel? I'd always wondered about that < 1320504381 210769 :Ngevd!~Taneb@host-2-99-82-44.as13285.net QUIT :Ping timeout: 256 seconds < 1320504397 160777 :fizzie!fis@iris.zem.fi PRIVMSG #esoteric :Random web-quote, so take with a grain of salt; also about NT4. < 1320504399 286995 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :I think in modern windows it runs parts in user space again < 1320504405 381807 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :like the window manager < 1320504420 316700 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :and parts of the graphics drivers < 1320504421 781610 :fizzie!fis@iris.zem.fi PRIVMSG #esoteric :There's probably architectural docs in MSDN. < 1320504422 663847 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :the window manager isn't in GDI < 1320504444 636664 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :ais523, it said so above < 1320504458 794331 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :hmm < 1320504460 406094 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :" It also contains the window manager and hardware device drivers." < 1320504470 945659 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :well, it's not user-visible that it's in GDI < 1320504475 745372 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I think < 1320504507 967075 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :in vista/7 there is dwm.exe (unrelated to dwm on *nix) which is the compositing "Desktop Window Manager" iirc < 1320504574 638851 :tiffany!~kawaii@fl-76-3-17-148.dhcp.embarqhsd.net JOIN :#esoteric < 1320504619 559621 :fizzie!fis@iris.zem.fi PRIVMSG #esoteric :Win7 has funny permissions things; sometimes Synergy clicks will not let you switch focus to some window, or to send key/mouse events when switched, if it's somehow... different. < 1320504677 460820 :fizzie!fis@iris.zem.fi PRIVMSG #esoteric :E.g. the photoalbum creation software from this one printing company was like that, for some unfathomable reason. < 1320506338 545739 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :ouch < 1320506823 566302 :Jafet!~Jafet@unaffiliated/jafet PRIVMSG #esoteric :Remember that one of the major security holes in Windows was in a parser for image files. < 1320506841 184435 :Jafet!~Jafet@unaffiliated/jafet PRIVMSG #esoteric :Yes, folks, code injection in image files. < 1320507773 505494 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Jafet: but WMF was an image format in the same sense that vim or TECO is a text editor < 1320507782 442408 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :it was more of a programming language for describing images < 1320507800 222667 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :it probably /shouldn't/ have had an FFI, though < 1320507869 835164 :Jafet!~Jafet@unaffiliated/jafet PRIVMSG #esoteric :Seeing as we're in this channel... < 1320507884 939806 :Jafet!~Jafet@unaffiliated/jafet PRIVMSG #esoteric :What was its computational class? (sans the ill-conceived FFI) < 1320507906 704959 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :iirc it's basically a serialized list of GDI function calls < 1320508051 177916 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Jafet: think an LBA that can't take inputs < 1320508676 133735 :nooga!~nooga@maverick.aircity.pl QUIT :Ping timeout: 240 seconds < 1320508879 569791 :nooga!~nooga@maverick.aircity.pl JOIN :#esoteric < 1320508930 207836 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net JOIN :#esoteric < 1320509276 440304 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric : Seems an odd place for a security bug < 1320509284 199905 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Welcome to Windows. < 1320509451 69144 :elliott!elliott@unaffiliated/elliott JOIN :#esoteric < 1320509463 249658 :Ngevd!~Taneb@host-2-99-82-44.as13285.net JOIN :#esoteric < 1320509542 642217 :tiffany!~kawaii@fl-76-3-17-148.dhcp.embarqhsd.net PRIVMSG #esoteric :does windows have butlers to great you at each security hole? < 1320509562 668984 :tiffany!~kawaii@fl-76-3-17-148.dhcp.embarqhsd.net PRIVMSG #esoteric :=p < 1320509601 344037 :Jafet!~Jafet@unaffiliated/jafet PRIVMSG #esoteric :Does Dr Watson count? < 1320509602 122245 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :No, you idiot, that's not what butlers do. < 1320509614 754184 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :It has doormen < 1320509619 540538 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :"Welcome to the Windows Font Parser. Which kernel subsystem would you like access to?" < 1320509626 567106 :tiffany!~kawaii@fl-76-3-17-148.dhcp.embarqhsd.net PRIVMSG #esoteric :xD < 1320509838 897193 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :q < 1320509839 408421 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :elliott: You have 2 new messages. '/msg lambdabot @messages' to read them. < 1320509890 499479 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :@tell elliott You have 2 new messages. '/msg lambdabot @messages' to read them. < 1320509890 810089 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Consider it noted. < 1320509896 762899 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :hi < 1320509897 680489 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :elliott: You have 1 new message. '/msg lambdabot @messages' to read it. < 1320509899 660342 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :@messages < 1320509900 180899 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :olsner said 9s ago: You have 2 new messages. '/msg lambdabot @messages' to read them. < 1320509903 857565 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :@messages < 1320509904 248915 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :You don't have any new messages. < 1320509906 281906 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :he;lp < 1320509920 824909 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :olsner: that was ridiculous < 1320509943 955854 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :ais523: the point exactly < 1320509945 773375 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :oh wait i didnt follow the instructions < 1320509950 150354 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :/msg lambdabot @messages < 1320509954 637768 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :yay now i see them < 1320509959 508921 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :they are the best messages. < 1320509984 423416 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :22:31:39: Does the people managing the account for HackageDB have UNIX mail? I send a UNIX message to them and I don't know if it work. < 1320509985 660352 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric ::') < 1320510056 729927 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :elliott, you going to the bonfire tonight? < 1320510078 894148 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :Now I made the MonoidicT monad transformer. newtype MonoidicT a m b = MonoidicT { runMonoidicT :: m (a, b) }; I also made the Monad instance for Monoid t => Monad ((,) t) < 1320510098 847517 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :zzo38: WriterT < 1320510123 125043 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: what does Writer do? < 1320510132 560391 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Ngevd: No, I'm plotting to destroy the universe because I'm a grouch who hates fun. < 1320510146 460133 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Minecraft bonfire night! < 1320510151 356001 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Minefire night. < 1320510153 830046 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Minefight. < 1320510158 129930 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: That's a supremely vague question ... < 1320510166 62415 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: indeed it is < 1320510169 346964 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :elliott, cool, that means I can go without fear of destroying the universe < 1320510171 303809 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :could you help me formulate a better question? < 1320510193 8346 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I gather that it's some sort of monad that lets you produce intermediate results < 1320510204 628887 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :but I'm not sure of the details, or whether or not that description is confusingly misleading < 1320510226 298909 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: Writer w a is a monad if w is a monoid < 1320510228 149609 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :elliott: Yes it is similar. But I used the Monoid t => Monad ((,) t) monad. < 1320510253 670596 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: it's just (w,a) underneath; return a = (mempty,a); (w,a) >>= f = let (w',b) = f a in (mappend w w', b) < 1320510258 783210 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: so you can use it to e.g. produce a log < 1320510264 219663 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :"tell" adds to the monoid < 1320510269 722755 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :do tell "doing a"; a; tell "doing b"; b < 1320510271 842156 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :erm < 1320510277 779108 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :do tell ["doing a"]; a; tell ["doing b"]; b < 1320510282 932442 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :that's Writer [String] whateverbreturns < 1320510291 443314 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :you can run it and get the final result plus the [String] out of it < 1320510293 418519 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :the end < 1320510297 860466 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :oh, and tell itself takes a monadic value as argument? < 1320510301 99593 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :WriterT is like that but a transformer < 1320510303 754773 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: ...no < 1320510335 124121 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: well, could I convert ["doing a"] to Just "doing a"? < 1320510338 392636 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :and likewise for the second < 1320510344 406500 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :and end up with Just "doing b"? < 1320510367 432626 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :OK, now I'm not sure you understand how either monoids or monads work at all... < 1320510407 49261 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: I sort-of understand Haskell monads, and category theory monoids < 1320510416 835972 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :but can't combine the category theory idea with the Haskell you're sohwing < 1320510423 343159 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :They had a instance Monoid t => Applicative ((,) t) but had no Monad instance so I made one up by: join (x, (y, z)) = (x |*| y, z); < 1320510432 166726 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: what type do you think tell is < 1320510445 290060 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :(Where |*| is infix operator for mappend) < 1320510455 994294 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :ah, hmm, is List an instance of Monoid, that defines append as some sort of named operator? < 1320510466 13242 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :that may have been what I'm missing < 1320510468 17390 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :@kind List < 1320510469 244394 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Not in scope: type constructor or class `List' < 1320510477 125549 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :@kind [Int] < 1320510478 68566 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :* < 1320510485 35443 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :@src Monoid < 1320510485 528234 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :class Monoid a where < 1320510485 678765 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : mempty :: a < 1320510485 842415 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : mappend :: a -> a -> a < 1320510485 894811 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : mconcat :: [a] -> a < 1320510486 750635 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :For list monoid: mempty = []; mappend = (++); < 1320510499 735427 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :mconcat is derived, I take it? < 1320510512 632771 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :it has a default value < 1320510517 48236 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :foldr mappend mempty < 1320510520 551804 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :mconcat is derived automatically but you can override it to make it more efficiently < 1320510522 358019 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :in that case, I think I understand now < 1320510539 731073 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :interpreting the operation on a monoid as "append" is the Haskellism I'm mising < 1320510541 302933 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :*missing < 1320510542 373735 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :> runWriter (tell ["fooing bars"] >> tell ["done fooing bars", "it was great"]) < 1320510543 431933 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : ((),["fooing bars","done fooing bars","it was great"]) < 1320510547 910817 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :mathematically, there's no reason it has to correspond to that at all < 1320510549 883973 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :> runWriter (tell ["fooing bars"] >> tell ["done fooing bars", "it was great"] >> return 99) < 1320510550 989649 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : (99,["fooing bars","done fooing bars","it was great"]) < 1320510557 499661 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :I also made the instance Category c => Monoid (c t t) < 1320510559 720072 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: I'd prefer it be "empty" and (<>) < 1320510586 238587 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I'm used to monoids made out of, say, 0 and addition < 1320510602 698680 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :i would not support that :) < 1320510603 449570 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :There is such a monoid in Haskell; it is the Sum monoid < 1320510604 70879 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :which don't fit the Haskell idea too well < 1320510615 874331 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: those fit into the "haskell idea" perfectly < 1320510622 523741 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :the names are historical and bad < 1320510624 483373 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :well, they're expressible in Haskell < 1320510629 114948 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :For multiplication you need a Product monoid < 1320510632 919367 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :but "Writer" is a bit of a silly name for it < 1320510642 819691 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: how is Writer related? < 1320510645 227105 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Writer isn't a monoid < 1320510660 390105 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: because it applies to monoids < 1320510663 878264 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :it's silly to say that something that happens to /use/ monoids constitutes part of Haskell's idea of what a monoid is < 1320510670 148514 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :well, OK < 1320510682 460494 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :bear in mind that Writer is also a fairly legacy name :P < 1320510686 758491 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :it's sort of dual to Reader < 1320510687 673583 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I'd say it's evidence of Haskell's idea, rather than being part of the idea < 1320510689 466407 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :is the reason it's named that < 1320510692 197581 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :i.e. effect rather than cause < 1320510693 28326 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :(Reader = (->)) < 1320510718 791793 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :what does Reader actually operate on? being equivalent to (->) is too heavily Haskell-golfed for me to work it out mentally < 1320510764 566089 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Reader r a ~ r -> a < 1320510767 593584 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :it's just a newtype wrapper < 1320510776 42855 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :There is a (e ->) monad; it is: return = const; fmap = (.); join f x = f x x; (I worked it out on paper at first and found it is the same thing) < 1320510789 481307 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: and the instance Monad ((->) r) is identical to the instance Monad (Reader r) < 1320510798 304706 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: it's called Reader because it lets you pass around one bit of mutable state implicitly < 1320510799 989238 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :erm < 1320510801 759336 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: it's called Reader because it lets you pass around one bit of IMmutable state implicitly < 1320510802 412941 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :You use the module Control.Monad.Reader for the (e ->) monad. < 1320510816 758029 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: ah right, that doesn't really fit with my idea of what a reverse of Writer would be < 1320510821 484046 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I imagined it taking elements from a list < 1320510823 309352 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :or something like that < 1320510824 431528 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: me neither, that's why I said "sort of" :) < 1320510830 567461 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :that's the Supply monad < 1320510835 13257 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :(elements from a list) < 1320510839 8003 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :which isn't in the stdlib < 1320510864 324217 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: the monad that Haskell calls Reader came up in a CS lecture, btw < 1320510867 173758 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :That is, sometimes is the use of using the monadic "join" for functions, so that is usually the reason why I will have import Control.Monad.Reader. < 1320510876 161531 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: it calls it (->) too < 1320510880 451713 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Dan thought he'd invented it, and called it the "clock monad" as it's what he was using it for < 1320510880 895962 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :there are instances for both < 1320510887 112565 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :in fact, join is really useful on functions < 1320510889 714075 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :it just duplicates its parameter < 1320510889 947619 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I said it was pretty much just a read-only state monad < 1320510891 976630 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :> join (+) 5 < 1320510893 162595 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : 10 < 1320510916 682162 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: I'm not sure what it takes to think you could have invented a monad so trivial... < 1320510917 389 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :wait, what does join do again? I keep forgetting how it relates to >>= < 1320510921 249725 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: likewise < 1320510922 684003 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :A lot of people can make up the same monads as other people; it is mathematics so such things are possible. < 1320510924 81964 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :I suppose lack of Haskell knowledge suffices < 1320510925 211072 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :probably just not having seen it before < 1320510930 896868 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: join = (>>= id) < 1320510933 913343 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric ::: m (m a) -> m a < 1320510937 537308 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :... well with a Monad constraint :P < 1320510941 490526 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :so < 1320510947 857596 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :(r -> (r -> a)) -> (r -> a) < 1320510951 265145 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :so < 1320510953 683209 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: hmm, why is that operation useful? and can you define >>= in terms of it? < 1320510955 442725 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :(a -> a -> b) -> a -> b < 1320510971 914663 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: I just gave a use for it; and (>>=) can be defined in terms of join and fmap < 1320510987 524530 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :you can't define fmap with just return and join, but all monads are functors anyway, haskell just doesn't realise it < 1320511008 302878 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: anyway, join is used in the category theory definition < 1320511012 836261 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :instead of (>>=) < 1320511015 128358 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I know, I've seen it but didn't understand it < 1320511033 437821 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :that's because you don't understand monads :) < 1320511035 362094 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :hmm, why is there no fmapM? I'm guessing because fmap doesn't have a defined evaluation order < 1320511047 281387 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I readily admit I don't really fundamentally understand them < 1320511049 387337 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :just enough to use them < 1320511049 608057 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric ::t Data.Traversable.mapM < 1320511050 679376 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :forall a (m :: * -> *) b (t :: * -> *). (Data.Traversable.Traversable t, Monad m) => (a -> m b) -> t a -> m (t b) < 1320511063 478077 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Functor => Foldable => Traversable < 1320511066 585663 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :is the hierarchy there < 1320511096 90158 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: but fmapM doesn't even make sense < 1320511107 642064 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :not in general < 1320511112 893686 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :but it does in a lot of specific cases < 1320511116 972065 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :including some that would have been useful < 1320511119 695809 :Jafet!~Jafet@unaffiliated/jafet PRIVMSG #esoteric :fmap is general. < 1320511122 711056 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: fmapM :: (Monad m) => (a -> m b) -> (r -> c) -> m (r -> b) < 1320511127 765271 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :(for the (->) monad) < 1320511132 934849 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :well, (->) functor :) < 1320511138 456439 :Jafet!~Jafet@unaffiliated/jafet PRIVMSG #esoteric :It's pretty weird to name something after fmap if it isn't general. < 1320511139 358878 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :erm < 1320511142 80948 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: fmapM :: (Monad m) => (a -> m b) -> (r -> a) -> m (r -> b) < 1320511147 550066 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :that looks better < 1320511154 648918 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: you have a bad definition of better < 1320511163 333244 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :well, the first version was obviously wrong < 1320511165 270633 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: that's unsafePerformIO :) < 1320511177 9615 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :no it isn't < 1320511179 811596 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric ::t unsafePerformIO < 1320511180 654645 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Not in scope: `unsafePerformIO' < 1320511181 471724 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :fmapM putStrLn :: (String -> a) -> IO (String -> ()) < 1320511191 432013 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :fmapM putStrLn id :: IO (String -> ()) < 1320511198 985371 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :the function you get out of that prints every time it's called < 1320511225 313036 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :therefore not every functor has fmapM qed < 1320511232 835813 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: well, say, putStrLn "x" is of type IO () < 1320511242 88614 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I don't see why that's any safer than IO (String -> ()) < 1320511257 129970 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: and that's because you don't understand Haskell's IO! < 1320511280 78351 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :IO is a little crazy as monads go, indeed < 1320511282 712046 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :no, it's not < 1320511286 543789 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :you just don't understand it < 1320511302 544634 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :IO being a monad is practically irrelevant to understanding it, too, it's just a way of using it < 1320511327 758882 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :IO () is a value describing a side-effectful program that returns (); IO (String -> ()) is a value describing a side-effectful program that returns (a pure function taking a String and returning ()) < 1320511337 170786 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :say we have m :: IO (String -> ()) < 1320511339 843480 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :IO being a monad does also make it functor, applicative, and that kind of stuff. < 1320511353 899897 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: do f <- m; return (doPureComputationWith f) < 1320511368 196139 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: doPureComputationWith calls f ten times, but f magically prints when it's called oops! < 1320511447 231563 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :yep, this is basically a good argument for showing that fmapM doesn't work on (->) < 1320511456 415768 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :but there are a whole load of functors, like Tree, where it would be useful < 1320511463 808582 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :and in fact, it's the same argument in both cases < 1320511470 14253 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :that's why Traversable exists P: < 1320511470 995777 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :the problem is that functions don't define an evaluation order < 1320511472 973252 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :s/P:/:P/ < 1320511477 366049 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :which /does/ define an evaluation order < 1320511480 507425 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :I made up the instance Alternative IO < 1320511481 95011 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :and if they /did/, there'd be no issue with (->) < 1320511488 430219 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :yes it would < 1320511491 742970 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :sorry, you're wrong < 1320511497 936183 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :there is _no way_ to implement the type I gave without unsafePerformIO < 1320511500 717206 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :at all < 1320511502 37278 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :full stop < 1320511507 859826 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :empty = fail []; x <|> y = catch x $ \e -> modifyIOError (\z -> if z == userError [] then e else z) y; < 1320511524 30210 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: it'd be called safePerformIO if evaluation order were defined in Haskell < 1320511525 481295 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :it just isn't < 1320511539 421938 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :(that is, order, and existence) < 1320511539 816401 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: I give up < 1320511551 789605 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I think we have different mental images of the same thing < 1320511552 46465 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :evaluation order is irrelevant here < 1320511565 377745 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :it's completely irrelevant to the question of whether to be pure or not < 1320511575 627606 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :Someone made up a instance MonadPlus IO but it does not follow the right zero law and also doesn't follow the monoid laws either! < 1320511578 929998 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: if you have an impure language, then unsafePerformIO is safe too < 1320511580 872658 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :even if it's lazy < 1320511583 925006 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :right < 1320511591 625257 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :it's an orthogonal issue < 1320511639 103248 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :The MonadPlus for Parsec does not follow the right zero law either. < 1320511662 789781 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :It follows the left zero law; maybe the right zero law should be removed from the documentation? < 1320511665 362491 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :back to logreading! < 1320511668 747101 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :02:34:54: i met a burglar < 1320511668 904587 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :02:35:21: chatted with him for 5 minutes, went home and called the cops. will prolly be stabbed soon enough :D < 1320511668 956953 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric ::') < 1320511683 76346 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :hmm, what does that smiley mean? < 1320511688 609617 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :crying with happiness? < 1320511705 307481 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :it means the world is beautiful, or something < 1320511717 300326 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :but yes i suppose that's the literal meaning < 1320511725 780508 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :although ' looks like just a single tear to me < 1320511736 916753 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :well, it is < 1320511743 869238 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric ::") < 1320511744 224578 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :Do you think my instance Alternative IO is correct? < 1320511747 356373 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :because trying to render all the tears doesn't work well in ASCII < 1320511755 693903 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric ::''''''''''''''''''''''''''') < 1320511760 575677 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :see what I mean? < 1320511775 395746 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric ::'''')'''''' < 1320511783 4432 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :''''''''''''' < 1320511785 350700 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION puddle of tears < 1320511819 141470 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :If I had a language that had one command, "interpret input as brainfuck program", would it be Turing-Complete? < 1320511837 828403 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :yes, according to most definitions < 1320511842 182306 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :no < 1320511845 542845 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :according to most definitions < 1320511846 497684 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :except the other definitions < 1320511854 799599 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :hehehe < 1320511858 285973 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :Ngevd: Many people have asked about things like that before already. < 1320511865 588945 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: well, it's meta-TC < 1320511873 541542 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :And there already is an esolang like that for that purpose anyways! < 1320511875 607460 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: don't even < 1320511876 218776 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :in that it can express an interp for a TC language < 1320511882 832090 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Ngevd: see here: < 1320511889 740375 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :we've had this argument before, but I can't remember the conclusion < 1320511893 598130 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Ngevd: v < 1320511895 7500 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Ngevd: http://esolangs.org/wiki/%E2%84%92 < 1320511950 444597 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: the conclusion between people who aren't messing about on an IRC channel appears to be that models without input are better anyway so it's irrelevant < 1320511961 194349 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :right < 1320511966 177689 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :although i only have one source for that :P < 1320511971 538071 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :and I forget who it is < 1320511974 569803 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :I appear to have disconnected < 1320511979 141312 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Ngevd: amazing < 1320511979 298800 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :Or perhaps am just lagging < 1320511982 146072 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :considering you're still here < 1320512031 122363 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :Oh there we go < 1320512031 175283 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :All the responses just flooded in < 1320512062 657239 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :I used the MonadicT transformer with list monad to make like the probability distributions, since it is clear what join should mean. < 1320512086 122421 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :MonadicT? < 1320512121 89549 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :I mean it is called MonoidicT < 1320512123 894329 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :I made a mistake < 1320512136 146893 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :It is actually called: newtype MonoidicT a m b = MonoidicT { runMonoidicT :: m (a, b) }; < 1320512139 275817 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :To be more exact. < 1320512165 542059 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :it's still just WriterT afaict :P < 1320512176 234014 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :There is also the instance Monoid t => Monad ((,) t) join (x, (y, z)) = (x |*| y, z); (where |*| is really mappend) < 1320512222 383824 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :that's just Writer isn't it < 1320512246 13070 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :There is already the instance Monoid t => Applicative ((,) t) but they forgot the Monad < 1320512250 361758 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com QUIT :Remote host closed the connection < 1320513819 864020 :Jafet!~Jafet@unaffiliated/jafet QUIT :Quit: Leaving. < 1320514441 572893 :oerjan!oerjan@sprocket.nvg.ntnu.no JOIN :#esoteric < 1320514664 801000 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric : I don't see how you can use i for true at all. < 1320514697 161145 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :i'm pretty sure you _can_ convert i and `ki to k and `ki < 1320514770 237248 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :`ix = x, ``kix = i < 1320514772 869743 :HackEgo!foobar@codu.org PRIVMSG #esoteric :​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: ix: not found < 1320514788 245529 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :```kix`ki = `ki < 1320514789 19534 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :Whoa < 1320514789 927288 :HackEgo!foobar@codu.org PRIVMSG #esoteric :​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: ``kix`ki: not found < 1320514795 771134 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :Suddenly I see a crazy way to do it < 1320514798 941711 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :``ix`ki = `x`ki < 1320514800 851836 :HackEgo!foobar@codu.org PRIVMSG #esoteric :​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: `ix`ki: not found < 1320514808 398882 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :thus we need x = `kk < 1320514808 981846 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :so < 1320514822 687580 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :```kk`ki < 1320514823 138810 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :elliott: you _could_, like, add an initial space or something :P < 1320514824 646845 :HackEgo!foobar@codu.org PRIVMSG #esoteric :​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: ``kk`ki: not found < 1320514825 430593 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: right? < 1320514840 213753 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric : `hi hakcego < 1320514843 256175 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric : `thanks < 1320514848 79201 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :NO HACKEGO: ``i`kk`ki = k; ```ki`kk`ki = `ki < 1320514851 391920 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :i believe. < 1320514866 335577 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: SO HA < 1320514885 961717 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :yeah looks right < 1320514998 851938 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :But backwards...? < 1320515010 802926 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :i vaguely recall a theorem that if you have two LC terms in weak (head?) normal form, which are _not_ equivalent, then it is possible to find something to apply them to that gives any desired result. < 1320515040 587933 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :Ngevd: what is backwards? < 1320515054 873557 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: that's either an astonishing or obvious theorem, if true < 1320515058 44555 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :I'm not sure which < 1320515079 264870 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :in some sense it's obvious because they're not equivalent, in another sense it's astonishing that you can... get useful results out of that? < 1320515149 648195 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :elliott: some of the vagueness may be in the exact requirements needed :P < 1320515165 806498 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :heh < 1320515193 330840 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :i think it was in barendregt's famous LC book < 1320515238 339468 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :*drecht < 1320515246 412113 :Ngevd!~Taneb@host-2-99-82-44.as13285.net QUIT :Ping timeout: 244 seconds < 1320515255 62192 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :"The Lambda Calculus -- Its Syntax and Semantics" < 1320515320 712027 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :not beta-eta equivalent, was probably one of the requirements < 1320515381 702169 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :and the weak normal form stuff was to ensure you had enough in it to not infinitely loop < 1320515384 904425 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :oh hm < 1320515404 389887 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :or possibly it involved having different types < 1320515413 184891 :aloril!~aloril@dsl-tkubrasgw3-fe7ef900-153.dhcp.inet.fi QUIT :Ping timeout: 255 seconds < 1320515430 529824 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :anyway i and `ki are both fully normalizable < 1320515443 708942 :derrik!~xix@143.122.191.90.dyn.estpak.ee JOIN :#esoteric < 1320515478 903691 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: different types to the single type the LC has? :-) < 1320515547 921109 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :elliott: the book had a lot about type systems for LC < 1320515551 711711 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: "typed lambda calculus" and "untyped lambda calculus" both exist < 1320515564 960204 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: I know < 1320515567 299457 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :and in fact, without an explicit "untyped", "typed" seems to be implied among actual computer scientists < 1320515569 485652 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :because they like types < 1320515582 235197 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :and used it to prove nontrivial facts about untyped LC itself, iirc < 1320515605 20069 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION doesn't think that's true at all, and suspects you might be using "actual computer scientists" to mean "computer scientists whose work filters down to me" < 1320515615 50220 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :or at least it seems fishy to me < 1320515638 445192 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: I mean "computer scientists whose seminars I attend" < 1320515642 778223 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :right :p < 1320515654 190387 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :but really, untyped LC is a bit uninteresting nowadays < 1320515657 373245 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION has never seen "the lambda calculus" used to mean anything but the untyped version, at least without context < 1320515662 633307 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :because it doesn't form a nontrivial category < 1320515684 74127 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :if you're using LC as the basis of something, TLC tends to work better < 1320515699 316035 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :(and if you go down the other route, you seem to end up with Ursala) < 1320515716 399191 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :elliott: one of the type systems was one which had the property that a term had a type iff it had a terminating reduction, iirc < 1320515723 956210 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: Ursala has types, sort of :P < 1320515738 693424 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: yeah, I figured it was something like that < 1320515747 58580 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :of course that means _finding_ a type is undecidable < 1320515757 296455 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: I'm pretty sure you can make a type system that types /everything/ in LC reasonably, but -- yeah, that < 1320515762 85584 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :but for normalized terms, it was possible < 1320515789 469133 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :and iirc the type was preserved by reductions -- both ways < 1320515824 520995 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric : elliott: one of the type systems was one which had the property that a term had a type iff it had a terminating reduction, iirc < 1320515840 782895 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :so if it terminates, you essentially know the possible types are the same as for the result < 1320515841 369494 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: does this include terms that depend on partial reductions of non-terminating terms? < 1320515845 223549 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :hmm, I dunno whether that's possible < 1320515850 6924 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :wait, of course it isn't < 1320515869 592132 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :"Proposed criticism of lambda calculus < 1320515869 753010 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :01-Nov-2008: I suggest adding a section "Controversy in lambda calculus" because it seems like overkill on fairly useless stuff. I still ponder "Why Johnny can't program" & "Why Johnny can't de-virus" & "Why Johnny can't word search" etc. I think subjects like lambda calculus created a nerd-iverse (re: "universe") that wasted hours on useless math games." < 1320515875 414530 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :-- [[Talk:Lambda calculus]]] < 1320515878 687391 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :s/]]]/]]/ < 1320515879 758158 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :elliott: depends on what you mean by non-terminating < 1320515883 243790 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: heh < 1320515914 48141 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :"My view is to cite sources that consider lambda calculus to be a limited concept that thwarted the expansion of computer science in other areas. For example, it has become common knowledge that languages are easier to program when using the standard syntax of algebra (but with words as variable names, not just x/y/z). The vast majority of all software systems originally written in LISP have been re-written in procedural, non-list languages." < 1320515915 493868 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :you can have something reducing to head normal forms while subparts never terminate < 1320515916 409715 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :this comment... < 1320515927 98227 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: right < 1320515961 147906 :Ngevd!~Taneb@host-2-99-82-44.as13285.net JOIN :#esoteric < 1320516043 839808 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :Sorry about my tendency to lag out < 1320516070 699947 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :elliott: Apparently that person is rather ignorant of, well, functional languages newer than 1980. < 1320516088 914455 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :Or older than sometime in the 60s, for that matter. < 1320516247 514548 :aloril!~aloril@dsl-tkubrasgw3-fe7ef900-153.dhcp.inet.fi JOIN :#esoteric < 1320516313 320044 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :the type of \f x -> f (f x) was something like ((a -> b) /\ (b -> c)) -> a -> c < 1320516326 677433 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :*the principal type < 1320516334 746877 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :fully normalized terms had those < 1320516356 743523 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Man, Stanislav has managed to turn McCarthy's death into his most intolerable blog post yet. < 1320516388 824710 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric ::( < 1320516400 830576 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :What, is that the same Mathnerd314. < 1320516435 809441 :shachaf!~shachaf@204.109.63.130 PRIVMSG #esoteric :oerjan: Wait, did you just bring up my favourite function? < 1320516449 507270 :shachaf!~shachaf@204.109.63.130 PRIVMSG #esoteric :ACTION considers reading scrollback. < 1320516470 196417 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :for only head normalizable terms, non-terminating subterms would get the special type omega < 1320516504 707883 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :which was only allowed to the left of -> or something like that < 1320516553 993419 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :shachaf: it was just the simplest example i could think of of a function which requires an intersection of types in that type system < 1320516561 270178 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: So Y would get the correct type, but its subterms would involve omega? < 1320516594 677027 :shachaf!~shachaf@204.109.63.130 PRIVMSG #esoteric :Ugh, so much scrollback. < 1320516599 100179 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :elliott: well since it's not fully normalizable it may not have a principal type < 1320516607 217681 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Hmm, right. < 1320516614 233261 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :but it would have a type for every occasion where it "works" < 1320516618 932085 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :iirc < 1320516625 180937 :shachaf!~shachaf@204.109.63.130 PRIVMSG #esoteric :ACTION just wants a polymorphic \x y -> x (x y); why do we need all these fancy tricks? < 1320516641 763482 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :i don't see any fancy trick < 1320516696 202064 :shachaf!~shachaf@204.109.63.130 PRIVMSG #esoteric :I guess that's pretty simple, actually. < 1320516704 995740 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric ::t \x y -> x (x y) < 1320516705 747028 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :forall t. (t -> t) -> t -> t < 1320516714 755171 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I don't see the problem < 1320516739 411800 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :ais523: the problem is that there are ways to apply the untyped \x y -> x (x y) which don't follow that type < 1320516770 787404 :shachaf!~shachaf@204.109.63.130 PRIVMSG #esoteric :@ty let f :: forall a f. (forall b. b -> f b) -> a -> f (f a); f x y = x (x y) in f < 1320516771 646047 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :forall (f :: * -> *) a. (forall b. b -> f b) -> a -> f (f a) < 1320516772 135947 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :hmm, I will call this function 2 < 1320516787 492510 :shachaf!~shachaf@204.109.63.130 PRIVMSG #esoteric :> let f :: forall a f. (forall b. b -> f b) -> a -> f (f a); f x y = x (x y) in f Just True < 1320516788 621511 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Just (Just True) < 1320516798 579689 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :ais523: well of course it's the church numeral 2 < 1320516802 299678 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :yes < 1320516826 448794 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :btw, people experimenting with Web of Lies, did you come to any conclusions but "it doesn't run on modern Linux"? < 1320516867 376170 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: I would come to conclusions if I could get it working < 1320516873 736036 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: I'm just waiting for you to fix the bug :P < 1320516890 981730 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I can think up a fix that will almost certainly work, but feels a bit insecure < 1320516896 906502 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :which is to only partially drop permissions in the main process < 1320516904 328076 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :and then undrop them again when that bit of code reads < 1320516931 823352 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I just don't like leaving around root perms even in the ssuid < 1320516941 350486 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :Going to the bonfire < 1320516943 133631 :Ngevd!~Taneb@host-2-99-82-44.as13285.net PRIVMSG #esoteric :Bye < 1320516948 93204 :Ngevd!~Taneb@host-2-99-82-44.as13285.net QUIT :Quit: AWAAAAY! < 1320516989 494730 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :because someone who can exploit a security bug in WOL could call the undrop command themselves < 1320517014 185831 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com JOIN :#esoteric < 1320517042 476738 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: hmm, could you somehow drop root privs /at clone() time/? < 1320517049 763878 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :so that the relevant process is /never/ owned by root < 1320517075 334188 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :the problem is that fakeinit actually needs the root privs, it calls mknod a lot < 1320517078 830661 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: or, better: if your effective UID isn't root (but your real UID still is), do spawned processes get owned by your effective UID? < 1320517081 396851 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :the processes are dropped by the time the process under test runs < 1320517090 865224 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :*perms are dropped < 1320517091 222916 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :you could change that before forking or w/e, then change it back < 1320517094 807480 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :so by the second clone, the perms aren't there < 1320517117 547107 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :basically, there are three processes: weboflies, fakeinit, process under test < 1320517130 637589 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :weboflies forks fakeinit as root; fakeinit forks the process after dropping perms, so as nonroot < 1320517164 142756 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :right < 1320517173 759453 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: I see a flaw in your reasoning < 1320517176 638311 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :and weboflies then can't read the process under test's perms on any computers but mine < 1320517179 466853 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :for some reason < 1320517192 481222 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: how are /any/ /proc/N/fd directories owned by non-root in a typical linux system by your logic? < 1320517199 416450 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :it's all done by dropping privileges from root and forking, at some level < 1320517217 98048 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: I'm not trying to make an argument here, I'm just stating facts < 1320517232 391364 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :the observed conclusion doesn't seem to follow from the actual facts, which is why I'm confused < 1320517235 825501 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: yes, but your reasoning for the bug has been "/proc/N/fd is owned by root because it started off like that" < 1320517243 167697 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :which you've just shown absurd, I think < 1320517245 918506 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :yes < 1320517262 533646 :derrik!~xix@143.122.191.90.dyn.estpak.ee PART :#esoteric < 1320517276 898367 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :hmm, why don't you check the perms on /proc/fd for init, gdm/kdm/getty/equivalent, and your shell? < 1320517297 155616 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I'd do it, except the problem doesn't happen on my computer < 1320517323 851669 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :[elliott@dinky ~]$ ls -lhd /proc/1/fd < 1320517324 9163 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :dr-x------ 2 root root 0 Nov 5 18:20 /proc/1/fd < 1320517324 72991 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :[elliott@dinky ~]$ ls -lhd /proc/$(pgrep slim)/fd < 1320517324 125805 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :dr-x------ 2 root root 0 Nov 5 16:09 /proc/632/fd < 1320517324 126051 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :[elliott@dinky ~]$ ls -lhd /proc/$(pgrep bash | tail -n 1)/fd < 1320517324 853544 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ls: cannot access /proc/7274/fd: No such file or directory < 1320517326 858204 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :[elliott@dinky ~]$ ls -lhd /proc/$(pgrep bash | tail -n 2 | head -n 1)/fd < 1320517328 859842 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ls: cannot access /proc/7276/fd: No such file or directory < 1320517335 528613 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :but < 1320517336 987802 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :[elliott@dinky ~]$ ls -lhd /proc/self/fd < 1320517337 103771 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :dr-x------ 2 elliott users 0 Nov 5 18:21 /proc/self/fd < 1320517355 122811 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :[elliott@dinky ~]$ ps < 1320517355 242023 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric : PID TTY TIME CMD < 1320517355 294663 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric : 7244 pts/1 00:00:00 bash < 1320517355 294849 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric : 7282 pts/1 00:00:00 ps < 1320517355 294958 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :[elliott@dinky ~]$ ls -lhd /proc/7244/fd < 1320517355 625518 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :dr-x------ 2 elliott users 0 Nov 5 18:20 /proc/7244/fd < 1320517372 192659 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: oh, by "shell" I meant along the lines of "GNOME shell" < 1320517377 179833 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ah < 1320517378 330542 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :is slim the login process? < 1320517382 323055 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :slim is my DM < 1320517392 271889 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: I can check ck-launch-session, xfce4-session, xfwm4... < 1320517394 356407 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :which do you want :p < 1320517400 989423 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :[elliott@dinky ~]$ cat ~/.xinitrc < 1320517401 106829 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :#!/bin/sh < 1320517401 158502 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :exec ck-launch-session startxfce4 < 1320517421 771918 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: whichever one gets execed most directly by the login process < 1320517422 589758 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ah, ck-launch-session actually isn't alive any more < 1320517434 591988 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :the processes dying is making this a bit harder to trace < 1320517436 715511 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: That would be... ~/.xinitrc, probably < 1320517442 486809 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric : 632 ? 00:00:00 slim < 1320517442 604820 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric : 639 tty7 00:04:44 X < 1320517442 657845 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric : 642 ? 00:00:00 udevd < 1320517442 658050 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric : 643 ? 00:00:00 udevd < 1320517442 658160 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric : 661 ? 00:00:00 dhcpcd < 1320517443 205238 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric : 662 ? 00:00:00 sh < 1320517444 990116 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric : 674 ? 00:00:00 dbus-launch < 1320517446 994045 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric : 675 ? 00:00:00 dbus-daemon < 1320517448 996855 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric : 679 ? 00:00:00 xfconfd < 1320517450 861704 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric : 684 ? 00:00:00 ssh-agent < 1320517453 1174 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric : 694 ? 00:00:00 xfce4-session < 1320517455 7687 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :I'll check the sh, dbus-launch, and xfce4-session < 1320517485 231805 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :[elliott@dinky ~]$ ls -lhd /proc/662/fd # sh < 1320517485 351760 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :dr-x------ 2 elliott users 0 Nov 5 16:09 /proc/662/fd < 1320517485 404057 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :[elliott@dinky ~]$ ls -lhd /proc/674/fd # dbus-launch < 1320517485 404283 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :dr-x------ 2 elliott users 0 Nov 5 16:10 /proc/674/fd < 1320517485 404394 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :[elliott@dinky ~]$ ls -lhd /proc/694/fd # xfce4-session < 1320517486 189207 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :dr-x------ 2 elliott users 0 Nov 5 16:10 /proc/694/fd < 1320517510 389664 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: aha < 1320517519 97095 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: when you clone from fakeinit, do you remember to specify you want a new fd namespace? < 1320517536 924527 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :err, those exist? < 1320517545 93314 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I think so, but I'll have to check < 1320517547 846641 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :of course < 1320517557 974072 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric : pid = clone(child_handler, < 1320517558 54047 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric : (char*)p1stack + sizeof(p1stack) - sizeof(void*), < 1320517558 107801 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric : CLONE_PTRACE, argv); < 1320517558 690426 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :(I need to leave stdin/stdout/stderr connected, ofc, but a new fd namespace would do that) < 1320517559 208275 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: you don't < 1320517562 152125 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :fix that :) < 1320517562 859595 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :aha < 1320517577 844940 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :yes I do < 1320517580 147621 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :it's a negative flag < 1320517585 841948 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :huh? < 1320517589 352669 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :hmm < 1320517592 19771 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :new FD namespace is done by /not/ specifying CLONE_FILES < 1320517598 629626 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :oh, indeed < 1320517603 213267 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: gah, that seemed /so obvious/ < 1320517606 309194 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :Now I have the classes: MonoidPlus, Group, MonoidMinus, MonoidNorm, MonoidPlusNorm, Semiring, and Ring. When doing probability distributions, you could generalize it to not necessarily proper probabilities, if you have a type which is both Ring and MonoidPlusNorm. Now you can join probabilities, normalize it, and so on. You could use complex numbers if you want to. < 1320517626 404219 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: I hate it when I have a really good aha moment and it isn't the bug < 1320517632 429761 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :yep < 1320517634 12548 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :especially when it's an /actual bug/ still, but not the one I'm trying to fix < 1320517656 610661 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :who doesn't < 1320517695 706371 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric : CLONE_PID (obsolete) < 1320517695 859894 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric : If CLONE_PID is set, the child process is created with the same process ID as the calling process. This is good for hacking the system, but other‐ < 1320517695 923190 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric : wise of not much use. Since 2.3.21 this flag can be specified only by the system boot process (PID 0). It disappeared in Linux 2.5.16. < 1320517722 75803 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :oh, I end up fixing loads of bugs when looking for other bugs < 1320517727 8541 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :so I find it useful < 1320517776 917470 :sebbu!~sebbu@unaffiliated/sebbu QUIT :Read error: Connection reset by peer < 1320517792 350641 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: gah, there doesn't look like anything relevant in man 2 clone < 1320517807 362909 :sebbu!~sebbu@ADijon-152-1-33-211.w83-194.abo.wanadoo.fr JOIN :#esoteric < 1320517807 767714 :sebbu!~sebbu@ADijon-152-1-33-211.w83-194.abo.wanadoo.fr QUIT :Changing host < 1320517807 820263 :sebbu!~sebbu@unaffiliated/sebbu JOIN :#esoteric < 1320517825 960504 :fizzie!fis@iris.zem.fi PRIVMSG #esoteric :No context-reading again, but relevant? http://www.mail-archive.com/git-commits-head@vger.kernel.org/msg11654.html -- it's a 2.6.22 patch which makes /proc/N/fd directory have a custom permissions handler which overrides the usual when task_pid(current) == proc_pid(inode). But it could have been removed for all I know. < 1320517847 12543 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :that's interesting < 1320517853 806914 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :that sounds suspiciously relevant < 1320517854 753139 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :what do task IDs handle again? < 1320517862 940157 :fizzie!fis@iris.zem.fi PRIVMSG #esoteric :That's of course not something that'd show up in the permissions-as-seen-by-ls. < 1320517873 565133 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :fizzie: basically the problem is that we have /proc/N owned by someuser but /proc/N/fd owned by root < 1320517876 166210 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :and we have no idea why < 1320517877 816851 :fizzie!fis@iris.zem.fi PRIVMSG #esoteric :(Okay, away again.) < 1320517884 872226 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :damn :) < 1320517895 146606 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :+ * /proc/pid/fd needs a special permission handler so that a process can still < 1320517895 262155 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :+ * access /proc/self/fd after it has executed a setuid(). < 1320517901 641488 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: ok, this is sounding very worryingly relevant? < 1320517938 73721 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :no, I don't think it is relevant; that's covering the case where a process starts suid root or run via sudo, drops permissions, then tries to read /proc/self/fd < 1320517948 899287 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :16:39:02: ais523: fmapM :: (Monad m) => (a -> m b) -> (r -> a) -> m (r -> b) < 1320517972 963240 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric ::t mapM < 1320517973 856677 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :forall a (m :: * -> *) b. (Monad m) => (a -> m b) -> [a] -> m [b] < 1320517984 268972 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: still, we have a case of dropping permissions from root, and then a child failing to read /proc/N/fd... < 1320517992 204818 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: it would help if I knew what tasks are < 1320518028 373198 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: I think that that's special-casing something in the existing behaviour, and the existing behaviour is what's relevant < 1320518040 235534 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :hmm, okay < 1320518089 955935 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I'm racking my brains for things that could be relevant and resolve the inconsistency < 1320518099 941104 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :maybe Linux just doesn't like you? < 1320518101 82412 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :if pgids or sids were involved, they'd both explain what was happening, but I see no reason for them to be < 1320518106 142856 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: *doesn't like you? < 1320518108 234240 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :it works for /me/ < 1320518114 583642 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :hm i guess that actually cannot be written < 1320518122 335340 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: you could be lying! maybe they want everyone else to think you're a crank! < 1320518124 519449 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: that was my /point/ < 1320518142 372345 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: also, correcting something I said to itself is... < 1320518144 778800 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :O KAY < 1320518145 393018 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :on my system, I can read the process-under-test's FDs from the main process, but not fakeinit's, which is simple and makes sense < 1320518154 469189 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: read onwards :P < 1320518169 224696 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: it's not correcting to itself; the referent of "you" is different in each case < 1320518180 134645 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :corrections are textual! < 1320518183 848801 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :as in, it was a substitution on meaning not words < 1320518190 293965 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I don't see why I can't use a semantic correction < 1320518192 579560 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :for a semantic mistake < 1320518194 611743 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :you should have s/you/me/'d in the correction, so that the resulting statement I would have made would have been correct < 1320518328 219536 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :but then it isn't a correction at the semantic level! < 1320518355 920099 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :hmm, it'd be great if there were a better channel than #esoteric for "weird corner cases of Linux people don't generally care about" < 1320518463 884782 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :heh < 1320518473 95286 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :I don't even see where the corner case /is/, though < 1320518486 107528 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :the problem is basically "Linux breaks after I do [huge laundry list of terrible things]" < 1320518490 333620 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :yes < 1320518491 568455 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :I don't think anybody can solve that problem but you < 1320518504 979718 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :but I can't solve it directly, because the problem doesn't exist on my system < 1320518539 230067 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Want an ssh account? :-P < 1320518544 64270 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :hmm, I suppose the simplest test is to write a process that is originally run as root, then does setresuid, fork, exec, and the process it execs hangs a while (sleep 100 would do) < 1320518550 836629 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :then check the perms there < 1320518566 884063 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I'd need root access as well as an ssh account to test this, and that'd be a bit of a crazy thing to give me < 1320518588 21299 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :(and a very crazy thing to give anyone else) < 1320518634 28488 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :main(c,v){setresuid(0,0,0);if(!fork()){execlp(v[1],v+1);};sleep(100);} < 1320518639 332243 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ran as ./a.out sleep 100 < 1320518640 579269 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :that's not dropping perms < 1320518640 632129 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :look good? < 1320518644 397533 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :oh, er < 1320518647 274661 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :s/0/1000/ < 1320518647 808635 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :you need to set them to some values other than 0 < 1320518651 571140 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :(my user accoutn) < 1320518652 585863 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :account < 1320518658 158031 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :yep, that looks reasonable < 1320518668 579084 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :assuming execlp does what you think it does; I can never remember which of the execs are which < 1320518675 665427 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :shouldn't that be execvp? < 1320518680 795484 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :you're giving it an array as argument < 1320518685 314951 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :oh, right < 1320518692 317768 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :yep, execvp, I just checked < 1320518699 962684 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :run that with sleep 100 as args, as root < 1320518705 727933 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :and see what happens < 1320518726 918051 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :augh.c:1:48: error: subscripted value is neither array nor pointer nor vector < 1320518727 69313 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :o;ps < 1320518734 150351 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :forgot my K&R type declaration of v < 1320518737 218476 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :you need to give argv a type < 1320518743 487347 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :main(c,v)char**v;{setresuid(0,0,0);if(!fork()){execvp(v[1],v+1);};sleep(100);} < 1320518746 733293 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :im good programer < 1320518758 453429 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: oh, maybe it should print its pid < 1320518762 603392 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :on both halves of the fork < 1320518766 695730 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :it's likely obvious anyway, but it'd help < 1320518891 354587 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :main(c,v)char**v;{setresuid(1000,1000,1000);if(c=fork())printf("%d %d\n",c,getpid());else execvp(v[1],v+1);sleep(100);} < 1320518892 364801 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :here we go < 1320518912 425242 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :[elliott@dinky weboflies]$ ls -lhd /proc/7583{,/fd} < 1320518912 581179 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :dr-xr-xr-x 8 elliott root 0 Nov 5 18:47 /proc/7583 < 1320518912 634041 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :dr-x------ 2 root root 0 Nov 5 18:47 /proc/7583/fd < 1320518912 634198 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :[elliott@dinky weboflies]$ ls -lhd /proc/7584{,/fd} < 1320518912 634310 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :dr-xr-xr-x 8 elliott root 0 Nov 5 18:47 /proc/7584 < 1320518913 214939 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :dr-x------ 2 elliott root 0 Nov 5 18:47 /proc/7584/fd < 1320518914 849123 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: wait, what? < 1320518921 857915 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :oh, elliott:root is expected < 1320518925 169532 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :I didn't change the gid < 1320518927 703262 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :yes, indeed < 1320518947 235874 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :but 7583's result is v. interesting < 1320518954 13805 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: I suppose I should try clone rather than fork < 1320518957 224630 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :7583's result is consistent with my system < 1320518962 206730 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :and yes, that's the next thing to try < 1320518973 878960 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :you could even give CLONE_PTRACE as an arg, I guess < 1320518975 154296 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :starting to regret my chosen coding style already < 1320518990 550220 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :can you do main(c,char**v), incidentally? < 1320518992 722684 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: wouldn't that freeze the child? < 1320518993 337878 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :and no < 1320519004 692884 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: nope, CLONE_PTRACE only does anything if you're being ptraced yourself < 1320519009 200439 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ah, okay < 1320519011 159945 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :you're thinking of PTRACE_TRACEME < 1320519033 596486 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :child_stack can be NULL, right? < 1320519035 830969 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :CLONE_PTRACE basically means "debugged-ness propagates over the clone"; weboflies injects it into other process's clone calls < 1320519047 909245 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: it isn't for me; the docs say it can't be < 1320519053 268493 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :what should I make it? < 1320519056 351941 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :but apparently it can be anyway, it's just undocumented < 1320519060 517262 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :heh < 1320519061 815321 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I made it a char array < 1320519067 732814 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :I'll make it NULL out of laze < 1320519069 431400 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :wait, you can pass arbitrary arguments to the fn with clone? < 1320519080 263410 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :and then there's three arguments /after/ the varargs? < 1320519085 383223 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :just the one void* < 1320519087 5911 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :it's not varargs < 1320519090 70720 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :oh, ok. < 1320519091 205437 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric : int flags, void *arg, ... < 1320519091 323293 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric : /* pid_t *ptid, struct user_desc *tls, pid_t *ctid */ ); < 1320519094 933320 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :that's still wtf though < 1320519098 545484 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :well, it is, but only to hide the fact that those three args are optional < 1320519103 272170 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :oh < 1320519106 794571 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :it's not ... as in varargs, but as in stdarg < 1320519113 958567 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :err, not stdarg < 1320519118 24672 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :whatever was used before varargs was invented < 1320519155 518984 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :incidentally, strace injects CLONE_PTRACE into other process's fork/clone calls too < 1320519159 6937 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :f(v)char**v;{execvp(v[1],v+1);} < 1320519159 106215 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :main(c,v)char**v;{setresuid(1000,1000,1000);printf("%d %d\n",clone(f,0,CLONE_PTRACE,v),getpid());sleep(100);} < 1320519165 410330 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :even changing fork to clone for that purpose < 1320519169 390896 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: heh < 1320519182 391980 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :(the interface is identical syscall-wise; just different in glibc) < 1320519200 888324 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: oh no, clone() is returning -1 < 1320519210 812337 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :perhaps you can't put NULL there < 1320519212 265942 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :in glibc < 1320519215 318967 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :just in the direct kernel syscall < 1320519216 632941 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :yeah, probably < 1320519219 657696 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :I'll allocate a char array < 1320519223 504871 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :how many bytes should it be, roughly? < 1320519231 984689 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :enough for one exec call < 1320519236 707430 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :so 100 will easily be enough < 1320519246 561135 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :make it 512 < 1320519247 17530 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :#define _GNU_SOURCE < 1320519247 174965 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :#include < 1320519247 234184 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :f(v)char**v;{execvp(v[1],v+1);} < 1320519247 286627 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :main(c,v)char**v;{char s[1024];setresuid(1000,1000,1000);printf("%d %d\n",clone(f,s,CLONE_PTRACE,v),getpid());sleep(100);} < 1320519248 953498 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :beautiful < 1320519259 542165 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :wait, you put it /on the stack/? < 1320519264 678424 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :make that thing static! < 1320519269 306559 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :[elliott@dinky weboflies]$ ls -lhd /proc/7739{,/fd} < 1320519269 427770 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :dr-xr-xr-x 8 elliott root 0 Nov 5 18:53 /proc/7739 < 1320519269 488819 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :dr-x------ 2 root root 0 Nov 5 18:53 /proc/7739/fd < 1320519269 541620 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :[elliott@dinky weboflies]$ ls -lhd /proc/7740{,/fd} < 1320519269 541777 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :dr-xr-xr-x 8 elliott root 0 Nov 5 18:53 /proc/7740 < 1320519270 223722 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :dr-x------ 2 elliott root 0 Nov 5 18:53 /proc/7740/fd < 1320519271 560807 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I'm not sure what happens if you put a stack on the stack < 1320519274 225939 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :but it seems sort-of wrong < 1320519276 299326 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: it works, apparently! < 1320519294 588321 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: OK, so now we have to figure out what weboflies is doing differently < 1320519306 2795 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: it's formatted slightly more sanely, for one < 1320519318 491669 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: try removing all whitespace < 1320519353 373860 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I doubt that'll matter < 1320519420 991440 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: am i meant to be reading weboflies.c here, or are you? :-) < 1320519493 503195 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I'm quite familiar with it already, and I'm trying to guess what's different < 1320519494 941668 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :from memory < 1320519517 113667 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :What does weboflies do? < 1320519549 848746 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: make people go insane < 1320519566 72971 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: also, catch flies < 1320519578 867754 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Cool. < 1320519584 920596 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :How does it go about the former? < 1320519613 922698 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Phantom_Hoover: by directly twiddling bits in their process's memory < 1320519615 796688 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: catching lots of bugs and then making people figure out what's causing them < 1320519619 753106 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :get it? < 1320519621 965797 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :flies are bugs!!!!!! < 1320519630 801396 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :webobugs < 1320519632 230430 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Ah. < 1320519632 838295 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :in ways that have a tendency to confuse Linux < 1320519820 901388 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :http://en.wikipedia.org/wiki/Lists_of_Zambia-related_topics < 1320519822 278865 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :I... < 1320519912 825531 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :airports, birds, settlements < 1320520193 457336 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :http://en.wikipedia.org/wiki/Talk:Lists_of_Zambia-related_topics < 1320520195 176805 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :least loved article < 1320520900 22246 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :i submit that the wikipedia list system will eventually evolve sentience when it becomes so complicated that it requires a TC kind/sort system. < 1320520913 865531 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric ::D < 1320520936 400268 :Vorpal!~AnMaster@unaffiliated/anmaster QUIT :Ping timeout: 260 seconds < 1320521271 832283 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :"Well, I usually use whatever comes handy, but I'm sure there are other approaches — like, for example, trying something almost unusable first. < 1320521276 257193 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :" < 1320521282 813883 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :seen on haskell-cafe < 1320521538 800511 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :heh < 1320522044 674497 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: any ideas about weboflies? < 1320522094 901533 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :no, I'm a little stumped < 1320522111 475061 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Gregor: OMG, the Node folks just keep on giving. Get this: ASYNCHRONOUS testing. http://vowsjs.org/ < 1320522114 199038 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Webscale tests! < 1320522115 119809 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :let me make sure it isn't a schrödingbug < 1320522177 369917 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :yep, it's working just fine for me, still < 1320522283 826181 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: I could give you root ssh access to a VM < 1320522387 87732 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: hmm, might help < 1320522395 862220 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :such a pity that weboflies repels debuggers < 1320522396 602747 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :we bo flies here < 1320522412 46944 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: ok, I'll set one up... you could set up your own VM, but I guess you don't have a recent iso handy < 1320522419 179510 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :right < 1320522428 364101 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I don't have a recent iso handy of /anything/ < 1320522433 422765 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :hmm, neither do I, but I can download one quickly < 1320522438 840895 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :it'll be a 32-bit vm to simplify things < 1320522449 969248 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :also, qemu, since I don't have VirtualBox installed < 1320522604 330411 :nooga!~nooga@maverick.aircity.pl QUIT :Ping timeout: 240 seconds < 1320522690 631259 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: right, I'll have a VM up in 15 minutes or so < 1320522727 83326 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I suppose I'm glad you aren't insane enough to give people you only know over the Internet root access to your main computer < 1320522758 494689 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: I was going to, but then I realised I didn't want you to have read access to ~ < 1320522777 574498 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :yes, that's probably a good idea ;) < 1320522789 563484 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :not giving me read access to ~ < 1320522791 112708 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :there should be something like root identical in every way except that they can't elevate to root or read directories with a certain special bit set < 1320522798 762742 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :(I'm amused that you don't mind me having /write/ access to ~, though) < 1320522812 506499 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: meh, the only thing you could do with that is trash things < 1320522837 406470 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :I've known people who literally have ~ accessible via http. < 1320522839 364518 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I could rewrite your .bashrc to change the perms on your home dir so that I could read them, I guess < 1320522848 632042 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :pikhq_: normish had / accessible via http < 1320522852 89431 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :but it wasn't really a normal system < 1320522861 496685 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: yes, but I don't think you /would/ do that :) < 1320522871 353112 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :IIRC, ams has that setup. < 1320522872 492206 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :(I don't really think you'd look at ~ either, but it's a bit too readily accessible for me to be happy about it) < 1320522886 57489 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :Of course, ams is anything but normal. < 1320522890 773537 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :right, and I'd feel uneasy having access to it even if I didn't use it < 1320522902 347075 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :hmm, home directories should be encrypted loopback filesystems < 1320522914 978767 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :problem: you'd have to type your private key in on every login < 1320522927 274299 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :I suppose password-encrypted would work, actually < 1320522934 72182 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :Well, you already have to type a password in on every login. < 1320522937 49859 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :right < 1320522953 435703 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :gah, I need a better name for my temporary stuff than ~/Temp < 1320522965 709168 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :(needs to be titlecased because ~/Code is permanently ingrained in my brain) < 1320522975 640210 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: how temporary? < 1320522982 235594 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: good question :) < 1320522984 704119 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I use /var/tmp for temporary stuff that needs to persist across reboots < 1320522987 747876 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :in this case, the VM HD in question < 1320522988 30737 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :and /tmp for other temporary stuff < 1320522998 325792 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :it's not so temporary that I want it in a system temporary directory < 1320523001 473360 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :oh, I probably would put that in /tmp < 1320523006 925669 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :but I won't feel any great loss if I rm -r ~/Temp < 1320523016 53442 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :hmm, ~/Junk is tempting < 1320523059 974552 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I have a specific directory for things that I want to keep around because they'd be time-consuming to redownload and reunpack, but are too large and unimportant back up < 1320523065 453216 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :*to back up < 1320523070 216874 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :that's /var/cache < 1320523085 766396 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :which is why downloaded packages are stored there < 1320523089 246197 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :well, OK < 1320523094 284784 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :but it's not quite the same as /var/cache < 1320523105 891897 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :it's things like the repo of gnome-games (with entire history) < 1320523109 15596 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :this is why my Keep system is best :) < 1320523112 265097 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :and my builds of it < 1320523115 399572 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :those would go in ~/Keep/YYYY-MM < 1320523119 476664 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :you don't normally build things in /var/cache, do you? < 1320523124 814115 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :indeed < 1320523139 89035 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :(2/3) installing vde2 [######################] 100% < 1320523139 251738 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Change /etc/conf.d/vde to your needs. < 1320523139 304153 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :vde config files should be placed in /etc/vde, sample files are provided. < 1320523139 304343 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :iptables and dhcpd sample files have been installed to '/usr/share/vde2'. < 1320523139 304453 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Merge those examples, if needed to the according config files. < 1320523140 89416 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :blahh, I hope qemu networking works without doing that < 1320523146 544604 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :I anticipate forwarding the ssh port to be a pain < 1320523154 662930 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :what's vde? < 1320523161 768006 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :a dependency of qemu < 1320523163 889903 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: reverse-tunnel from the VM outwards? < 1320523175 537833 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: I mean, exposing it on my local machine outside of the VM < 1320523182 381633 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :the default networking mode of most VM's doesn't do that < 1320523190 89838 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :right, I see < 1320523217 121157 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :[elliott@dinky Temp]$ qemu-img create weboflies.qemu2 4G < 1320523217 281521 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Formatting 'weboflies.qemu2', fmt=raw size=4294967296 < 1320523217 333923 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :[elliott@dinky Temp]$ ls -lh < 1320523217 334175 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :total 0 < 1320523217 334287 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :-rw-r--r-- 1 elliott users 4.0G Nov 5 19:59 weboflies.qemu2 < 1320523218 123213 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :turns out qemu2 =/= qcow2 < 1320523236 38532 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :[elliott@dinky Temp]$ qemu-img create -f qcow2 weboflies.qcow2 4G < 1320523236 140136 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Formatting 'weboflies.qcow2', fmt=qcow2 size=4294967296 encryption=off cluster_size=65536 < 1320523236 193202 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :[elliott@dinky Temp]$ ls -lh weboflies.qcow2 < 1320523236 193390 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :-rw-r--r-- 1 elliott users 193K Nov 5 19:59 weboflies.qcow2 < 1320523236 193497 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :better < 1320523245 316021 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: is it a sparse file? < 1320523252 314538 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: presumably; it created instantly < 1320523254 606696 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :for some weboflies test, I was using a sparse ext4 < 1320523264 242345 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :which is 4G notional size, but much smaller on disk < 1320523308 477486 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :It's not a sparse file as far as the underlying filesystem is concerned; the logic for doing that is in qemu itself for the qcow2 format. < 1320523383 925812 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :pikhq_: he was talking about the previous raw noe < 1320523384 534570 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :pikhq_: I meant in qemu2 < 1320523384 612813 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :one < 1320523387 741955 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: qcow2 < 1320523389 821414 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric ::D < 1320523400 27248 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: so one issue with sparse files is, that they don't decompress well < 1320523405 471473 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :Yeah, the raw format is just a naive sparse file. < 1320523414 288372 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :haha < 1320523414 664051 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :they compress just fine, but decompressing tends to actually write out all the zeroes < 1320523415 159413 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :ais523: tar -S < 1320523434 528902 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :pikhq_: that is good to know < 1320523441 974855 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :GNU tar records sequences of 0s so it can write it out as a sparse file again using that option. < 1320523452 568652 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :why isn't that default? < 1320523464 296867 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :elliott: It's a GNU-specific extension to the format. < 1320523476 202172 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :oh, it's at record time, not unpack time? < 1320523479 707072 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :Yeah. < 1320523480 432492 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :yes < 1320523482 714165 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :right < 1320523515 637579 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :When you unpack with a non-supporting tar, you basically get a file with a header describing the sparseness and a bunch of bits. < 1320523551 39684 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :IIRC the format was designed so that, at least in principle, you could use a small C program to unpack that. < 1320523673 29369 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: how much RAM will you need? :p < 1320523686 159782 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :only a few megabytes, to run tests < 1320523701 381730 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :I don't think Linux will even boot with that little :) < 1320523712 509856 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Man, Arch's installer is so slow and clunky. < 1320523715 860472 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :a few megabytes ... and then a gigabyte to boot the rest of the system < 1320523718 262693 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :There's a noticable delay after hitting any button. < 1320523728 878034 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: you're getting a jfs filesystem, hope you like it < 1320523739 705339 :oerjan!oerjan@sprocket.nvg.ntnu.no QUIT :Quit: Good night < 1320523744 725010 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :why jfs on a VM? < 1320523750 774687 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :just out of interest < 1320523757 447068 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :I like jfs :) < 1320523783 80632 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :had to make an ext2 /boot because arch's installer doesn't do grub2 :( < 1320523787 632033 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :or lilo, lilo would work too < 1320523799 474093 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :(seriously, lilo has much better filesystem support than grub1) < 1320523823 844327 :derrik!~xix@143.122.191.90.dyn.estpak.ee JOIN :#esoteric < 1320523858 828871 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :hmm, lilo doesn't have filesystem support at all, does it? < 1320523878 809966 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :of course it does; how else would it boot? < 1320523896 580360 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :by making a list of blocks to load when you install it, of course < 1320523918 662347 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :hmm, I'm pretty sure it supports reading filesystems nowadays < 1320523929 67542 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :I could always be wrong, though < 1320523946 993075 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :it was a long time ago I used lilo, it can have changed a lot since then < 1320524010 891992 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :elliott: It doesn't. < 1320524029 246941 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :pikhq_: well, the statement is still true then, lilo supports *every* filesystem! :) < 1320524043 529748 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Well, any filesystem that stores the kernel as contiguous raw bytes < 1320524067 710122 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :It records in the boot sector the location of a block of the disk that contains a list of blocks for each file it cares about. < 1320524075 581959 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :heh < 1320524084 2577 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :i.e. it doesn't even require the kernel be a series of contiguous raw bytes. < 1320524099 238394 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :can't do compression or encryption, though :) < 1320524104 241183 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :Right. < 1320524115 180631 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :nothing else did back then either, so that's just fine :) < 1320524132 334649 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :Slackware still *uses* lilo. < 1320524144 739626 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :I mean, it doesn't support any other bootloader. < 1320524148 667239 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :the ideal would be a bootloader that can use linux filesystem modules < 1320524155 657323 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :silly to duplicate all that effort < 1320524174 966547 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :i.e. using linux on a /boot partition as the boot loader? < 1320524194 425842 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :olsner: well, yeah :) < 1320524201 354550 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :why /can't/ linux boot itself? < 1320524211 147879 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :It can. kexec. < 1320524211 626676 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :I suppose the problem is you need the filesystem support to load the filesystem support < 1320524215 411093 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :but that's only a problem if it's not compiled in < 1320524219 585771 :nooga!~nooga@maverick.aircity.pl JOIN :#esoteric < 1320524230 349850 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :The issue is getting *a* Linux running in the first place... < 1320524232 107653 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :surely it'd not take much code to get linux to be installable outside of the FS < 1320524240 491357 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :you'd need a suitable boot sector, that's all < 1320524246 654095 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :Until 2.6 you could. < 1320524246 838459 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :it can/could/does build with a built-in boot sector < 1320524254 59737 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :Now I made the function "probNorm" to normalize a probability distribution using MonoidicT. < 1320524254 306689 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :what did 2.6 do? :( < 1320524262 445318 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :dd if=/boot/vmlinuz of=/dev/fd0 < 1320524267 755099 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :Removed the boot sector. < 1320524273 234026 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :lame < 1320524291 872197 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :I think it only booted from floppy, though. < 1320524306 391713 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :But it has to be a list, the monoid has to be a Ring and a MonoidPlusNorm and Eq, and the data has to be Ord. < 1320524327 660109 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :zzo38: you don't need a list < 1320524330 69772 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :see Data.Foldable < 1320524375 892257 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :elliott: OK, I will look. < 1320524385 57484 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :zzo38: I'd go for foldMap -- that lets you map every element of the structure to a monoid, then sums them all < 1320524397 199515 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :so you just take the function to turn it into a monoid (e.g. Sum) and extract the final value out < 1320524406 304601 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :but you could do foldr (+) 0 if you're boring :) < 1320524420 822457 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :actually < 1320524423 982872 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Data.Foldable.sum exists, so yeah < 1320524512 954732 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :The probNorm function does a whole bunch of stuff including sorting and combining entries, and removing zero probabilities (represented by values equal to mpempty) < 1320524650 101265 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: this VM is currently taking a really long time to calculate checksums < 1320524653 796256 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: I probably should have given it more RAM < 1320524679 14712 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :Yes there is Data.Foldable.sum but I am using it for any ring, so that won't work. < 1320524823 386121 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Yeah, just use the folds directly then < 1320525322 541237 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: the installer died at the hands of the OOM killer... < 1320525328 846711 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :ouch < 1320525332 572420 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :probably it does need more memory :) < 1320525338 886217 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :I'll do it again later :P < 1320525340 556405 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :cba right now < 1320526017 334792 :NihilistDandy!~ND@stu-225-155-171-184.champlain.edu JOIN :#esoteric < 1320527434 925455 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :`? welcome < 1320527437 41924 :HackEgo!foobar@codu.org PRIVMSG #esoteric :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 < 1320527439 701664 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :`? finland < 1320527442 16569 :HackEgo!foobar@codu.org PRIVMSG #esoteric :Finland is a European country. There are two people in Finland, and at least five of them are in this channel. Corun drives the bus. < 1320527444 542337 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :(turns out those are not the same word) < 1320527460 743685 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :`? elliott < 1320527462 510345 :HackEgo!foobar@codu.org PRIVMSG #esoteric :elliott wrote this learn DB, and wrote or improved many of the other commands in this bot. He probably has done other things? < 1320527469 416684 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Gregor wrote that. < 1320527473 467518 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :`? Gregor < 1320527475 855523 :HackEgo!foobar@codu.org PRIVMSG #esoteric :Gregor took forty cakes. He took 40 cakes. That's as many as four tens. And that's terrible. < 1320527485 932092 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :`? ai < 1320527487 422683 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :`? ais523 < 1320527487 549998 :HackEgo!foobar@codu.org PRIVMSG #esoteric :ai? ¯\(°_o)/¯ < 1320527489 732949 :HackEgo!foobar@codu.org PRIVMSG #esoteric :ais523 is ais523. This topic may retroactively become more informative if or when Feather is invented. < 1320527493 955708 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :`? Ph < 1320527495 826943 :HackEgo!foobar@codu.org PRIVMSG #esoteric :Ph? ¯\(°_o)/¯ < 1320527496 100806 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :`? Phantom_Hoover < 1320527498 678911 :HackEgo!foobar@codu.org PRIVMSG #esoteric :Phantom_Hoover? ¯\(°_o)/¯ < 1320527505 472696 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :I keep forgetting to hit tab. < 1320527515 684154 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :`? EgoBot < 1320527517 367133 :HackEgo!foobar@codu.org PRIVMSG #esoteric :EgoBot? ¯\(°_o)/¯ < 1320527522 723066 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :`? fungot < 1320527522 864821 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :`? friendship < 1320527523 314965 :fungot!~fungot@momus.zem.fi PRIVMSG #esoteric :Phantom_Hoover: is not often that he returns empty-handed. he knows where the old slope holds unchanged the fine estates and bits of walled garden and crystal < 1320527524 542737 :HackEgo!foobar@codu.org PRIVMSG #esoteric :fungot? ¯\(°_o)/¯ < 1320527528 926597 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :`? friendship < 1320527531 101446 :HackEgo!foobar@codu.org PRIVMSG #esoteric :friendship wisdom < 1320527539 376424 :HackEgo!foobar@codu.org PRIVMSG #esoteric :friendship wisdom < 1320527541 140955 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :How do I add things < 1320527554 686650 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :`? CakeProphet < 1320527556 744846 :HackEgo!foobar@codu.org PRIVMSG #esoteric :​:> < 1320527562 445438 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :`? tiffany < 1320527564 278351 :HackEgo!foobar@codu.org PRIVMSG #esoteric :tiffany? ¯\(°_o)/¯ < 1320527572 810448 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :`? augur < 1320527574 562130 :HackEgo!foobar@codu.org PRIVMSG #esoteric :augur took no cakes. < 1320527576 756108 :tiffany!~kawaii@fl-76-3-17-148.dhcp.embarqhsd.net PRIVMSG #esoteric :wha? < 1320527800 249156 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric : How do I add things < 1320527803 159695 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :learn to `learn < 1320527900 548162 :Gregor!foobar@codu.org PRIVMSG #esoteric :HELLO BEAUTIFUL SEXY NEW COMPUTER < 1320527912 568900 :Gregor!foobar@codu.org PRIVMSG #esoteric :$ df -h . < 1320527914 570716 :Gregor!foobar@codu.org PRIVMSG #esoteric :Filesystem Size Used Avail Use% Mounted on < 1320527916 575602 :Gregor!foobar@codu.org PRIVMSG #esoteric :/dev/sda1 2.7T 7.2G 2.6T 1% / < 1320527918 594494 :Gregor!foobar@codu.org PRIVMSG #esoteric :Awwwwwwww yeaaaaaaaaaaah < 1320527934 313595 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :7.2GB used? omg the bloat < 1320527986 355012 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Gregor: mount | grep sda1 < 1320528033 368463 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :`learn you a haskell < 1320528035 293690 :HackEgo!foobar@codu.org PRIVMSG #esoteric :I knew that. < 1320528037 591224 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :`? you < 1320528039 161430 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :`? you < 1320528039 743630 :HackEgo!foobar@codu.org PRIVMSG #esoteric :you a haskell < 1320528041 167495 :HackEgo!foobar@codu.org PRIVMSG #esoteric :you a haskell < 1320528044 316573 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :You so a Haskell. < 1320528063 672713 :Gregor!foobar@codu.org PRIVMSG #esoteric :elliott: ... why? < 1320528079 215569 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Gregor: Because I bet you're using a Wrong Filesystem, and I want to insult your computer on that basis. < 1320528103 837032 :Gregor!foobar@codu.org PRIVMSG #esoteric :I'm using ext4. LOLOL IT DON'T SCALE I PREFER MURDERFS < 1320528107 229313 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :`learn fungot cannot be stopped by that sword alone. < 1320528108 530893 :fungot!~fungot@momus.zem.fi PRIVMSG #esoteric :Phantom_Hoover: when age fell upon the world whenever another earthquake shall heave their monstrous stone city again to the pit, all fnord by a white god might prove valuable to the ethnologist. in his lonely farmhouse. he was writhing under the bedclothes, and a sprinkling of crumpled papers. it was inside this circle that the ring of fire. < 1320528109 600786 :HackEgo!foobar@codu.org PRIVMSG #esoteric :I knew that. < 1320528113 820373 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :`? fungot < 1320528115 89800 :fungot!~fungot@momus.zem.fi PRIVMSG #esoteric :Phantom_Hoover: that such regions in truth existed, seemed amply clear from many things. faint cries and groans unmistakably came up now and then he shut him in an attic room across the hall. all i could, and watched for the lights to come up early the next day with little old matthew fenner, whose grave was not very likely to be fnord fnord, < 1320528115 807093 :HackEgo!foobar@codu.org PRIVMSG #esoteric :fungot cannot be stopped by that sword alone. < 1320528118 341515 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :he's probably using one of the boring default ones, like ext4 < 1320528123 125577 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :^style < 1320528123 704321 :fungot!~fungot@momus.zem.fi PRIVMSG #esoteric :Available: agora alice c64 ct darwin discworld europarl ff7 fisher fungot homestuck ic irc jargon lovecraft* nethack pa sms speeches ss wp youtube < 1320528141 789718 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au JOIN :#esoteric < 1320528145 679611 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Gregor: Nah, ext4 probably scales just fine, it's just intended obsolete by design :) < 1320528155 651386 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :it's as if he'd rather want a working filesystem than a cool one < 1320528168 338004 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Gregor: Hope you're happy when its authors decide we're ready for btrfs, which ext4 is meant as a transition to! Enjoy yer Oracle < 1320528195 389676 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :MurderFS is what is also known as ReiserFS, right? < 1320528206 523023 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :olsner: I'm so glad serious people like IBM don't use the 12-year-old filesystem I use. < 1320528228 704462 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :elliott: hmm, which one was that? JFS? < 1320528233 434140 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :yeah < 1320528240 713846 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :actually 21 years old, but JFS2 is 12 years old < 1320528265 429990 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :the filesystem i turn to when i want coolness is nilfs2 :P < 1320528270 407977 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :hah, OS/2 had JFS support :D < 1320528279 827749 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :it's where it originated :P < 1320528300 431277 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PART #esoteric :"Leaving" < 1320528304 311974 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 JOIN :#esoteric < 1320528318 585934 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :I always assumed it came from AIX or at least that it never existed at the same time as OS/2 < 1320528368 609987 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :They first shipped it for OS/2 in 1999. < 1320528381 58328 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :OS/2, of course, lasted a *lot* longer than it had any right to. < 1320528407 573447 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :The Linux version is a port of the OS/2 version. < 1320528846 185137 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :ACTION reads about Eclipse's new language Xtend < 1320528866 554451 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :as far as I can tell, it's basically Java plus all the syntactic sugar they could think of < 1320528879 892404 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :although "whitespace inference" is a bit bizarre < 1320528880 279806 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :haha < 1320528886 135084 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :wait, what? < 1320528897 851121 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :when you have a string with a bunch of interpolations in < 1320528901 731296 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric : They first shipped it for OS/2 in 1999. < 1320528906 643521 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :then you might want to put whitespace around the interpolations < 1320528909 343768 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :oh, hmm < 1320528912 777385 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :which doesn't go in the string < 1320528917 28866 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :elliott: Yes, OS/2 lasted fucking *ages*. < 1320528917 657020 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :olsner: looks like JFS1 was AIX in 1990, and JFS2 was OS/2 in 1999 < 1320528925 768387 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: weird < 1320528933 129009 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :so it figures out whether the whitespace is meant to be part of the string, or is just there for indentation < 1320528946 985366 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: oh, I see < 1320528947 249107 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :and Eclipse syntax-highlights which is which, obviously < 1320528948 718994 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :Actually, make that "has lasted". < 1320528954 10088 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :which doesn't go in the resulting string, not which doesn't go in the source string < 1320528961 744017 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :IBM sold it off, but it's still actively developed. < 1320528963 195168 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :I thought "x${y}z" would become "x foo z" or something < 1320528965 745196 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :with y="foo" < 1320528980 115366 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :ah, I see < 1320528984 412376 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :you're thinking of Perl 6, there < 1320529021 139373 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :Hell, it's even vaguely usable still; Firefox, OpenOffice, VLC, et al. have maintained ports. < 1320529093 239595 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :pikhq_: I think the same applies to AmigaOS 4 :-) < 1320529161 822813 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :... The fuck? < 1320529172 473359 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :eComStation's sound stack is a port of ALSA. < 1320529178 879095 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :X-D < 1320529280 325418 :nooga!~nooga@maverick.aircity.pl QUIT :Quit: leaving < 1320529325 171954 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :[elliott@dinky Temp]$ qemu -m 1024 -hda weboflies.qcow2 -cdrom ~/Downloads/archlinux-2011.08.19-netinstall-i686.iso -boot c < 1320529325 327628 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Failed to allocate 1073741824 B: Cannot allocate memory < 1320529325 380582 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Aborted < 1320529327 51059 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: wait, what? < 1320529344 66780 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :clearly it was trying to allocate 1GB of memory < 1320529345 884418 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :-/+ buffers/cache: 3190 613 < 1320529352 36793 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :hmm... why is all my RAM used up? < 1320529356 998349 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :at least, that looks around 1GiB, I'm not sure if it's exact as I don't have it memorized < 1320529363 313318 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION checks how to sort by RAM in topa gain < 1320529366 931480 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :s/topa /top a/ < 1320529373 275407 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :(I have to look it up every time I want to do it) < 1320529379 177654 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :M < 1320529381 807035 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: that would be the -m 1024 part < 1320529392 608319 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: I just use < and > after loading top < 1320529394 788408 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :olsner: gah, I think it's counting virtual memory < 1320529399 569767 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :they changes the sort order < 1320529405 892303 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :olsner: can I count physical memory? < 1320529407 926172 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :and it's normally reasonably obvious what they're sorting by right now by inspection < 1320529409 658908 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: *change < 1320529413 64790 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :err, yes < 1320529441 626734 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :elliott: hmm... I thought it sorted by RSS or something, at least not VSIZE < 1320529453 715619 :nooga!~nooga@maverick.aircity.pl JOIN :#esoteric < 1320529506 631569 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :oh, killall chromium actually solved the problem < 1320529557 572449 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: I'm surprised qemu's allocation actually /failed/, though < 1320529562 430791 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :I'm pretty sure I have overcommit on < 1320529577 742316 :nooga!~nooga@maverick.aircity.pl PRIVMSG #esoteric :how would you process ruby source files containing classes? discovering/adding/removing class contents < 1320529582 838635 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :qemu might be asking to commit that memory < 1320529589 680833 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :nooga: awk < 1320529598 808540 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :olsner: hmm, how do you do that? < 1320529604 386216 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :nooga: or sed, at a pinch < 1320529623 873914 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :there's a flag to mmap for that, MAP_LOCK or something < 1320529632 444702 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: well an alloc that large would be mmaped < 1320529643 256717 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :mmap overcommits too < 1320529660 56617 :nooga!~nooga@maverick.aircity.pl PRIVMSG #esoteric :hmm < 1320529673 130197 :nooga!~nooga@maverick.aircity.pl PRIVMSG #esoteric :i tried with ruby ParseTree and sexp_processor < 1320529677 429833 :nooga!~nooga@maverick.aircity.pl PRIVMSG #esoteric :and ruby2ruby < 1320529694 139117 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :nooga: congratulations, you successfully overthought the problem in an insufficiently reflective language < 1320529695 897564 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: MAP_POPULATE requests prefaulting < 1320529700 570549 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: fair enough < 1320529707 123991 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I just went and looked it up < 1320529718 674898 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :and ofc, if you're overcommitting but prefaulting is requested, then you can tell something's worng < 1320529720 35821 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :*wrong < 1320529721 773546 :nooga!~nooga@maverick.aircity.pl PRIVMSG #esoteric :elliott: ruby is quite reflective at runtime < 1320529726 511725 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I doubt qemu /would/ be prefaulting, though, it has no reason to do so < 1320529732 835275 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :nooga: no it's not, at least not in the right sense < 1320529738 490244 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ruby provides no access to its ast whatsoever < 1320529791 490813 :nooga!~nooga@maverick.aircity.pl PRIVMSG #esoteric :ParseTree takes a method or class and throws it's sexp representation in your face < 1320529807 888760 :nooga!~nooga@maverick.aircity.pl PRIVMSG #esoteric :you can mess with sexp and then translate it to ruby again < 1320529818 943103 :nooga!~nooga@maverick.aircity.pl PRIVMSG #esoteric :its* < 1320529823 112274 :nooga!~nooga@maverick.aircity.pl PRIVMSG #esoteric :i will never learn < 1320529829 773125 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Ruby: because we think every AST is a sexp! < 1320529850 48248 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :isn't parse_tree by zenspider < 1320529855 911642 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :I can't imagine his software is any more tolerable than himself < 1320530102 16095 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: haha, wow, apaprently the Calibre website says "Please do not use your distribution provided calibre package, as those are often buggy/outdated. Instead use the Binary install described below." < 1320530110 691490 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :*apparently < 1320530123 254280 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: beautiful < 1320530126 542886 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :"As I suspected, you're in this not to contribute something to the community, but as a destructive influence." ;; ooh, this keeps getting better and better < 1320530127 122189 :edne!~rammen987@c-cba6e455.73-0015-74657210.cust.bredbandsbolaget.se JOIN :#esoteric < 1320530135 334363 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :(after he gives up on writing exploits because the guy keeps patching it) < 1320530136 287105 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :hi edne < 1320530137 484058 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :`? welcome < 1320530139 909507 :HackEgo!foobar@codu.org PRIVMSG #esoteric :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 < 1320530145 395012 :edne!~rammen987@c-cba6e455.73-0015-74657210.cust.bredbandsbolaget.se PRIVMSG #esoteric :elliott: hi < 1320530220 882406 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: haha: "Well, if you do not wish to help, that leaves me with no choice but to remove the mount helper." < 1320530253 746578 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: (this is /after/ one of them supplies a drop-in replacement patch using the udisk script Ubuntu uses) < 1320530293 58941 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :"@Dan: You were on my ignore list, which meant I never saw your exploit" ;; lmao < 1320530298 968864 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :this is definitely the best bug report I've read < 1320530312 455064 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :can you link it again? < 1320530318 987198 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :given that I assume you're there atm < 1320530323 209296 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :https://bugs.launchpad.net/calibre/+bug/885027 < 1320530328 741210 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :good luck trying to find your previous position < 1320530529 662260 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I found it pretty easily, actually < 1320530544 148582 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :by skimming for the comment I remembered being at the end < 1320530606 142831 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :http://www.ciclops.org/view_media/34501/Catching_Its_Tail%253Fjs%253D1?js=1 < 1320530607 988420 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Whoa. < 1320530815 640821 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Oh, I just realised that the line in the middle is the rings. < 1320530824 481730 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :I thought it was some weird formatting bug. < 1320530832 340680 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: I like the guy who signs every comment with " of the GNAA." like it's a Ph.D. < 1320530836 101883 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric : Please note that I misjudged just how broken this code is < 1320530843 337106 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: X-D < 1320530867 781692 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: What is it with planets looking so cool. < 1320530887 783383 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: (OK this is bias in the form of how cool the Earth looks seeming mundane.) < 1320530893 319875 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :got to the end and now it says "Displaying first 40 and last 40 comments." < 1320530920 173916 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :olsner: heh < 1320530922 165046 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :elliott, have you seen pictures of the Earth from space? < 1320530927 883753 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: Phantom_Hoover: (OK this is bias in the form of how cool the Earth looks seeming mundane.) < 1320530934 231356 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :there went all sense of accomplishment from getting to the end < 1320530954 617829 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Ah, I was confused by your insane grammar. < 1320530978 472198 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :olsner: um it inserts "N comments hidden" inline < 1320531008 241236 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :(I think the best demonstration of the 60s is that TOS episode where they had a completely cloudless Earth because /nobody had seen a picture of it from space/. < 1320531010 517583 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :*) < 1320531020 116926 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :c) Has the full right to be proud of his work and initially doubt and/or question vulnerability reports from an unknown source < 1320531032 291562 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :I didn't read those "comments hidden" blocks since they weren't formatted as comments :) < 1320531032 931564 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :An unknown source that gives source-format exploits. < 1320531047 145157 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: Oh man, that would be cool to see. < 1320531078 120308 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :I think IWC had an annotation on the matter. < 1320531092 895258 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: It's simultaneously weird at what a relatively high level of tech we were at in the 60s and still not having been to space, and weird that we managed to go to space on the tech level of the 60s. < 1320531106 660282 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :(You think my grammar is insane, try THAT one out for size.) < 1320531161 118088 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :"Standby and I'll update the exploit for your latest fix" :> < 1320531163 424148 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :elliott, I think it's even weirder that navigational computers could be fitted into a spacecraft less than thirty years after someone had the bright idea of building one of these computer things. < 1320531173 568264 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: the best part is people claiming it's secure because it's not used if you have udisks installed < 1320531182 598186 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: despite it /still being installed/ < 1320531200 448113 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: That's... pretty unbelievable when stated like that. < 1320531215 665516 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: I think I know the reason we haven't gone back to the moon yet, it's because it worked like flying does in H2G2. < 1320531218 837318 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :thirty years is a long time, though < 1320531222 176223 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :We only managed it because we hadn't realised how bloody hard it was. < 1320531239 849857 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I'm less than 30 years old; and a lot's happened in technology in my lifetime < 1320531244 428360 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Or maybe because the Russians couldn't be allowed to get there first? < 1320531258 143810 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: OTOH, the further you go back, the fewer advances technology makes in 30 years... < 1320531262 345704 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :ais523, oh man, I honestly remember being introduced to the web. < 1320531273 511321 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :what massive technological advancements happened 1210-1240? < 1320531291 588130 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :(I bet that date span I just made up contained the invention of something of huge magnitude by sheer coincidence.) < 1320531292 205725 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :elliott, careful, that way lies mainly Kurzweil. < 1320531299 554867 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :hmm; I think it's to do with the speed of communication < 1320531310 952918 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :"Colossus was the world's first electronic programmable computer." < 1320531312 442418 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: Oh come on, it's undeniable that the rate of change /has/ increased rapidly in recent history. < 1320531313 374489 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :without good communication technology, technological advances have to be made again and again and again < 1320531324 466213 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :elliott, yeah, unquestionably. < 1320531332 458986 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: That's not the same as "also, it's going to increase exponentially in the next like ten years and then we'll be friendship computers". < 1320531346 109104 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :It was a joke. < 1320531355 390711 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: YOU COMPARED ME TO KURZWEIL THAT WILL NEVER BE A JOKE < 1320531356 257223 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION sobs < 1320531358 380284 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :"In Song Dynasty China and the classical Islamic world, this century marked the high point for both classical Chinese civilization, science and technology, and classical Islamic science, philosophy, technology and literature." < 1320531376 692582 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :elliott, your anti-11th-centur— wait 1200s are the 13th. < 1320531380 321498 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: FML < 1320531382 813725 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Oh good. < 1320531386 277436 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :That's still nothing compared to the craziness that was the 20th century. < 1320531393 625348 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Yeah nothing happened then. < 1320531409 986433 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :pikhq_, sorry, you're not allowed to comment after that stupid thing you said about the Dark Ages once. < 1320531410 78891 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :July 17 – Former king Sverker the Younger of Sweden is defeated and killed by present king Erik Knutsson of Sweden in the Battle of Gestilren. < 1320531420 468509 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: Wow, Erik Knutsson must be really old if he's the present king. < 1320531424 981439 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :Phantom_Hoover: I said something about the Dark Ages? < 1320531425 213559 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :If Swedes died in it, it's all right with me. < 1320531432 187143 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: Also the middle ages never happened OK. < 1320531463 598910 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :http://en.wikipedia.org/wiki/Timeline_of_historic_inventions#13th_century < 1320531466 17310 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Aahahahaha < 1320531469 587474 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Worst century. < 1320531469 640041 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :http://upload.wikimedia.org/wikipedia/commons/c/c9/Hommage_of_Edward_I_to_Philippe_le_Bel.jpg ;; wow this is the worst interior design. < 1320531474 727574 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :We started the century having basically figured out industry, and ended it with flight, computers, networking, nuclear power, and an insane pile of science. < 1320531475 518704 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :"al-Jazari's automata" < 1320531481 683619 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: Paper mill ain't bad! < 1320531485 618803 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :pikhq_, you forgot the space! < 1320531491 164650 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: OTOH that's 100 years, not 30. < 1320531502 671904 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Pfft, it's just a normal mill with paper. < 1320531504 737559 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Derivative. < 1320531506 301949 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: omg "The first confirmed record of a press appeared in a 1439 lawsuit against Gutenberg." < 1320531511 558521 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :Also, yes, we got spaceflight and satellites. < 1320531512 778421 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Superinjunctions! < 1320531512 891155 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :http://en.wikipedia.org/wiki/Al-Jazari#Automata < 1320531519 62854 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Actually this looks pretty cool. < 1320531520 890689 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :Which system do you prefer: degrees or zodiac or hours? < 1320531530 645460 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :zzo38: Radians. < 1320531532 820088 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: OMG robot band. < 1320531546 310747 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :pikhq_, which computers totally ruined (note: opinion derived from Project Rho, probably wrong). < 1320531565 463178 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: Wow, that timeline of historic inventions' entire list for the 20th century is "the web". < 1320531569 358271 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :What's up with that. < 1320531570 941244 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :(There was also probably something about how it would have all been great if Asians had done it which I trimmed out.) < 1320531579 739133 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :elliott: Because nothing else matters. < 1320531589 206554 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :pikhq_: Tell me you're not being serious. < 1320531589 353829 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :elliott, it takes the confused.com attitude towards history. < 1320531603 514129 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :elliott: That's the most heavily sarcastic thing I have said in memory. < 1320531606 363313 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :elliott: remove that and replace it with a link to wikipedia, the pinnacle of human achievement < 1320531606 473516 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :pikhq_: O, OK. However, Astrolog does not support that format. But if I write such a program, possibly I will include that option. < 1320531608 656913 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: You fuckwit, I just heard that ad play out in my head. < 1320531609 732991 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Man, this article is so terrible. < 1320531614 567673 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :pikhq_: OK good. < 1320531636 808614 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: Maaan, it just reminded me that we STILL haven't replicated greek fire yet. < 1320531639 624305 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Somebody get on that??? < 1320531645 165745 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :elliott, dude, napalm. < 1320531647 536850 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :I want to the world's best hooligan??? < 1320531661 234990 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :We mightn't be able to /replicate/ it, but we can do a hell of a lot bette. < 1320531663 7174 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :*better < 1320531667 404172 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: I don't WANT better. < 1320531675 705741 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :http://upload.wikimedia.org/wikipedia/commons/2/25/Hand-siphon_for_Greek_fire%2C_medieval_illumination.jpg < 1320531677 199203 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Look at this guy. < 1320531687 825814 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :This guy is standing on a seriously structurally unsound battleground. < 1320531690 288772 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :He does look pretty awesome. < 1320531693 216875 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :He doesn't even GIVE a shit. < 1320531700 465731 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Also wow how tall is that thing. < 1320531702 912624 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Particularly how his tower is just like "FUCK YOU GRAVITY". < 1320531718 604241 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: I like how the castle looks like it was drawn by a five year old. < 1320531725 154499 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Including the two-dimensional bits at the top whose name I don't know. < 1320531733 331129 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :elliott, do you know nothing about art history? < 1320531747 528275 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: Do you know nothing about the history of manuscripts authored by five-year-olds. < 1320531751 281617 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :JUST SAYING? < 1320531754 92981 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :(Astrolog is set to zodiac signs by default, but it can use hours and degrees too. I set it to degrees; but astronomers who want to measure right ascension will probably use the hours format. Astrologers probably want to use the default setting for zodiac (which is probably why it is the default).) < 1320531757 591471 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :It's basically "art was all drawn by five-year-olds until the Renaissance when they finally worked out how to draw actual things". < 1320531778 97094 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Also they're crenellations you fool. < 1320531783 584315 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :Phantom_Hoover: Not actual five-year-olds. < 1320531791 960279 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :Just people with all the aesthetic sense of five-year-olds. < 1320531797 325850 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :http://upload.wikimedia.org/wikipedia/commons/2/2f/Hand-siphon_for_Greek_fire%2C_medieval_illumination_%28detail%29.jpg < 1320531800 792445 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :Also, that's an exclusively European phenomenon. < 1320531800 845293 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: OK seriously I want one of those. < 1320531806 805185 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :pikhq_, clap clap clap, ur decetefivte < 1320531987 596613 :quintopia!~quintopia@unaffiliated/quintopia QUIT :Ping timeout: 245 seconds < 1320532051 400739 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :Although there are many correct arguments against astrology, there are also some wrong ones, such as this one: http://jyte.com/cl/if-you-must-do-astrology-you-should-at-least-get-the-position-of-the-sun-correct Some lists have both correct and wrong ones. They really should learn better before writing such wrong things. < 1320532076 76780 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :If you say the sun is yellow due to 2+2=3, then you can get a correct conclusion even though you are making the wrong arguments for such things! < 1320532317 551216 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :http://en.wikipedia.org/wiki/Early_thermal_weapons < 1320532332 918865 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :'Thermal weapon' is apparently a euphemism for 'setting fire to stuff'. < 1320532374 7334 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :"War without fire is like sausages without mustard" < 1320532376 697229 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :I like this man. < 1320532492 218715 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: PH how is dynamite so modern. < 1320532503 224083 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :"A boy without mischief is like a bowling ball without a liquid center." "A gleekzorp without a tornpee is like a quop without a fertsneet (sort of)." "A man without religion is like a fish without a bicycle." "A computer without COBOL and Fortran is like a piece of chocolate cake without ketchup and mustard." < 1320532503 981436 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :I don't know? < 1320532518 828262 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: Like what did we even do for fun before then. < 1320532529 827886 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Gunpowder. < 1320532539 294830 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Which isn't even a high explosive. < 1320532585 52393 :quintopia!~quintopia@74.117.159.204 JOIN :#esoteric < 1320532585 104762 :quintopia!~quintopia@74.117.159.204 QUIT :Changing host < 1320532585 104895 :quintopia!~quintopia@unaffiliated/quintopia JOIN :#esoteric < 1320532597 387636 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :Do you prefer cake with ketchup and mustard, or with fire and gunpowder? < 1320532651 184731 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Fire and gunpowder. < 1320532655 671098 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Gunpowder smells nice. < 1320532668 865009 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :"People exposed to TNT over a prolonged period tend to experience anemia and abnormal liver functions. Blood and liver effects, spleen enlargement and other harmful effects on the immune system have also been found in animals that ingested or breathed trinitrotoluene. There is evidence that TNT adversely affects male fertility, and TNT is listed as a possible human carcinogen." < 1320532688 283116 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :I remember when one of the staircases in the school science building smelt of it for days because of What The Sixth Years Did. < 1320532689 1569 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: We should start just, like, putting TNT into the water supply of countries we don't like. < 1320532697 232706 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Then they will all become infertile and blow up?? < 1320532714 421259 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :I think it's stable in solution or something? < 1320532728 29470 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :I think you are not supposed to put TNT into the water supply. < 1320532743 632970 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :zzo38: oh, OK then. < 1320532749 845702 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Also TNT is quite hard to blow up anyway. < 1320532760 527775 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :TNT contains 4.184 megajoules per kilogram. < 1320532765 34360 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: Dammit when did we start using TNT for explosives. < 1320532767 724550 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Add " as appropriate. < 1320532772 803034 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :if not TNT, what *are* you supposed to put in the water supply? < 1320532781 830825 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :olsner: Hydroxic acid. < 1320532783 475349 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: What weren't you allowed to do because of the sixth years again? < 1320532787 488009 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Huh, that's almost exactly 1000 times the heat capacity of water. < 1320532798 236482 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :elliott, get chemicals which we didn't explicitly need. < 1320532799 649756 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :TNT = explosive water. < 1320532818 637451 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :You also need to put dihydrogen monoxide. < 1320532831 383399 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :It was first synthesised in 1863, and was used as a dye. < 1320532905 255012 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :http://en.wikipedia.org/wiki/File:Sailor_Hat_Shot.jpg < 1320532911 869397 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :It's... like Minecraft in real life. < 1320532994 151070 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: Man, and that was from the days where clicking TNT would blow it up. < 1320533001 181100 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :They must have been really careful. < 1320533036 854410 :MSleep!~fyrc@c-174-55-44-190.hsd1.pa.comcast.net JOIN :#esoteric < 1320533075 587830 :sllide!~jari@ip565eb113.direct-adsl.nl QUIT :Read error: Connection reset by peer < 1320533099 128814 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :zzo38: "hydroxic acid" = water? < 1320533100 459264 :sllide!~jari@ip565eb113.direct-adsl.nl JOIN :#esoteric < 1320533230 225664 :MDude!~fyrc@c-174-55-44-190.hsd1.pa.comcast.net QUIT :Ping timeout: 240 seconds < 1320533242 156742 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :ais523: Yes < 1320533250 476241 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: what's your favourite locale? < 1320533290 540352 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :en_GB.UTF8 < 1320533293 76064 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :or however it's spelt < 1320533320 453009 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :Why not en_US.SJIS? :P < 1320533327 873146 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: your wish is my command; what's your favourite hostname < 1320533339 697373 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: I normally use biomes as hostnames < 1320533349 262978 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :But there are only like five of them! < 1320533351 638723 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :(Bad Minecraft joke.) < 1320533368 303720 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: Is there a biome where everything is miniature and also in a VM. < 1320533441 288131 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :so as this one won't be around long, let's use "glacier", which isn't a biome but would be if more things lived there < 1320533441 340567 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :and which is also rapidly melting < 1320533441 535536 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :What about mushroom? < 1320533451 853538 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :not as far as I know < 1320533506 995544 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Mushrooms aren't rapidly melting, Phantom_Hoover. < 1320533519 212434 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION usually calls VMs matryoshka because he thought of it once and then never stopped using it. < 1320533524 576854 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :It's a pain to spell, though. < 1320533570 231490 :MSleep!~fyrc@c-174-55-44-190.hsd1.pa.comcast.net QUIT :Read error: Connection reset by peer < 1320533582 576387 :MSleep!~fyrc@c-174-55-44-190.hsd1.pa.comcast.net JOIN :#esoteric < 1320533588 665005 :MSleep!~fyrc@c-174-55-44-190.hsd1.pa.comcast.net NICK :MDude < 1320533682 210400 :NihilistDandy!~ND@stu-225-155-171-184.champlain.edu QUIT :Quit: http://haskell.org < 1320533752 225909 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :elliott: luckily, I think cyrillic transliterations are varied enough that almost any spelling can be correct < 1320533757 145426 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :"correct" < 1320533771 955965 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :I'm not sure exactly how to pronounce it, either :) < 1320533792 514236 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :in russian, obv. < 1320533809 58660 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :let's see... Матрёшка < 1320533812 928508 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :mat puker < 1320533853 151321 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :matpuker, much easier to spell < 1320533891 59225 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Huh, nobody told me Chrome does RSS now. < 1320533907 480242 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :a matpewka in the pectopah < 1320533923 373533 :sebbu!~sebbu@unaffiliated/sebbu QUIT :Read error: Connection reset by peer < 1320533944 763802 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: weboflies would work in Xen, right? < 1320533945 589763 :sebbu!~sebbu@ADijon-152-1-33-211.w83-194.abo.wanadoo.fr JOIN :#esoteric < 1320533946 86369 :sebbu!~sebbu@ADijon-152-1-33-211.w83-194.abo.wanadoo.fr QUIT :Changing host < 1320533946 138938 :sebbu!~sebbu@unaffiliated/sebbu JOIN :#esoteric < 1320533950 578563 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: I don't see why not < 1320533957 396044 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :unless it triggers entirely different kernel bugs there < 1320533964 324721 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :I doubt it, it's just drivers < 1320533972 806232 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: and oh no, that means I've had another "if I was using Kitten..." moment. < 1320534140 891096 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: [elliott@dinky Temp]$ qemu -m 1024 -hda weboflies.qcow2man -net nic -net user,hostfwd=tcp::2222:22 < 1320534143 759515 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: let's hope this works < 1320534145 583499 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :oops, s/man// < 1320534168 682709 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :qemu: -net user,hostfwd=tcp::2222:22: Device 'user' could not be initialized < 1320534170 98703 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :oh good < 1320534181 216573 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :aha < 1320534183 610201 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :needs a - after 2222 < 1320534271 996714 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: libpng is the only dependency I need, right? < 1320534308 444528 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: yes < 1320534317 103245 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :well, barring the obvious, like glibc < 1320534324 995670 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :Save the others: Eat yourself! < 1320534329 748052 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ok /me eats self < 1320534337 437373 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: lol, the arch "emacs" package depends on gtk < 1320534355 793872 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Debian has both gtk and non-gtk versions, I think; IIRC both are installed here < 1320534375 870055 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :seems there's no alternative, sigh < 1320534388 587574 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :I'll just let it install gtk < 1320534389 156033 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :to Emacs? < 1320534395 78831 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: to the main package < 1320534399 655228 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :does vim depend on gtk too? that'd be really hilarious < 1320534400 950744 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :it's only a 70 meg download < 1320534404 313897 :Deewiant!~deewiant@cs27125254.pp.htv.fi PRIVMSG #esoteric :Congrats, you're the only Arch user of emacs that doesn't want gtk < 1320534404 785766 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :one that would go much faster with kitten... < 1320534415 412390 :Deewiant!~deewiant@cs27125254.pp.htv.fi PRIVMSG #esoteric :ais523: No, there's a separate gvim package < 1320534419 788376 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :it really irks me to see it download a bunch of few-hundred-kilobyte packages and pause noticably between them < 1320534422 96524 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Deewiant: The only? < 1320534431 950462 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Plenty of people use Emacs from the console < 1320534441 227073 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :even I do sometimes < 1320534445 806513 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :mostly when I'm termcasting for vim users < 1320534445 874164 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Arch has a lot of people who work from the console so I'd be very surprised if nobody would want it < 1320534456 399986 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: hahaha < 1320534468 693960 :Deewiant!~deewiant@cs27125254.pp.htv.fi PRIVMSG #esoteric :I was just referring to how there doesn't seem to be even an AUR package for non-gtk emacs < 1320534476 111392 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Deewiant: heh < 1320534477 617958 :Deewiant!~deewiant@cs27125254.pp.htv.fi PRIVMSG #esoteric :I may've missed it though, there's a lot of emacs packages < 1320534499 4643 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Deewiant: you think it'd be easy, arch does tons of optional dependencies by just letting things break without them; all it'd take is some logic to make -nw be default if the gtk libs can't be found < 1320534514 344880 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :I guess it'd have to load them dynamically too < 1320534523 212389 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :And at that point people start getting queasy because ~OMG PATCHES~ < 1320534524 541194 :hagb4rd!~perdito@koln-d932d478.pool.mediaWays.net QUIT :Ping timeout: 240 seconds < 1320534640 877806 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Why aren't you checking package integrity in parallel you stupid thing < 1320534757 521901 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Oh man, I can use the terminal UI stuff I'm developing now for the installer too < 1320534766 333462 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Have you ever wanted your installer to have a BETTER UI THAN DARCS?!?!?!?! TRY KITTEN < 1320534818 862932 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :Do you think this is OK way to measure the width? objWidth (Box p) = maximum $ 0 : map (\((x, _), z) -> x + objWidth z) p; < 1320535042 493299 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :Should there be a submodule for Graphics.DVI that is for accessing the system printer driver with it? < 1320535171 802649 :nooga!~nooga@maverick.aircity.pl PRIVMSG #esoteric :huh < 1320535194 852220 :nooga!~nooga@maverick.aircity.pl PRIVMSG #esoteric :i try to record a screencast fot the sixth time < 1320535214 363591 :nooga!~nooga@maverick.aircity.pl PRIVMSG #esoteric :i suck at speaking in english < 1320535282 931077 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: yay, it's finally installed emacs and libpng < 1320535295 935505 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :and libpng-dev? < 1320535306 740081 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: that's part of library packages in arch, I think < 1320535323 623051 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :hmm, source distro? < 1320535326 485278 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :no < 1320535339 453241 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :debian is the only one that does stuff like that < 1320535345 473222 :nooga!~nooga@maverick.aircity.pl PRIVMSG #esoteric :it's not even that i don't know what to say or make lame mistakes < 1320535349 187303 :nooga!~nooga@maverick.aircity.pl PRIVMSG #esoteric :i just mumble < 1320535350 363166 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :why would a binary distro download library headers with libraries? most people want the libraries to run programs using them, not write programs using them < 1320535362 148482 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: you can compile programs without writing them < 1320535370 790034 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION finds the -doc and -dev splits really annoying, personally < 1320535386 936472 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PART :#esoteric < 1320535388 874023 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :I could buy that the -dev split might be OK for most Linux users (but probably not most Arch users), but -doc is just silly < 1320535394 209259 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :well, yes, but you're on a binary distro; if you're compiling, it's probably because it's something that the distro doesn't package, or that you're working on personally < 1320535400 418332 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :-doc is a bit silly, agreed < 1320535421 598072 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: or you want a newer version, or you're installing something from the AUR (which is source-based), or it's source-configured like dwm < 1320535426 54800 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :the second is particularly pertinent < 1320535437 815295 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: anyway, I really doubt headers take up a noticable amount of space < 1320535449 897159 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :keeping them together, at worse, wastes a bit of space < 1320535463 591195 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :67M /usr/include < 1320535469 560796 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :I was expecting it to be smaller, but I guess most headers are <4K < 1320535472 447496 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :anyway, that's still pretty tiny < 1320535479 424291 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :compared to, say, binaries :P < 1320535479 525580 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :if headers are small, and they are, I suppose you could just have a package containing /all/ library headers < 1320535486 495763 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ha < 1320535490 71778 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :that would conflict with itself, though < 1320535494 824196 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :54M /usr/include < 1320535496 984122 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :(with --apparent-size) < 1320535507 243027 :Deewiant!~deewiant@cs27125254.pp.htv.fi PRIVMSG #esoteric :299M /usr/include < 1320535515 282419 :Deewiant!~deewiant@cs27125254.pp.htv.fi PRIVMSG #esoteric :234M with --apparent-size < 1320535517 321364 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Deewiant: you have a bigger disk than me, so it balances out :) < 1320535522 177694 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION considers making ais523's user account have correct name information < 1320535529 188788 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :as much of it as you know? < 1320535529 829034 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :otherwise how could I know he's the 523rd such user on the system? < 1320535535 210717 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: I believe I know it all < 1320535537 441391 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :unless you have more middle names < 1320535542 407824 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :well, OK < 1320535544 231071 :Deewiant!~deewiant@cs27125254.pp.htv.fi PRIVMSG #esoteric :elliott: 50G for / < 1320535546 514144 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :i have all the middle names < 1320535552 984679 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :things like room number are part of the name info, aren't they? < 1320535557 969104 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :and I can't quite remember that myself < 1320535560 666785 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: I... doubt it? < 1320535587 297239 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: looks like room number is a separate field < 1320535593 434681 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :well, OK < 1320535599 525287 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :but it's the same block of info, so it's unified in my head < 1320535604 922891 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: technically, I should be asking you whaty it is, along with your work phone, home phone, and other < 1320535609 855 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :s/whaty/what/ < 1320535612 801916 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :but who even fills those out? < 1320535614 974188 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: but I can't quite remember it < 1320535620 531225 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: what's your favourite password :) < 1320535623 768525 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :nor my work phone number, although I could look it up < 1320535628 81851 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: like I'm going to tell you that :) < 1320535647 2476 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: what's your second-favourite password :P < 1320535651 196322 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :isn't it usual for you to set one and tell me, in this situation? < 1320535662 971073 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :yes < 1320535671 155977 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :you're so boring! < 1320535679 677162 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :wait, /me gets the best idea < 1320535692 717696 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :that distributed RNG thing you wrote for nomics? < 1320535702 460936 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :that's beautiful too, but my idea was simpler < 1320535760 492238 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I suppose we could diffie-hellman a password over IRC, so it'd all be in the open and yet only us would know the passwords < 1320535763 450451 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :but I can't remember how it works < 1320535794 930160 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :I love how cryptography does the impossible on a regular basis < 1320535806 920192 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: what does the naming scheme that made you ais523 do when people don't have middle names? < 1320535819 369843 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: puts an x in there, generally < 1320535832 663385 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :# adduser exh1 < 1320535835 536420 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :although I've seen other letters, that's only in staff names (which don't have the numbers) < 1320535865 997090 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :What's it do with people with only a first name? Another x? < 1320535875 785297 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: if you look at /etc/shadow, try not to mentally crack my password < 1320535878 422192 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :pikhq_: I haven't seen that happen < 1320535885 514142 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION hasn't yet shaken the habit of using one password for everything... < 1320535889 325661 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: is it, umm, using an insecure hash? < 1320535897 833209 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :it's the default, which is I think MD5(!) < 1320535898 521617 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net PRIVMSG #esoteric :Well, yeah, it's not exactly *common* any more. < 1320535904 17883 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :but I somewhat doubt you can mentally crack MD5 < 1320535915 69868 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: I advise you to put the MD5 of your password into Google < 1320535919 201463 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :if there are any results, change it :) < 1320535922 377820 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :hmm, good idea < 1320535933 623009 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :(note: this is the world's best method of reversing hashes) < 1320535938 940625 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :god, I love the "incident will be reported" message < 1320535953 876994 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: no results :) < 1320535969 819656 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :wow, my old password gets results, though < 1320535978 354777 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :and it's not a word or anything < 1320535996 34166 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :the database it returns looks suspiciously like it's from leaked hashes of some kind < 1320536005 729343 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I need to try with mine, but I'm trying to work out how to md5 it without it being in my bash history < 1320536021 156164 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: echo -n "$(cat)" | md5sum < 1320536023 580401 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :-n to avoid the newline < 1320536029 732480 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :you could also just md5sum and use ^D^D < 1320536038 591785 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :ah right, I was thinking without it appearing on screen eitehr < 1320536040 94034 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :*either < 1320536064 145778 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :because I've been known to termcast shell sessions by mistake before now, also as I'm paranoid < 1320536070 230642 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: hmm, someone must have packaged the "securely read a password" thing into a program < 1320536073 859054 :Deewiant!~deewiant@cs27125254.pp.htv.fi PRIVMSG #esoteric :echo -n "$(cat)", eww < 1320536076 949094 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: I know Python has an stdlib for it < 1320536081 123685 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :Deewiant: :) < 1320536100 96657 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :perl -MTerm::ReadPassword -e 'print read_password' < 1320536104 411348 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :that's pretty simple < 1320536118 424204 :Deewiant!~deewiant@cs27125254.pp.htv.fi PRIVMSG #esoteric :perl -pe 'chomp if eof' | md5sum < 1320536142 223886 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: heh, I just outright googled my old password,a nd it's in SHA1 databases too < 1320536164 6541 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :s/a nd/ and/ < 1320536166 86824 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :I keep making that mistake < 1320536174 718910 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :yay, no results for either of my insecurish passwords < 1320536188 809404 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I'm assuming the ones that are meant to be secure, and that are only used in one place, really are secure < 1320536206 95943 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :phew, my current password has no results < 1320536211 594178 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :(Google could already know it about a thousand times over) < 1320536217 831877 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :(so I don't see any harm in searching for it) < 1320536235 296457 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :wow, host key generation takes ages < 1320536343 380068 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: hmm, I'm changing my password to stop you possibly worrying about reading /etc/shadow :) < 1320536409 439341 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: OK, ssh -p 2222 ais523@95.149.230.52; your password is your middle name, and you have passwordless sudo access < 1320536417 856394 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :and so do I :p < 1320536437 878272 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :what's his middle name again? < 1320536451 750673 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :olsner: exactly < 1320536455 10415 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :no longer my password on glacier :p < 1320536471 614324 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: hmm, did your wikipedia article have it? < 1320536473 111765 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :(new password is unique but insecure) < 1320536477 450159 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: I think so, but I don't know < 1320536482 908144 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :good thing it's deleted! < 1320536491 950823 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :err, it looks like changing my password failed < 1320536506 823298 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :don't worry, I won't look at /etc/shadw until you fix it < 1320536541 431602 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :it's shadow, not shadw, these days < 1320536546 39383 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: but I /msg'd you my requested new password < 1320536549 927282 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :as you're the only one with sudo access < 1320536576 835528 :pikhq!~pikhq@71-219-222-98.clsp.qwest.net JOIN :#esoteric < 1320536593 83039 :pikhq_!~pikhq@71-219-240-244.clsp.qwest.net QUIT :Ping timeout: 252 seconds < 1320536641 242814 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: couldn't resist < 1320536650 509969 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :what couldn't you resist? < 1320536654 531576 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :oh right < 1320536737 428445 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :hmm, a few warnings, but none are relevant < 1320536763 392194 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: well, weboflies works just /fine/ inside the VM < 1320536770 149208 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :on echo, at least < 1320536771 611677 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: hahahahaha < 1320536773 235293 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :let me check on cat < 1320536783 125531 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: theory: it's something to do with 64-bit < 1320536786 902402 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :yep, I just did cat /etc/passwd < 1320536832 585446 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: see, if I was running Kitten, I could change the desired architecture in my VM configuration file and rebuild it in minutes... < 1320536852 786401 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :oh, I was wondering why root's password wasn't shadowed; it was because it wasn't the actual root account, but a repeatablized one < 1320536871 662492 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :heh < 1320536888 243786 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: oh, I forgot to remove root's password; it's "x" < 1320536896 639414 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :and now it's not < 1320536907 68264 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :now it's inverse_shadow("!"), which has no result < 1320536942 726458 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :hmm, I just tried running weboflies on su, to see what would happen < 1320536960 968352 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ouch < 1320536965 22916 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :and it just said incorrect password, without taking input < 1320536970 80669 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :haha < 1320536975 819131 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: it probably tried to get control of the tty < 1320536985 265106 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :but it can; the tty actually exists < 1320536994 939389 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :it's just a repeatablized tty < 1320537011 23155 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :there was also a bunch of "unknown syscall 102" < 1320537013 284584 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: maybe you have a bug that stops such input methods working < 1320537017 170169 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :test with that perl program :) < 1320537018 145941 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :which is socketcall < 1320537024 241073 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :so it's trying to use sockets for some reason < 1320537053 556646 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I think what I'd expect it to do is to notice it isn't running as root, and exit < 1320537059 725235 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: it's emailing your password to rms for the Revolution < 1320537062 824926 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :(you can't debug suid programs while still having them escalate) < 1320537064 899185 :Deewiant!~deewiant@cs27125254.pp.htv.fi PRIVMSG #esoteric :On 64-bit it's getuid < 1320537074 892457 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :(I wouldn't make cheap rms jokes if he hadn't written literally that about su) < 1320537076 784369 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Deewiant: rather than setuid? < 1320537085 640471 :Deewiant!~deewiant@cs27125254.pp.htv.fi PRIVMSG #esoteric :Yes, setuid is 105 < 1320537086 383277 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ineiros_: no, syscall 102, presumably < 1320537100 605596 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :102 is socketcall < 1320537103 627227 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: that was a weird misping < 1320537105 165456 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric : On 64-bit it's getuid < 1320537116 429200 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :on 64-bit, syscall 102 is socketcall < 1320537118 221175 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :is what Deewiant is saying < 1320537144 923564 :Deewiant!~deewiant@cs27125254.pp.htv.fi PRIVMSG #esoteric :s/is/isn't/ < 1320537195 346262 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :well, socketcall doesn't exist on 64-bit < 1320537213 655634 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :and this is running 32-bit su, as weboflies only runs 32-bit programs < 1320537244 686668 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I need to go home, anyway < 1320537261 917338 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: anyway, if you want to run weboflies, now you have a VM it works in ;) < 1320537293 274648 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Linux glacier 3.0-ARCH #1 SMP PREEMPT Wed Oct 19 12:14:48 UTC 2011 i686 QEMU Virtual CPU version 0.15.1 GenuineIntel GNU/Linux < 1320537300 188484 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :elliott: what version Linux on your own computer? < 1320537356 714243 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: haha; and the same but x86-64 and not Virtual CPU < 1320537362 34385 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :I suspect it's a 64-bit thing < 1320537413 892633 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: since this is an up-to-date Arch system and I haven't fiddled about with anything like that at all < 1320537450 480146 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I just don't see how the number of bits would matter for file permissions < 1320537463 541940 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :unless, hmm, perhaps that's just a symptom of the syscall numbers being all wrong < 1320537473 405624 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :yep; note that I /did/ do -m32 < 1320537478 747386 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :but what if: < 1320537485 17504 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :try running it on a 32-bit program < 1320537490 523320 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: I did (weboflies) < 1320537499 853954 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :you ran it on /itself/? is that sane? < 1320537506 999983 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: it didn't even get to printing the usage error message < 1320537509 933720 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :(I didn't specify any parameters) < 1320537520 782646 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: like, let me tell you what number ioctl is on 64-bit < 1320537526 672915 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :and you can check what that corresponds to on 32-bit < 1320537538 828041 :ais523!~ais523@unaffiliated/ais523 QUIT :Remote host closed the connection < 1320537574 259113 :Deewiant!~deewiant@cs27125254.pp.htv.fi PRIVMSG #esoteric :/usr/include/asm/unistd_64.h:#define __NR_ioctl 16 < 1320537578 486752 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :#define __NR_ioctl 16 < 1320537578 640280 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :#define __NR_lchown 16 < 1320537583 172612 :Deewiant!~deewiant@cs27125254.pp.htv.fi PRIVMSG #esoteric :Right < 1320537588 840186 :elliott!elliott@unaffiliated/elliott PRIVMSG #esoteric :I doubt lchown is being called at process startup time...