< 1308097089 523033 :pingveno!~pingveno@c-98-246-133-8.hsd1.or.comcast.net QUIT :Ping timeout: 252 seconds < 1308097206 569945 :pingveno!~pingveno@c-98-246-133-8.hsd1.or.comcast.net JOIN :#esoteric < 1308097618 859211 :FireFly!~firefly@unaffiliated/firefly QUIT :Quit: swatted to death < 1308097636 171727 :pikhq_!~pikhq@71-219-239-200.clsp.qwest.net PRIVMSG #esoteric :ftp://ftp-uxsup.csx.cam.ac.uk/pub/bsd/4.4BSD-Lite/usr/src/contrib/emacs-18.57/src/unexec.c < 1308097639 191641 :pikhq_!~pikhq@71-219-239-200.clsp.qwest.net PRIVMSG #esoteric :Wut. < 1308097887 179335 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :Woah, that link opened in IE < 1308097966 507631 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :Patashu: how can this be?!!! < 1308097991 287496 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :I was just surprised < 1308097994 515459 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :me too < 1308098003 196133 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric :only IE is rad enough to handle ftp < 1308098031 503322 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :monqy: well the impressive part was that it actually _showed_ it < 1308098040 60895 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :rather than insisting on saving < 1308098065 614294 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric :ooh fancy < 1308098068 183030 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric :good job IE < 1308098170 168365 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :today: Wikipedia showcases its Unicode support < 1308098535 25350 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :> intercalate ", " $ iterate (curry(++).(show.length&&&take 1).group) "1" < 1308098535 830207 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Couldn't match expected type `[GHC.Types.Char]' < 1308098536 9663 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : against inferred ty... < 1308098598 973314 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :> intercalate ", " $ iterate (curry(++).(show.length&&&take 1)<= [a]' < 1308098617 797592 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : against inferred type `[[a1]]' < 1308098617 977140 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : In the second argument of `(<=<)', namely `group' < 1308098674 718089 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric ::t curry(++).(show.length&&&take 1) < 1308098675 532426 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :forall b a. (Monoid b) => [a] -> b -> ((String, [a]), b) -> ((String, [a]), b) < 1308098717 959323 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric ::t (show.length&&&take 1) < 1308098718 767769 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :forall a. [a] -> (String, [a]) < 1308098735 71128 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :oh duh < 1308098747 230679 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :> intercalate ", " $ iterate (uncurry(++).(show.length&&&take 1)<= b -> c) -> (a, b) -> c < 1308098867 984963 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :uncurry (++) ("a","b") < 1308098872 562881 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :> uncurry (++) ("a","b") < 1308098874 50289 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : "ab" < 1308098895 985634 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :from a function which takes two arguments, it makes one which takes a tuple instead < 1308098901 345050 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :huh < 1308098902 254527 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :alright < 1308098913 884941 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :and curry is the reverse < 1308099069 468672 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :It is named for (Haskell B.) Curry, who didn't actually invent it (someone named Schönfinkel did iirc.) < 1308099120 527836 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :but it is originally a way for simulating multiple argument functions in lambda calculus, which only has single-argument ones. < 1308099168 150369 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :the haskell language picked the idea, so _its_ multiple argument functions are actually already curried, so you use uncurry when you want tuples instead < 1308099367 305990 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :oh and i guess my example above mixes that with how haskell does operators: (++) in parentheses is a (curried) function with two arguments < 1308099424 232172 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :while putting operators infix is just syntactic sugar for applying their function to the arguments on each side < 1308099446 35453 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :> "a" ++ "b" < 1308099447 588086 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : "ab" < 1308099451 412730 :pikhq_!~pikhq@71-219-239-200.clsp.qwest.net QUIT :Ping timeout: 240 seconds < 1308099452 965649 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :> (++) "a" "b" < 1308099454 494927 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : "ab" < 1308099469 522086 :pikhq!~pikhq@71-219-240-54.clsp.qwest.net JOIN :#esoteric < 1308099505 974692 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :> (,) "a" "b" < 1308099506 723613 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : ("a","b") < 1308099512 299664 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :> (++) 'a' 'b' < 1308099513 99764 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : No instance for (Data.Monoid.Monoid GHC.Types.Char) < 1308099513 279212 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : arising from a use o... < 1308099515 586976 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :ic < 1308099520 553175 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :> (++) 'a' "b" < 1308099521 338919 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Couldn't match expected type `GHC.Types.Char' < 1308099521 518390 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : against inferred type... < 1308099527 457240 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :oh and lambdabot has some funky types for some functions < 1308099529 992134 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric :(:) 'a' "b" < 1308099530 728586 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :> (:) 'a' "b" < 1308099531 483623 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : "ab" < 1308099533 113417 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :yup < 1308099533 292944 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric :oop < 1308099534 511060 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric :s < 1308099544 605671 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :++ is for two lists : is to add one component < 1308099549 475153 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :_usually_, (++) is just for lists, but lambdabot makes it a synonym for mappend for monoids < 1308099561 317195 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :which is a generalization < 1308099565 624007 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric ::t map < 1308099566 465475 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :forall a b. (a -> b) -> [a] -> [b] < 1308099569 829141 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :oh hm < 1308099572 823357 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric :not fmap? < 1308099592 340176 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric :(I was expecting it to be a synonym of fmap) < 1308099595 161127 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :i _thought_ they'd also made map a synonym for fmap, but i must have misremembered < 1308099605 791371 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :> map (+1) (Just 1) < 1308099606 626081 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Couldn't match expected type `[a]' < 1308099606 805537 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : against inferred type `Data.Mayb... < 1308099610 166187 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :indeed not < 1308099613 776081 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric ::t flip < 1308099614 582065 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :forall (f :: * -> *) a b. (Functor f) => f (a -> b) -> a -> f b < 1308099619 612338 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :this one though... < 1308099634 504281 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric ::t Prelude.flip < 1308099635 293669 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :forall a b c. (a -> b -> c) -> b -> a -> c < 1308099639 250551 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :the usual one < 1308099661 822847 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :> flip (:) "a" 'b' < 1308099663 322076 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : "ba" < 1308099717 588225 :pikhq!~pikhq@71-219-240-54.clsp.qwest.net PRIVMSG #esoteric :18:50 <@dalias> you should see how awesome musl's dynamic is < 1308099717 793692 :pikhq!~pikhq@71-219-240-54.clsp.qwest.net PRIVMSG #esoteric :18:51 <@dalias> if the program only uses libc.so and no other .so's < 1308099717 973240 :pikhq!~pikhq@71-219-240-54.clsp.qwest.net PRIVMSG #esoteric :18:51 <@dalias> the difference in # of syscalls at startup for dynamic vs static is _ZERO_ < 1308099811 640991 :pikhq!~pikhq@71-219-240-54.clsp.qwest.net PRIVMSG #esoteric :Also, regarding unexec. I found out what they use that for. < 1308099821 683114 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :EVIL purposes, obviously < 1308099850 206096 :pikhq!~pikhq@71-219-240-54.clsp.qwest.net PRIVMSG #esoteric :Their build system builds a "temacs" program. This is essentially a full emacs. temacs is then told to load the Emacs standard library, and then unexec itself. < 1308099865 245623 :pikhq!~pikhq@71-219-240-54.clsp.qwest.net PRIVMSG #esoteric :The unexec'd binary is the final emacs binary. < 1308099868 863390 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :> intercalate ", " $ iterate (liftM2(++)(show.length)(take 1)<= *) c a. (Monad m) => (b -> m c) -> (a -> m b) -> a -> m c < 1308099960 909403 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric :unexec is spooky < 1308099970 582557 :pikhq!~pikhq@71-219-240-54.clsp.qwest.net PRIVMSG #esoteric :"Frightening", more like. < 1308099991 43095 :pikhq!~pikhq@71-219-240-54.clsp.qwest.net PRIVMSG #esoteric :It's a binary specialiser. < 1308099992 346401 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric ::t group < 1308099993 264624 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :forall a. (Eq a) => [a] -> [[a]] < 1308099997 478573 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :@src group < 1308099997 679516 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :group = groupBy (==) < 1308100003 830608 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :aah < 1308100005 521290 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :> group [1,2,2,3,4,4] < 1308100006 533716 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : [[1],[2,2],[3],[4,4]] < 1308100008 783262 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :right < 1308100017 653738 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :@src (<=<) < 1308100018 110890 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Source not found. I can't hear you -- I'm using the scrambler. < 1308100019 945665 :pikhq!~pikhq@71-219-240-54.clsp.qwest.net PRIVMSG #esoteric :You could probably pull off the projections of Futamura with it. < 1308100020 125082 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :o < 1308100046 848725 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :iirc (g <=< f) x = g =<< f x < 1308100062 834276 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :ah ok < 1308100099 85132 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :> group [1, 2, 1, 1, 3, 1, 2, 2] < 1308100099 902152 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : [[1],[2],[1,1],[3],[1],[2,2]] < 1308100102 28229 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :aha < 1308100105 105927 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :it's sequential not global < 1308100108 360279 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :for lists above, it's just a way to get the functions to left to apply to each element of the result of group, then concatenate the results < 1308100115 890307 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :and then you take the length and take 1 of each group < 1308100119 335050 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :yep < 1308100120 819633 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :and concatenate it all together < 1308100121 910184 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :mmk < 1308100216 91304 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :and those uncurry with &&& and liftM2 are just two different ways of combining the result of applying two different functions < 1308100252 217848 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :@src liftM2 < 1308100252 498812 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :liftM2 f m1 m2 = do { x1 <- m1; x2 <- m2; return (f x1 x2) } < 1308100254 600721 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :> uncurry f . (g &&& h) $ x :: Expr < 1308100255 644496 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Ambiguous type variable `a' in the constraints: < 1308100255 824098 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : `SimpleReflect.FromExpr ... < 1308100260 965800 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :oops < 1308100296 674852 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :> uncurry f $ ((g &&& h) x :: Expr) :: Expr < 1308100297 622589 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Couldn't match expected type `SimpleReflect.Expr' < 1308100297 804034 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : against inferred ... < 1308100307 206755 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :oh duh < 1308100313 615555 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :> uncurry f $ ((g &&& h) x :: (Expr, Expr)) :: Expr < 1308100314 465098 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : f (g x) (h x) < 1308100342 746916 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :those overloaded Expr things require a bit awkward type annotation < 1308100392 83047 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :> liftM2 f (g :: Expr -> Expr) (h :: Expr -> Expr) x :: Expr < 1308100392 948646 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : f (g x) (h x) < 1308100402 208508 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :that uses the (e ->) monad < 1308100449 131043 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :which threads an extra common argument through all its actions (which are functions) < 1308100496 859685 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :I don't understand how liftM2 f m1 m2 = do { x1 <- m1; x2 <- m2; return (f x1 x2) } leads to 'm1 and m2 use the same x rather than different ones' < 1308100513 93350 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :@undo do { x1 <- m1; x2 <- m2; return (f x1 x2) } < 1308100513 452418 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :m1 >>= \ x1 -> m2 >>= \ x2 -> return (f x1 x2) < 1308100529 541310 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :that's the next step, syntactic sugar < 1308100558 120472 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :shouldn't it be something like liftM2 f m1 m2 x = do { x1 <- m1 x; x2 <- m2 x; return (f x1 x2) } < 1308100559 500816 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :I mean < 1308100565 426669 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :Patashu: that's specific for the (e ->) Monad, that it gives the same argument to all its subactions < 1308100587 360894 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :@src (>>=) (->) < 1308100587 600364 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Source not found. And you call yourself a Rocket Scientist! < 1308100593 474884 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :what is the (e ->) monad? < 1308100596 66934 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :@src (->) (>>=) < 1308100596 296497 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :f >>= k = \ r -> k (f r) r < 1308100602 273116 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :whew, just two tries < 1308100606 225487 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :lol < 1308100632 242843 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :ACTION can never remember the required order or parentheses for @src :) < 1308100678 83466 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :that's the definition used for the >>= method/operator when its first argument is a function < 1308100714 826123 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :@src (>>=) < 1308100715 46491 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Source not found. BOB says: You seem to have forgotten your passwd, enter another! < 1308100719 965087 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :@src Monad < 1308100720 202603 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :class Monad m where < 1308100720 384860 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : (>>=) :: forall a b. m a -> (a -> m b) -> m b < 1308100720 565119 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : (>>) :: forall a b. m a -> m b -> m b < 1308100720 565296 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : return :: a -> m a < 1308100720 565402 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : fail :: String -> m a < 1308100722 132593 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric ::( < 1308100722 928436 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :oh < 1308100737 433360 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :@src (\) < 1308100737 660617 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Source not found. Your mind just hasn't been the same since the electro-shock, has it? < 1308100741 678676 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :lmao < 1308100745 156544 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :those are defined specifically for each Monad instance < 1308100758 837219 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :Patashu: \ starts a lambda expression < 1308100762 390076 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :aah < 1308100764 47220 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :ok < 1308100768 621775 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :> (\x -> x+1) 3 < 1308100769 478474 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : 4 < 1308100846 514040 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :@src (>>) < 1308100846 975280 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :m >> k = m >>= \_ -> k < 1308100854 626979 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :that one has a default definition < 1308100855 21080 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :so for >>=. You take a monad data, a function that goes from that data to monad data, then it's applied to the data inside. but shouldn't return be m a -> a since it's unboxing? < 1308100885 967030 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :no it's actually "boxing" iiu what you mean < 1308100896 221054 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :> return 1 :: [Int] < 1308100897 80746 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : [1] < 1308100907 308461 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :don't you use - oh yeah < 1308100909 695728 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :got it backwards < 1308100916 15619 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :what's the one for unboxing then? < 1308100943 525648 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :there is none, because each Monad has its own way for how to access its members, if any < 1308100944 522138 :pikhq!~pikhq@71-219-240-54.clsp.qwest.net PRIVMSG #esoteric :Patashu: No such function. < 1308100950 590384 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :ah true < 1308100965 296297 :pikhq!~pikhq@71-219-240-54.clsp.qwest.net PRIVMSG #esoteric :Patashu: If the Monad in question wants you to be able to do that, it will provide such a function. < 1308100975 200516 :pikhq!~pikhq@71-219-240-54.clsp.qwest.net PRIVMSG #esoteric :Typically of form "runFoo". < 1308100980 451175 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :of course some exist, but e.g. the one for IO is considered evil to use ;D < 1308101010 345147 :pikhq!~pikhq@71-219-240-54.clsp.qwest.net PRIVMSG #esoteric :Yeah, unsafePerformIO is that function for IO, and obviously, it's unsafe and a bad idea most times. < 1308101020 210042 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :> fail "some error" :: [Int] < 1308101020 986312 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : [] < 1308101042 940467 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :@src fail < 1308101043 253892 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :fail s = error s < 1308101046 113929 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric :fail is kind of disappointing < 1308101049 409863 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric ::( < 1308101057 329963 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :@src error < 1308101057 603186 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :error s = throw (ErrorCall s) < 1308101059 254106 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :this also has a default, but it's frequently overruled < 1308101062 752177 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :@src throw < 1308101063 26106 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :throw exception = raise# exception < 1308101068 266720 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :@src raise# < 1308101068 707411 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Source not found. Maybe you made a typo? < 1308101071 805821 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :@src raise < 1308101072 222949 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Source not found. That's something I cannot allow to happen. < 1308101078 939228 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :dang I thought it'd go forever < 1308101083 441496 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric : Patashu raise# looks like it may be a primitive function < 1308101089 172885 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :* Patashu: < 1308101103 882954 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :yeah < 1308101108 829927 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :Patashu: also you are lucky you got that far, @src lacks a lot of sources < 1308101142 742768 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :obviously everything from throw on is somewhat specific to ghc < 1308101152 182357 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :error is in the haskell standard < 1308101184 433968 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :(throw may also be in some other compilers, i don't know. but ghc rules supreme these days, anyhow) < 1308101204 654046 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :> error "test" < 1308101205 403019 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : *Exception: test < 1308101208 301005 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :okay < 1308101214 893906 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :@src ErrorCall < 1308101215 103053 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Source not found. Your mind just hasn't been the same since the electro-shock, has it? < 1308101219 685436 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :or < 1308101221 883034 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :@hoogle ErrorCall < 1308101222 240205 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric ::t ErrorCall < 1308101222 478499 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Control.Exception data ErrorCall < 1308101222 657943 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Control.Exception ErrorCall :: String -> ErrorCall < 1308101222 837639 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Control.OldException ErrorCall :: String -> Exception < 1308101223 30606 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Not in scope: data constructor `ErrorCall' < 1308101224 801847 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :aah < 1308101247 490662 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric ::t Exception < 1308101247 787152 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :hoogle is the thing for looking up functions < 1308101248 331764 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Not in scope: data constructor `Exception' < 1308101252 74044 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :@hoogle Exception < 1308101252 340639 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :module Control.Exception < 1308101252 576502 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Control.Exception class (Typeable e, Show e) => Exception e < 1308101252 756129 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Control.OldException data Exception < 1308101266 271452 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :@hoogle _|_ < 1308101266 553732 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Warning: Unknown type | < 1308101266 736178 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Control.Category id :: Category cat => cat a a < 1308101266 915657 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Control.Arrow returnA :: Arrow a => a b b < 1308101282 351559 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :Patashu: they rewrote the Exception system so Exception is a class now < 1308101285 205731 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric ::t _|_ < 1308101286 25913 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :parse error on input `|' < 1308101288 135633 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :right < 1308101293 621839 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :@src _|_ < 1308101294 9318 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Source not found. That's something I cannot allow to happen. < 1308101296 362965 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :> _|_ < 1308101297 158033 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : : parse error on input `|' < 1308101300 762876 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric ::( < 1308101301 553001 :pikhq!~pikhq@71-219-240-54.clsp.qwest.net PRIVMSG #esoteric :_|_ is only used when talking about Haskell, not in Haskell. < 1308101305 149420 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :ah ok < 1308101314 199639 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :but it's funny because (_|_) < 1308101323 520682 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric :is undefined something wacky like forall a. a < 1308101325 174415 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric ::t undefined < 1308101325 949202 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :forall a. a < 1308101327 546315 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric ::t undefined -- this is one kind of _|_ < 1308101328 396894 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :forall a. a < 1308101334 455958 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :what's forall < 1308101335 909918 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric :oh kind < 1308101367 190353 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :Patashu: forall means that the expression has that type for _all_ types a substituted into it < 1308101388 541528 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :so undefined has any type, whatsoever < 1308101418 526327 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric :@src undefined < 1308101418 733266 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :undefined = error "Prelude.undefined" < 1308101456 306902 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :(actually that's not quite true i suspect, there are also "unboxed" and "unlifted" types which tend to only be usable in some places) < 1308101494 560910 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :> undefined < 1308101495 326475 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : *Exception: Prelude.undefined < 1308101496 743210 :pikhq!~pikhq@71-219-240-54.clsp.qwest.net PRIVMSG #esoteric :oerjan: Yeah, "forall" is part of the extension for those, IIRC. < 1308101561 443467 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :pikhq: um what? < 1308101588 994623 :pikhq!~pikhq@71-219-240-54.clsp.qwest.net PRIVMSG #esoteric :Erm, no, my brain is being stupid. < 1308101645 623106 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :but basically, only lifted, boxed types (i.e. the usual ones) can be substituted into polymorphic functions < 1308101661 314004 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :hm wait < 1308101666 310925 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :maybe boxed is enough < 1308101689 895927 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :you know how there are functions that are essentially equivalent for lists, functors and monads? would it be worth making them substitute for each other? < 1308101713 95852 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :Patashu: yes. everyone thinks so. < 1308101747 18822 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :it requires some major rewamping of the type class system to avoid large amounts of rewriting code, though. < 1308101772 520774 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :would it be -hard-, though? < 1308101792 595821 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :Patashu: there exists a proposal for doing it, called class aliases iirc < 1308101828 673326 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :i vaguely recall there is some drawback with that too, though < 1308101863 941458 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :as of now, if you define a new Monad, all you need to do is to defined the >>= and return methods < 1308101913 205791 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :but as the class system _currently_ works, if you made Monad a subclass of Functor and Applicative (as it "should" be) then you would have to define the methods for those separately as well < 1308101934 480392 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :and it would break old code which didn't do that < 1308101973 583739 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :so the class alias system among other things allows classes to contain defaults for each other, unlike now when each must be written separately < 1308101988 469466 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :*must have their instances written < 1308102001 354116 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :hopefully someone will implement it eventually < 1308102034 854628 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :there's no overloading in haskell is there? < 1308102059 145480 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :it's rather stupid to have map, fmap, <$>, liftM < 1308102059 358604 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric :overloading works via typeclasses < 1308102070 307614 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :yeah < 1308102079 664732 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :I was about to say 'why not just make map work on lists or functors or monads' but nope < 1308102081 711083 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :that won't work < 1308102103 730767 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :@src <$> < 1308102103 929829 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :f <$> a = fmap f a < 1308102110 166453 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :lol seriously < 1308102113 93566 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric :yes < 1308102114 184340 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :so it's just infix fmap < 1308102118 760316 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :why not just use `fmap` then < 1308102124 425128 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric :cool factor < 1308102127 35240 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :o < 1308102127 367236 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :Patashu: it can work on functors too, in fact it did before Haskell 98 revision, when fmap = map < 1308102153 633545 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric :what did haskell 98 do < 1308102155 358331 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :Patashu: <$> fits rather well into the Applicative style with <*> etc. < 1308102175 283887 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :it separated map from fmap, making map work just for lists. < 1308102224 98039 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :and some other things, i think fail was added then and is also considered a wart < 1308102235 526255 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :could you have some kind of compile time macro thing? like detecting map function monad transforms it into liftM function monad < 1308102258 570560 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric :what? < 1308102291 390325 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :well obviously the former will fail < 1308102295 232899 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :and the latter does what you want < 1308102304 614839 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :like when google says 'Did you mean ___?' < 1308102307 658203 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric :just use fmap < 1308102322 468472 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric :all real monads are functors too < 1308102343 207060 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :> (+) <$> [1,2] <*> [10,20] < 1308102344 32346 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : [11,21,12,22] < 1308102367 430619 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :> liftM2 (+) [1,2] [10,20] < 1308102368 522379 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : [11,21,12,22] < 1308102393 711075 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :@src liftM3 < 1308102393 920051 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :liftM3 f m1 m2 m3 = do { x1 <- m1; x2 <- m2; x3 <- m3; return (f x1 x2 x3) } < 1308102396 503917 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :wow lol < 1308102400 730358 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :@src liftM4 < 1308102400 937061 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :liftM4 f m1 m2 m3 m4 = do { x1 <- m1; x2 <- m2; x3 <- m3; x4 <- m4; return (f x1 x2 x3 x4) } < 1308102404 16310 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :@src liftM5 < 1308102404 238550 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Source not found. Your mind just hasn't been the same since the electro-shock, has it? < 1308102410 624459 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :it was good while it lasted < 1308102451 461457 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :Patashu: <$> and <*> work with arbitrarily many, anyway < 1308102457 969669 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric :also, on the concern that making Monad a subclass of Functor would require defining an instance of Functor, would it be too ugly to, in applicable cases, define an overridable default instance? < 1308102476 965653 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric :e.g. for a Functor instance of a Monad, fmap f = (>>= return . f) < 1308102486 885625 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :@src <*> < 1308102487 69818 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric :or something like that < 1308102487 244772 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Source not found. :( < 1308102490 904719 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :@src (<*>) < 1308102491 114687 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Source not found. Where did you learn to type? < 1308102497 495970 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric :I just confused myself < 1308102507 224787 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :@src Functor < 1308102507 428997 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :class Functor f where < 1308102507 608551 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric ::( < 1308102507 787973 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : fmap :: (a -> b) -> f a -> f b < 1308102509 981547 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :monqy: no, i think that's precisely what's suggested. it's just that current haskell doesn't support defaults for superclass methods < 1308102512 189517 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :@src Applicative < 1308102512 396521 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :class Functor f => Applicative f where < 1308102512 618290 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : pure :: a -> f a < 1308102512 797889 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : (<*>) :: f (a -> b) -> f a -> f b < 1308102515 845146 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric :oh < 1308102518 601130 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :found it < 1308102563 170179 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :so it's infix so < 1308102589 529285 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric :pure is analogous to return, (<*>) is analogous to ap < 1308102596 291633 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric :iirc < 1308102599 594990 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :(+) <$> [1,2] <*> [10,20] becomes <*> ( fmap (+) [1,2] ) ( [10,20] ) < 1308102605 195982 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :yeah those would obviously be unified as well < 1308102638 14054 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :I think it'd be useful to me to have a list of functions/operators that are essentially identical < 1308102642 142113 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :Patashu: needs parens around the <*> < 1308102646 978651 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :yeah < 1308102654 585444 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :> (<*>) ( fmap (+) [1,2] ) ( [10,20] ) < 1308102655 310567 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : [11,21,12,22] < 1308102656 519596 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric :and of Monoid, MonadPlus, Alternative? < 1308102657 797810 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :tada < 1308102663 296030 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric :is there another I forget < 1308102665 136871 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :@src Monoi < 1308102665 316387 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Source not found. Are you on drugs? < 1308102665 837871 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :@src Monoid < 1308102666 47182 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :class Monoid a where < 1308102666 239795 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : mempty :: a < 1308102666 419511 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : mappend :: a -> a -> a < 1308102666 419695 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : mconcat :: [a] -> a < 1308102673 149504 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric :soemthing for Arrows? ArrowChoice? < 1308102673 698010 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :@src MonadPlus < 1308102673 902813 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Source not found. Just what do you think you're doing Dave? < 1308102676 989312 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :@src Alternative < 1308102677 211587 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :class Applicative f => Alternative f where < 1308102677 396149 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : empty :: f a < 1308102677 576092 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : (<|>) :: f a -> f a -> f a < 1308102684 115641 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :@src ArrowChoice < 1308102684 332724 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Source not found. BOB says: You seem to have forgotten your passwd, enter another! < 1308102688 607420 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :Patashu: i once looked through Control.Monad, and the majority of functions in it would work just as well as Applicative < 1308102711 881591 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :lots of reinventing the wheel I see < 1308102717 541860 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :wow, (<|>) < 1308102744 627663 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric :> Just 5 <|> Nothing < 1308102745 640765 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Just 5 < 1308102752 540699 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric :> Nothing <|> Just 5 < 1308102753 339358 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Just 5 < 1308102756 558107 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric :> Just 2 <|> Just 5 < 1308102757 338221 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Just 2 < 1308102759 591047 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :Patashu: it's not so much reinventing as just copying, i think. Applicative/Alternative are younger, while Monad/MonadPlus are in the standard and so cannot be easily changed < 1308102763 731770 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :it's like an OR operator? < 1308102788 14267 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :> [1,2] <|> [4,5] < 1308102788 833880 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : [1,2,4,5] < 1308102798 793606 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :huh < 1308102806 305167 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric :> Just 2 ++ Just 5 < 1308102807 63765 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Ambiguous type variable `t' in the constraints: < 1308102807 247804 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : `Data.Monoid.Monoid t' < 1308102807 427603 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : ... < 1308102810 112731 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric :oops < 1308102822 254103 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :huh < 1308102834 204241 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric ::t (++) < 1308102834 963231 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :forall m. (Monoid m) => m -> m -> m < 1308102840 691794 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :Just should have a monoid instance, i think < 1308102849 929517 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :monqy: yeah it's one of lambdabot's funky types < 1308102867 996479 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric ::t Just < 1308102869 19308 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :forall a. a -> Maybe a < 1308102874 439332 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :hm < 1308102883 359696 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :> Just 2 ++ Just 5 :: Maybe Int < 1308102884 204148 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : No instance for (Data.Monoid.Monoid GHC.Types.Int) < 1308102884 394094 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : arising from a use of... < 1308102885 449537 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric :multiple monoid instances for Maybe? < 1308102894 178553 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :nah, maybe just is missing < 1308102915 126854 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :ACTION realizes that sentence was hideously ambiguous in context :P < 1308103030 943254 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :Patashu: <|> is somewhat like an or/choice operator, yeah. although it depends on the Monad how many choices you get. < 1308103050 426857 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :(Maybe has just one spot) < 1308103096 107345 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :Parsec also uses <|> for parsing choices < 1308103147 123448 :ralc!~ralc@79.142.230.243.static.knet.bolignet.dk QUIT :Remote host closed the connection < 1308103202 17162 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :also when you mention things like Monoid/Alternative/MonadPlus, things get trickier since the first of them is for types without any type arguments. i vaguely recall class aliases supposedly have troubles with multiparameter type classes as well < 1308103307 739995 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :i mean, the haskell class system definitely doesn't support class (Monoid (a t), Applicative a) => Alternative a where ... < 1308103323 88649 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :you'd want that to hold automatically for _all_ t < 1308103403 425728 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :i guess there are a lot of issues when you try to find a general fix for this kind of problem < 1308103486 565665 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :so the cross product points perpendicular to two vectors (right handedly normally) and has magnitude absin(theta), theta being the angle subtended by a and b. maxes out at 90 degrees, minimizes at 0 or 180 degrees. the dot product is found by multiplying each dimension's value together and the magnitude is mag(a)*mag(b)*cos(theta), theta again being the angle subtended < 1308103533 873254 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :...yes? < 1308103540 23538 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :I'm just trying to sort these out in my head < 1308103572 67166 :pikhq!~pikhq@71-219-240-54.clsp.qwest.net PRIVMSG #esoteric :Yes, those are properties of both of the vector products. < 1308103586 353695 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :never learned them but apparently they're useful and all that < 1308103589 124552 :pikhq!~pikhq@71-219-240-54.clsp.qwest.net PRIVMSG #esoteric :Piss-poor definitions, but valid properties. < 1308103753 733846 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :also, the cross product only works in dimensions 0,1,3 and 7 :P < 1308103770 96362 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :how come 7? < 1308103779 494718 :pikhq!~pikhq@71-219-240-54.clsp.qwest.net PRIVMSG #esoteric :oerjan: It works in 7? < 1308103783 483893 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :lol < 1308103817 797336 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :supposedly because of the existence of real numbers, complex numbers, quaternions and octonions respectively < 1308103867 291720 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :(the ones in 0 and 1 are trivially zero, anyway, because nothing can be perpendicular) < 1308104064 136390 :Behold!~behold@unaffiliated/beholdmyglory QUIT :Remote host closed the connection < 1308104067 160553 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :couldn't you apply the same principle to the second dimension? or am I missing something? < 1308104073 41367 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :ACTION just walked into this conversation. < 1308104113 585323 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :I was thinking that. cross product of a real number -> an imaginary number, same magnitude? < 1308104180 699317 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :well you want parallel vectors to have cross product 0, no? :P < 1308104199 853734 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :and all real numbers are parallel < 1308104206 17934 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :ah, yeah < 1308104252 208615 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :and presumably you want non-parallel ones not to have 0, which i guess ruins the second dimension somehow < 1308104274 982947 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :..lol < 1308104275 671072 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :sure. < 1308104286 742972 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :oh and it should be linear in each vector, naturally < 1308104297 344520 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :so how does it work for 0 and 1 then < 1308104313 498885 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :Patashu: since everything is parallel, just make all cross products 0 < 1308104320 675082 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :o < 1308104325 611656 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :aah < 1308104333 536286 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :and that way you don't have to worry < 1308104334 975153 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :\o/ < 1308104336 72702 :myndzi\!myndzi@c-98-247-234-176.hsd1.wa.comcast.net PRIVMSG #esoteric : | < 1308104337 537011 :myndzi\!myndzi@c-98-247-234-176.hsd1.wa.comcast.net PRIVMSG #esoteric :/´\ < 1308104359 304518 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :and myndzi\ streaks by again < 1308104387 16757 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :/o/ < 1308104388 109624 :myndzi\!myndzi@c-98-247-234-176.hsd1.wa.comcast.net PRIVMSG #esoteric : | < 1308104388 844899 :myndzi\!myndzi@c-98-247-234-176.hsd1.wa.comcast.net PRIVMSG #esoteric :/| < 1308104392 428174 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :\o\ < 1308104393 528724 :myndzi\!myndzi@c-98-247-234-176.hsd1.wa.comcast.net PRIVMSG #esoteric : | < 1308104394 432180 :myndzi\!myndzi@c-98-247-234-176.hsd1.wa.comcast.net PRIVMSG #esoteric :/'\ < 1308104395 168592 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :/o\ < 1308104396 265378 :myndzi\!myndzi@c-98-247-234-176.hsd1.wa.comcast.net PRIVMSG #esoteric : | < 1308104396 997011 :myndzi\!myndzi@c-98-247-234-176.hsd1.wa.comcast.net PRIVMSG #esoteric :/| < 1308104402 158245 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :\o < 1308104405 768876 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :o/ < 1308104424 715001 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric : \m/ \m/ < 1308104426 148554 :myndzi\!myndzi@c-98-247-234-176.hsd1.wa.comcast.net PRIVMSG #esoteric :   `\o/´ < 1308104427 59362 :myndzi\!myndzi@c-98-247-234-176.hsd1.wa.comcast.net PRIVMSG #esoteric :     | < 1308104427 243933 :myndzi\!myndzi@c-98-247-234-176.hsd1.wa.comcast.net PRIVMSG #esoteric :    /`¯|_) < 1308104427 423494 :myndzi\!myndzi@c-98-247-234-176.hsd1.wa.comcast.net PRIVMSG #esoteric :  (_| < 1308104439 722503 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :wow < 1308104449 823685 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :\m/ < 1308104454 82366 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :needs to be two < 1308104464 754774 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :yeah those are two hands < 1308104487 607602 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :and also needs a little indentation < 1308104502 682040 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :\m/ \m/ < 1308104505 952250 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric : \m/ \m/ < 1308104507 420536 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric : \m/ \m/ < 1308104508 513916 :myndzi\!myndzi@c-98-247-234-176.hsd1.wa.comcast.net PRIVMSG #esoteric :   `\o/´ < 1308104509 240402 :myndzi\!myndzi@c-98-247-234-176.hsd1.wa.comcast.net PRIVMSG #esoteric :     | < 1308104509 428025 :myndzi\!myndzi@c-98-247-234-176.hsd1.wa.comcast.net PRIVMSG #esoteric :    /'\ < 1308104509 607476 :myndzi\!myndzi@c-98-247-234-176.hsd1.wa.comcast.net PRIVMSG #esoteric :  (_| |_) < 1308104511 251411 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric : \m/ \m/ < 1308104518 383417 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric : \m/ \m/ < 1308104519 297564 :myndzi\!myndzi@c-98-247-234-176.hsd1.wa.comcast.net PRIVMSG #esoteric :   `\o/´ < 1308104520 25226 :myndzi\!myndzi@c-98-247-234-176.hsd1.wa.comcast.net PRIVMSG #esoteric :     | < 1308104520 204710 :myndzi\!myndzi@c-98-247-234-176.hsd1.wa.comcast.net PRIVMSG #esoteric : (_|¯`¯|_) < 1308104521 854810 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric : \m/ \m/ < 1308104526 856087 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric : \m/ \m/ < 1308104529 789713 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :o < 1308104531 462131 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :o < 1308104532 403462 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric : \m/ \m/ < 1308104533 332372 :myndzi\!myndzi@c-98-247-234-176.hsd1.wa.comcast.net PRIVMSG #esoteric :   `\o/´ < 1308104534 232486 :myndzi\!myndzi@c-98-247-234-176.hsd1.wa.comcast.net PRIVMSG #esoteric :     | < 1308104534 412668 :myndzi\!myndzi@c-98-247-234-176.hsd1.wa.comcast.net PRIVMSG #esoteric :    /'\ < 1308104534 412821 :myndzi\!myndzi@c-98-247-234-176.hsd1.wa.comcast.net PRIVMSG #esoteric :  (_| |_) < 1308104535 736064 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :hehe < 1308104535 915811 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :looks like myndzi\ does a bit of throttling < 1308104659 342270 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :> filterM(const[False,True])"abcd" -- have we had this one yet < 1308104660 169144 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : ["","d","c","cd","b","bd","bc","bcd","a","ad","ac","acd","ab","abd","abc","... < 1308104680 290146 :Sgeo!~Sgeo@ool-18bf618a.dyn.optonline.net PRIVMSG #esoteric :Huh, just found my old Astrology book < 1308104692 75549 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :Sgeo: it's a sign! < 1308104703 277035 :Sgeo!~Sgeo@ool-18bf618a.dyn.optonline.net PRIVMSG #esoteric :lol < 1308104734 783650 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric :of what use is an astrology book < 1308104750 877930 :Sgeo!~Sgeo@ool-18bf618a.dyn.optonline.net PRIVMSG #esoteric :Part 5 is some stuff about other things < 1308104775 184533 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :that's the power set, right? < 1308104777 67390 :Sgeo!~Sgeo@ool-18bf618a.dyn.optonline.net PRIVMSG #esoteric :"Tarot, palmistry, and numerology are three of those ways-- and they're all connected with astrology." < 1308104808 344872 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric :numerology will always make think vortex based mathematics < 1308104874 263561 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :Patashu: yep < 1308104891 93801 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :@src filterM < 1308104891 314743 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Source not found. And you call yourself a Rocket Scientist! < 1308104898 51812 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :hmph < 1308104902 662051 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :@src const < 1308104902 977578 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :const x _ = x < 1308104915 439123 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :aah < 1308104938 328538 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :@hoogle < 1308104938 653828 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :No query entered < 1308104938 833326 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Try --help for command line options < 1308104941 525409 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :bah < 1308104950 552643 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :@hoogle filterM < 1308104950 775703 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Control.Monad filterM :: Monad m => (a -> m Bool) -> [a] -> m [a] < 1308104950 961872 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Data.Graph.Inductive.Query.Monad graphFilterM :: GraphM m gr => (Context a b -> Bool) -> GT m (gr a b) [Context a b] < 1308104952 752366 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :aha < 1308104958 447124 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :woah < 1308104959 340922 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :lol < 1308105004 41312 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :Patashu: http://hackage.haskell.org/packages/archive/base/latest/doc/html/src/Control-Monad.html#filterM < 1308105030 627687 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :(the hoogle website has source links) < 1308105127 468996 :foocraft!~ewanas@78.101.214.254 JOIN :#esoteric < 1308106931 309758 :Sgeo!~Sgeo@ool-18bf618a.dyn.optonline.net PRIVMSG #esoteric :"Of course, we can't answer the larger question about believing /everything/ you read in the papers. You might want to take some of the things /other/ than your daily forecast with a grain of salt." < 1308106975 5376 :Sgeo!~Sgeo@ool-18bf618a.dyn.optonline.net PRIVMSG #esoteric :Oh, hm, I kind of took that out of context < 1308107420 723364 :copumpkin!~pumpkin@unaffiliated/pumpkingod QUIT :Quit: Computer has gone to sleep. < 1308107430 939513 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :okay what the hell. < 1308107437 501438 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :there's a particular region of my screen < 1308107441 631101 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :where my mouse cannot click on anything. < 1308107443 601714 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :this makes no sense. < 1308107497 787819 :augur!~augur@208.58.6.161 NICK :Oscar__ < 1308107506 742380 :Oscar__!~augur@208.58.6.161 NICK :augur < 1308108404 567270 :F!~f@pool-96-255-203-102.washdc.fios.verizon.net JOIN :#esoteric < 1308108688 501570 :copumpkin!~pumpkin@unaffiliated/pumpkingod JOIN :#esoteric < 1308109354 211625 :azaq23!~derivecto@unaffiliated/azaq23 QUIT :Read error: Operation timed out < 1308109598 914101 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake QUIT :Quit: Lost terminal < 1308109627 209413 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake JOIN :#esoteric < 1308110464 673634 :azaq23!~derivecto@unaffiliated/azaq23 JOIN :#esoteric < 1308110699 410489 :Sgeo!~Sgeo@ool-18bf618a.dyn.optonline.net QUIT :Ping timeout: 246 seconds < 1308110707 832108 :yorick!~yorick@unaffiliated/yorick QUIT :Ping timeout: 252 seconds < 1308110823 606280 :yorick!~yorick@unaffiliated/yorick JOIN :#esoteric < 1308111014 523023 :Sgeo!~Sgeo@ool-18bf618a.dyn.optonline.net JOIN :#esoteric < 1308111016 870975 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :I think I'm 500 pages away or so from being up to date on homestuck < 1308111341 822029 :foocraft!~ewanas@78.101.214.254 QUIT :Quit: I'm falling...UPRIGHT! http://www.youtube.com/watch?v=WCF_mHKBH3k < 1308111904 93211 :pikhq_!~pikhq@174-22-173-9.clsp.qwest.net JOIN :#esoteric < 1308112092 553034 :pikhq!~pikhq@71-219-240-54.clsp.qwest.net QUIT :Ping timeout: 276 seconds < 1308112102 710966 :Gregor!Gregor@codu.org PRIVMSG #esoteric :Haha gold standard people. < 1308112104 324481 :Gregor!Gregor@codu.org PRIVMSG #esoteric :So luls. < 1308113432 385048 :pikhq_!~pikhq@174-22-173-9.clsp.qwest.net PRIVMSG #esoteric :Aaah, morons. < 1308114706 422848 :pikhq_!~pikhq@174-22-173-9.clsp.qwest.net PRIVMSG #esoteric :ACTION has the fairly obvious realisation that his tests for compiler features do not work for cross-compilation. < 1308114730 100269 :Gregor!Gregor@codu.org PRIVMSG #esoteric :Yes, that is a common problem. < 1308114840 231916 :pikhq_!~pikhq@174-22-173-9.clsp.qwest.net PRIVMSG #esoteric :So now I'm wondering how best to test preprocessor defines without actually executing my built executable. < 1308114885 374073 :pikhq_!~pikhq@174-22-173-9.clsp.qwest.net PRIVMSG #esoteric :Hmm. Probably #if !defined(foo)\n#error "no foo"#endif < 1308114945 27596 :Gregor!Gregor@codu.org PRIVMSG #esoteric :#error is actually unportable :) < 1308114952 847981 :Gregor!Gregor@codu.org PRIVMSG #esoteric :Just anything that's not valid C on the error side. < 1308114986 212848 :Gregor!Gregor@codu.org PRIVMSG #esoteric :(Note: by "#error is actually unportable" I mean "there exist compilers which do not understand #error, and so error out on it regardless of where it appears in the code") < 1308115028 315042 :Gregor!Gregor@codu.org PRIVMSG #esoteric :Wanna know a great trick to figure out the word size (or size of any builtin type) without executing code? :) < 1308115068 843004 :pikhq_!~pikhq@174-22-173-9.clsp.qwest.net PRIVMSG #esoteric :I'm implementing tests on an as-needed basis. ATM, all I have tests for is C99 and libraries. < 1308115091 680763 :pikhq_!~pikhq@174-22-173-9.clsp.qwest.net PRIVMSG #esoteric :Though, because I listened to elliott, it's really quite easy to add tests... < 1308115132 285108 :Gregor!Gregor@codu.org PRIVMSG #esoteric :So wanna help me figure out why fastjit-tests segfaults in GGGGC-evil mode? >_> < 1308115147 702504 :pikhq_!~pikhq@174-22-173-9.clsp.qwest.net PRIVMSG #esoteric :No, I'd rather defeat autotools. :P < 1308115148 33941 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :evil mode? < 1308115189 259430 :pikhq_!~pikhq@174-22-173-9.clsp.qwest.net PRIVMSG #esoteric :Admittedly, I'm depending on Tcl instead of shell, but that's really not a very objectionable dependency. < 1308115216 32227 :pikhq_!~pikhq@174-22-173-9.clsp.qwest.net PRIVMSG #esoteric :Given that I can probably get Jim (a smallish but full-featured Tcl interpreter) to build on anything that builds C. < 1308115222 727162 :Gregor!Gregor@codu.org PRIVMSG #esoteric :Patashu: It adds a canary to the object header, performs a GC at every yield point, always clears out old-space memory, and goes into two-space copying collector mode to assure that no object will every stay in the same location after a collection. < 1308115247 376075 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :and segfaults often? < 1308115258 719347 :Gregor!Gregor@codu.org PRIVMSG #esoteric :Patashu: Not if the code is correct ... < 1308115262 537852 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric ::P < 1308115288 798586 :Gregor!Gregor@codu.org PRIVMSG #esoteric :Patashu: It's a good indicator since it's easy to have bugs in a GC that are non-obvious since you just happened to never collect at the wrong time. < 1308115367 118957 :pikhq_!~pikhq@174-22-173-9.clsp.qwest.net PRIVMSG #esoteric :Gregor: BTW, I'm actually not *hyper* concerned with handling broken systems here. < 1308115378 525910 :pikhq_!~pikhq@174-22-173-9.clsp.qwest.net PRIVMSG #esoteric :Gregor: My check for C99 consists of checking __STDC_VERSION__. < 1308115422 941128 :pikhq_!~pikhq@174-22-173-9.clsp.qwest.net PRIVMSG #esoteric :I'm pretty much assuming a system that doesn't provide a modicum of C89 semantics is fundamentally broken. < 1308115424 711260 :Gregor!Gregor@codu.org PRIVMSG #esoteric :Not supporting systems which are strictly wrong is different from not supporting systems which are right but old/obscure/unusual *shrugs* < 1308115510 781249 :pikhq_!~pikhq@174-22-173-9.clsp.qwest.net PRIVMSG #esoteric :Yeah, but an extreme number of Autoconf checks are actually checks for broken systems. < 1308115519 301601 :Gregor!Gregor@codu.org PRIVMSG #esoteric :'struth :P < 1308115535 395296 :Gregor!Gregor@codu.org PRIVMSG #esoteric :But that's why step one to using autoconf is to run autoreconf, then disregard its result. < 1308115542 904267 :pikhq_!~pikhq@174-22-173-9.clsp.qwest.net PRIVMSG #esoteric :Autoscan, you mean. < 1308115547 435065 :Gregor!Gregor@codu.org PRIVMSG #esoteric :Erm, yes < 1308115584 331662 :pikhq_!~pikhq@174-22-173-9.clsp.qwest.net PRIVMSG #esoteric :Yeah, autoscan alone has probably wasted centuries of CPU time. < 1308115816 667751 :pikhq_!~pikhq@174-22-173-9.clsp.qwest.net PRIVMSG #esoteric :Oh, yeah, and I am *really* not going to be thinking about the pain and agony that is libraries needing other libraries in static linking. Unlike Autoconf, which still has a lot of logic for it. < 1308115868 422373 :pikhq_!~pikhq@174-22-173-9.clsp.qwest.net PRIVMSG #esoteric :Or Libtool, which *is* the logic for it. < 1308115902 957843 :pikhq_!~pikhq@174-22-173-9.clsp.qwest.net PRIVMSG #esoteric :If you want it to work right, write a pkg-config file; I reject the idea of making a 10 billion line shell script that does everything related to libraries that your toolchain can do anyways. < 1308116084 323911 :pikhq_!~pikhq@174-22-173-9.clsp.qwest.net PRIVMSG #esoteric :Fuck libtool so much. < 1308116148 413067 :pikhq_!~pikhq@174-22-173-9.clsp.qwest.net PRIVMSG #esoteric :Especially its idea of library dependencies. < 1308116178 160429 :pikhq_!~pikhq@174-22-173-9.clsp.qwest.net PRIVMSG #esoteric :It does not understand the *idea* of a shared library already having its dependencies recorded. < 1308116239 961907 :azaq23!~derivecto@unaffiliated/azaq23 QUIT :Quit: Leaving. < 1308116478 639760 :wareya!~wareya@cpe-74-70-142-220.nycap.res.rr.com QUIT :Read error: Connection reset by peer < 1308116563 82212 :pizearke!~pup@CPE-65-30-150-106.wi.res.rr.com QUIT :Ping timeout: 240 seconds < 1308116582 152635 :pizearke!~pup@CPE-65-30-150-106.wi.res.rr.com JOIN :#esoteric < 1308117122 714151 :wareya!~wareya@cpe-74-70-142-220.nycap.res.rr.com JOIN :#esoteric < 1308117268 930724 :pikhq_!~pikhq@174-22-173-9.clsp.qwest.net PRIVMSG #esoteric :Oh, the over-linking. < 1308117281 414076 :pikhq_!~pikhq@174-22-173-9.clsp.qwest.net PRIVMSG #esoteric :-Wl,--as-needed would be much less needed if it weren't for libtool. < 1308117361 663645 :Sgeo!~Sgeo@ool-18bf618a.dyn.optonline.net QUIT :Ping timeout: 255 seconds < 1308117532 468882 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au QUIT :Ping timeout: 260 seconds < 1308117937 823582 :pikhq!~pikhq@174-22-159-133.clsp.qwest.net JOIN :#esoteric < 1308118149 692924 :pikhq_!~pikhq@174-22-173-9.clsp.qwest.net QUIT :Ping timeout: 276 seconds < 1308118618 627473 :pikhq!~pikhq@174-22-159-133.clsp.qwest.net PRIVMSG #esoteric :http://web.archive.org/web/19961119053443/http://www.tmbg.com/ That is a *surprisingly* inoffensive mid-90s site. < 1308118733 244493 :Sgeo!~Sgeo@ool-43500f4b.dyn.optonline.net JOIN :#esoteric < 1308119145 708036 :pikhq!~pikhq@174-22-159-133.clsp.qwest.net PRIVMSG #esoteric :ACTION cannot *fathom* why autoconf has sizeof checks, anyways. < 1308119378 231475 :pikhq!~pikhq@174-22-159-133.clsp.qwest.net PRIVMSG #esoteric :Are there any times where you would want to know sizeof(foo) outside of compilation that aren't absolutely revolting? < 1308119550 701297 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric :I can't even think of absolutely revolting reasons < 1308119627 31641 :Sgeo!~Sgeo@ool-43500f4b.dyn.optonline.net QUIT :Read error: Connection reset by peer < 1308119643 423289 :pikhq!~pikhq@174-22-159-133.clsp.qwest.net PRIVMSG #esoteric :I *suppose* you might want it in a preprocessor check? < 1308119658 99071 :Sgeo!~Sgeo@ool-43500f4b.dyn.optonline.net JOIN :#esoteric < 1308119703 384194 :pikhq!~pikhq@174-22-159-133.clsp.qwest.net PRIVMSG #esoteric :Though I can't fathom why limits.h wouldn't suffice. < 1308119709 211865 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net PRIVMSG #esoteric :now I can only think of absolutely revolting reasons yes < 1308119851 553509 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :revolting peasants < 1308120013 679102 :pikhq!~pikhq@174-22-159-133.clsp.qwest.net PRIVMSG #esoteric :http://www.gnu.org/software/autoconf/manual/html_node/Particular-Types.html#Particular-Types Why, it's a giant list of pointless checks! < 1308120585 431225 :Gregor!Gregor@codu.org PRIVMSG #esoteric :'In Swedish, Norwegian and Danish, gift means "poison" but also "married".' < 1308120636 423501 :pikhq!~pikhq@174-22-159-133.clsp.qwest.net PRIVMSG #esoteric :Even better. Swedish, Norwegian, Danish, German, and English "gift" are cognate. < 1308120794 335105 :Gregor!Gregor@codu.org PRIVMSG #esoteric :Yeah, I'm reading this on the Wikipedia "False friends" page. < 1308120840 435223 :pikhq!~pikhq@174-22-159-133.clsp.qwest.net PRIVMSG #esoteric :Good article. < 1308121650 995865 :pikhq!~pikhq@174-22-159-133.clsp.qwest.net PRIVMSG #esoteric :ACTION winces < 1308121667 887235 :pikhq!~pikhq@174-22-159-133.clsp.qwest.net PRIVMSG #esoteric :alloca is not in any consistent place. < 1308121669 316123 :pikhq!~pikhq@174-22-159-133.clsp.qwest.net PRIVMSG #esoteric :At all. < 1308121726 569508 :pikhq!~pikhq@174-22-159-133.clsp.qwest.net PRIVMSG #esoteric :Admittedly, with C99 it's ceased to be necessary. < 1308121842 994169 :Deewiant!~deewiant@cs186230.pp.htv.fi PRIVMSG #esoteric :It seems to be in stdlib.h quite often < 1308121895 271752 :pikhq!~pikhq@174-22-159-133.clsp.qwest.net PRIVMSG #esoteric :It exists in: stdlib.h, alloca.h, malloc.h, as __builtin_alloca, as __alloca. < 1308122251 497747 :pikhq!~pikhq@174-22-159-133.clsp.qwest.net PRIVMSG #esoteric :*sigh* < 1308122260 732257 :pikhq!~pikhq@174-22-159-133.clsp.qwest.net PRIVMSG #esoteric :GTK+'s use of pkg-config is wrong. < 1308122272 176069 :pikhq!~pikhq@174-22-159-133.clsp.qwest.net PRIVMSG #esoteric :Requires: gdk-${target}-2.0 atk cairo gdk-pixbuf-2.0 gio-2.0 pangoft2 < 1308122275 47188 :pikhq!~pikhq@174-22-159-133.clsp.qwest.net PRIVMSG #esoteric :FAIL < 1308122370 476084 :pikhq!~pikhq@174-22-159-133.clsp.qwest.net PRIVMSG #esoteric :Unless it's part of your library's public ABI, it's not in "Requires:". < 1308122467 823283 :oerjan!oerjan@tyrell.nvg.ntnu.no QUIT :Quit: leaving < 1308122570 896079 :Deewiant!~deewiant@cs186230.pp.htv.fi PRIVMSG #esoteric :Windows's CRT has _alloca FWIW < 1308122637 76225 :pikhq!~pikhq@174-22-159-133.clsp.qwest.net PRIVMSG #esoteric :Yeah, and it defines alloca in "malloc.h". < 1308122652 769310 :Deewiant!~deewiant@cs186230.pp.htv.fi PRIVMSG #esoteric :Yep < 1308122723 90240 :clog!~nef@bespin.org QUIT :Ping timeout: 240 seconds < 1308123765 348030 :pikhq_!~pikhq@71-219-227-197.clsp.qwest.net JOIN :#esoteric < 1308123792 742244 :pikhq!~pikhq@174-22-159-133.clsp.qwest.net QUIT :Ping timeout: 276 seconds < 1308124352 942116 :augur!~augur@208.58.6.161 PRIVMSG #esoteric :*sigh* < 1308124360 542262 :augur!~augur@208.58.6.161 PRIVMSG #esoteric :sometimes i feel europe is where civilization really is < 1308124369 417545 :augur!~augur@208.58.6.161 PRIVMSG #esoteric :and the US is just some pathetic attempt at civilization < 1308124397 264374 :augur!~augur@208.58.6.161 PRIVMSG #esoteric :then i browse the web and see pics of europe and am certain of it. < 1308124537 161749 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :pikhq_: alloca doesn't even consistently *exist* < 1308125133 726622 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net QUIT :Quit: hello < 1308125399 712583 :pikhq_!~pikhq@71-219-227-197.clsp.qwest.net PRIVMSG #esoteric :olsner: Also true. < 1308125409 112381 :pikhq_!~pikhq@71-219-227-197.clsp.qwest.net PRIVMSG #esoteric :olsner: Hence why it doesn't exist in a consistent place. < 1308127298 578169 :pizearke!~pup@CPE-65-30-150-106.wi.res.rr.com QUIT :Quit: Leaving. < 1308127391 249326 :pikhq_!~pikhq@71-219-227-197.clsp.qwest.net QUIT :Ping timeout: 252 seconds < 1308127397 299320 :pikhq!~pikhq@71-219-251-171.clsp.qwest.net JOIN :#esoteric < 1308127506 886181 :pizearke!~androirc@173-122-164-49.pools.spcsdns.net JOIN :#esoteric < 1308128602 129163 :MigoMipo!~John@84-217-12-122.tn.glocalnet.net JOIN :#esoteric < 1308128730 667445 :oklofok!~oklopol@dyn37-212.vpn.utu.fi QUIT : < 1308129183 121324 :pikhq!~pikhq@71-219-251-171.clsp.qwest.net QUIT :Ping timeout: 240 seconds < 1308129194 325926 :pikhq!~pikhq@71-219-213-215.clsp.qwest.net JOIN :#esoteric < 1308129509 956055 :BeholdMyGlory!~behold@unaffiliated/beholdmyglory JOIN :#esoteric < 1308129758 616107 :pizearke!~androirc@173-122-164-49.pools.spcsdns.net QUIT :Remote host closed the connection < 1308130606 75954 :clog!~nef@bespin.org JOIN :#esoteric < 1308131404 184606 :choochter!~choochter@host81-146-28-169.btremoteinternet-dsl.bt.net JOIN :#esoteric < 1308131635 956422 :MigoMipo!~John@84-217-12-122.tn.glocalnet.net QUIT :Read error: Connection reset by peer < 1308132199 929891 :Behold!~behold@unaffiliated/beholdmyglory JOIN :#esoteric < 1308132262 903833 :BeholdMyGlory!~behold@unaffiliated/beholdmyglory QUIT :Ping timeout: 264 seconds < 1308134572 655348 :FireFly!~firefly@unaffiliated/firefly JOIN :#esoteric < 1308134628 965185 :sebbu2!~sebbu@ADijon-152-1-11-149.w83-194.abo.wanadoo.fr JOIN :#esoteric < 1308134629 334202 :sebbu2!~sebbu@ADijon-152-1-11-149.w83-194.abo.wanadoo.fr QUIT :Changing host < 1308134629 513633 :sebbu2!~sebbu@unaffiliated/sebbu JOIN :#esoteric < 1308134825 55997 :sebbu!~sebbu@unaffiliated/sebbu QUIT :Ping timeout: 240 seconds < 1308137252 308175 :choochter!~choochter@host81-146-28-169.btremoteinternet-dsl.bt.net QUIT :Read error: Connection reset by peer < 1308137263 62459 :choochter!~choochter@host81-146-28-169.btremoteinternet-dsl.bt.net JOIN :#esoteric < 1308137980 135686 :Miss_!~shosh@2.91.233.52 JOIN :#esoteric < 1308137986 588454 :Miss_!~shosh@2.91.233.52 PRIVMSG #esoteric :Hi < 1308138059 492534 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :so I think it would be interesting to have a programming competition in which programs logged into a MUD-like server, and issued commands to interact with one another in a competition of some kind. < 1308138068 970895 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :That's as specific as I've gotten so far. < 1308138075 142745 :Vorpal!~AnMaster@unaffiliated/anmaster JOIN :#esoteric < 1308138077 299714 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au JOIN :#esoteric < 1308138094 70761 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :it would be interesting if there were teams, as opposed to the usual 1v1 setup < 1308138108 435550 :Miss_!~shosh@2.91.233.52 PRIVMSG #esoteric : < 1308138141 802289 :Miss_!~shosh@2.91.233.52 PRIVMSG #esoteric :;( < 1308138157 421011 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :Miss_: ? < 1308138181 95443 :Miss_!~shosh@2.91.233.52 PRIVMSG #esoteric :I'm sad < 1308138245 353865 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :why's that. < 1308138291 438527 :Miss_!~shosh@2.91.233.52 PRIVMSG #esoteric :My friend hate me ;( < 1308138339 71405 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :I see. < 1308138372 655106 :Miss_!~shosh@2.91.233.52 PRIVMSG #esoteric :See what !! < 1308138374 662488 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :Do you, uh, want to create an esoteric programming language about that? < 1308138384 106479 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :because that would be so awesome. < 1308138404 383080 :Miss_!~shosh@2.91.233.52 PRIVMSG #esoteric :Yup < 1308138437 700384 :Miss_!~shosh@2.91.233.52 PRIVMSG #esoteric :Sorry i don't speak english < 1308138458 436730 :Miss_!~shosh@2.91.233.52 PRIVMSG #esoteric ::"o < 1308138468 658951 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :well, that could be a problem. But so far I haven't noticed. < 1308138481 228372 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :"I see" is "I understand" < 1308138487 867261 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :or, whatever. < 1308138495 85538 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :that might even make less sense. < 1308138496 945985 :Miss_!~shosh@2.91.233.52 PRIVMSG #esoteric :اها < 1308138502 282084 :Miss_!~shosh@2.91.233.52 PRIVMSG #esoteric :Aha < 1308138531 589358 :Miss_!~shosh@2.91.233.52 PRIVMSG #esoteric :I'm saudi < 1308138544 539646 :Miss_!~shosh@2.91.233.52 PRIVMSG #esoteric ::"o < 1308138567 488756 :augur!~augur@208.58.6.161 PRIVMSG #esoteric :what is this :"o you're doing < 1308138588 923754 :Miss_!~shosh@2.91.233.52 PRIVMSG #esoteric :Crying < 1308138618 835160 :augur!~augur@208.58.6.161 PRIVMSG #esoteric :i see i see < 1308138642 840212 :augur!~augur@208.58.6.161 PRIVMSG #esoteric :are you a saudi girl in the us or something? < 1308138670 611102 :Miss_!~shosh@2.91.233.52 PRIVMSG #esoteric :In riyadh < 1308138680 16755 :augur!~augur@208.58.6.161 PRIVMSG #esoteric :and you're on the internet? crazy. < 1308138700 838167 :Miss_!~shosh@2.91.233.52 PRIVMSG #esoteric :!!! < 1308138703 803862 :augur!~augur@208.58.6.161 PRIVMSG #esoteric :isnt it vaguely illegal for you to be talking to men on the internet? < 1308138742 278697 :Miss_!~shosh@2.91.233.52 PRIVMSG #esoteric :Yes < 1308138750 650697 :augur!~augur@208.58.6.161 PRIVMSG #esoteric :well, you should be careful then < 1308138756 105284 :augur!~augur@208.58.6.161 PRIVMSG #esoteric :cause most people on irc are men < 1308138765 913692 :augur!~augur@208.58.6.161 PRIVMSG #esoteric :oh hey, that rhymed AND had the same line length < 1308138768 360596 :augur!~augur@208.58.6.161 PRIVMSG #esoteric :awesomes < 1308138771 642008 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :...lol < 1308138778 20916 :Miss_!~shosh@2.91.233.52 PRIVMSG #esoteric :I'm girl < 1308138794 526912 :augur!~augur@208.58.6.161 PRIVMSG #esoteric :Miss_: yes.. we figured < 1308138880 147663 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :http://www.samair.ru/proxy/type-01.htm < 1308138913 37680 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :might be useful < 1308138987 508996 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :if you can configure your IRC client to use a proxy, or can even understand what I'm saying right now. Who knows. < 1308139080 863788 :Miss_!~shosh@2.91.233.52 PRIVMSG #esoteric :Bay < 1308139231 773825 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :..? < 1308139251 627641 :augur!~augur@208.58.6.161 PRIVMSG #esoteric :obviously she's a fan of Michael Bay's cinematic achievements < 1308139301 464628 :Miss_!~shosh@2.91.233.52 PRIVMSG #esoteric :I want to sleep < 1308139314 458084 :augur!~augur@208.58.6.161 PRIVMSG #esoteric :his work on the Transformers movies, with their stark color contrasts emblematic of desert environments, and their hard mechanical overlords, are obvious parallels to her experiences in the arid country of saudi arabia, with its US-military-industrial-complex-funded monarchy that oppresses women < 1308139323 243020 :augur!~augur@208.58.6.161 PRIVMSG #esoteric :how could you not see this, CakeProphet? < 1308139411 564357 :pikhq_!~pikhq@71-219-231-66.clsp.qwest.net JOIN :#esoteric < 1308139428 340613 :pikhq!~pikhq@71-219-213-215.clsp.qwest.net QUIT :Ping timeout: 258 seconds < 1308139453 70033 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 JOIN :#esoteric < 1308140232 494195 :Miss_!~shosh@2.91.233.52 PRIVMSG #esoteric :I would like to speak english , i tried it and i try < 1308140240 4401 :Miss_!~shosh@2.91.233.52 PRIVMSG #esoteric :Sorry < 1308140268 486962 :Miss_!~shosh@2.91.233.52 PRIVMSG #esoteric :Forgive me and fogive me < 1308140297 142104 :Miss_!~shosh@2.91.233.52 PRIVMSG #esoteric ::) < 1308140519 722306 :Miss_!~shosh@2.91.233.52 PART :#esoteric < 1308140684 951505 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :augur: ... < 1308140686 386487 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :rofl < 1308140690 832543 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :what the hell. < 1308140699 615763 :augur!~augur@208.58.6.161 PRIVMSG #esoteric :CakeProphet: :) < 1308140716 346610 :augur!~augur@208.58.6.161 PRIVMSG #esoteric :its a work of art, isnt it < 1308141097 670529 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :oh yes, truly priceless. < 1308141101 928693 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :there is no value. it's undefined. < 1308141106 837940 :augur!~augur@208.58.6.161 PRIVMSG #esoteric :im a master at bullshit < 1308141127 70268 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :damnit why is lambdabot so difficult to install. < 1308141303 365201 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :to increase your ties to #esoteric < 1308141970 530291 :Cheery!~cheery@a88-113-50-171.elisa-laajakaista.fi JOIN :#esoteric < 1308142052 973331 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake QUIT :Read error: Operation timed out < 1308142236 125895 :CakeProphet!~adam@h160.57.18.98.dynamic.ip.windstream.net JOIN :#esoteric < 1308142236 543924 :CakeProphet!~adam@h160.57.18.98.dynamic.ip.windstream.net QUIT :Changing host < 1308142236 723507 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake JOIN :#esoteric < 1308145046 166017 :nooga!~nooga@maverick.aircity.pl JOIN :#esoteric < 1308145092 831050 :nooga!~nooga@maverick.aircity.pl PRIVMSG #esoteric :Þwat < 1308145117 620962 :nooga!~nooga@maverick.aircity.pl PRIVMSG #esoteric :Þat* < 1308145782 843120 :ais523!~ais523@unaffiliated/ais523 JOIN :#esoteric < 1308145811 946862 :MigoMipo!~John@84-217-12-122.tn.glocalnet.net JOIN :#esoteric < 1308146455 86917 :ais523!~ais523@unaffiliated/ais523 TOPIC #esoteric :[...] Rule 2: You do /NOT/ talk about Rule 1. | Join ##verybadattitude for more intellectual discussions | Logs: http://codu.org/logs/_esoteric/ and http://tunes.org/~nef/logs/esoteric/?C=M;O=D < 1308147443 786284 :copumpkin!~pumpkin@unaffiliated/pumpkingod QUIT :Quit: Computer has gone to sleep. < 1308149105 251996 :copumpkin!~pumpkin@unaffiliated/pumpkingod JOIN :#esoteric < 1308149195 289826 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 QUIT :Ping timeout: 255 seconds < 1308150087 26335 :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 . < 1308151170 921988 :wareya!~wareya@cpe-74-70-142-220.nycap.res.rr.com QUIT :Quit: Lost terminal < 1308151237 990351 :mtve!~mtve@65.98.99.53 QUIT :Ping timeout: 260 seconds < 1308151254 387812 :Slereah!~Slereah@ANantes-259-1-67-182.w92-135.abo.wanadoo.fr QUIT :Ping timeout: 252 seconds < 1308151304 29025 :Slereah!~Slereah@ANantes-259-1-67-182.w92-135.abo.wanadoo.fr JOIN :#esoteric < 1308151320 450711 :SimonRC!~sc@fof.durge.org QUIT :Ping timeout: 252 seconds < 1308151362 918146 :mtve!~mtve@65.98.99.53 JOIN :#esoteric < 1308151377 900951 :FireFly!~firefly@unaffiliated/firefly QUIT :Ping timeout: 260 seconds < 1308151387 879755 :SimonRC!~sc@fof.durge.org JOIN :#esoteric < 1308151430 403822 :F!~f@pool-96-255-203-102.washdc.fios.verizon.net QUIT :Ping timeout: 252 seconds < 1308151489 205506 :F!~f@pool-96-255-203-102.washdc.fios.verizon.net JOIN :#esoteric < 1308151521 934003 :FireFly!~firefly@unaffiliated/firefly JOIN :#esoteric < 1308152871 313281 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake QUIT :Ping timeout: 240 seconds < 1308153256 743736 :Sgeo!~Sgeo@ool-43500f4b.dyn.optonline.net NOTICE #esoteric :Blah < 1308154988 224970 :pikhq_!~pikhq@71-219-231-66.clsp.qwest.net QUIT :Ping timeout: 246 seconds < 1308154999 404069 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net JOIN :#esoteric < 1308155193 8442 :SimonRC!~sc@fof.durge.org QUIT :Ping timeout: 260 seconds < 1308155290 948605 :SimonRC!~sc@fof.durge.org JOIN :#esoteric < 1308155561 68807 :TOGoS!~Stevens@h69-128-42-2.mdsnwi.dedicated.static.tds.net JOIN :#esoteric < 1308155569 421060 :TOGoS!~Stevens@h69-128-42-2.mdsnwi.dedicated.static.tds.net PART :#esoteric < 1308155837 657503 :tswett!~Warrigal@unaffiliated/ihope PRIVMSG #esoteric :... < 1308156739 612446 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :tswett: trying to write an XML quine? wouldn't it have to be infinitely long? < 1308156799 298845 :Sgeo!~Sgeo@ool-43500f4b.dyn.optonline.net PRIVMSG #esoteric :What about XSLT? < 1308156804 629338 :Sgeo!~Sgeo@ool-43500f4b.dyn.optonline.net PRIVMSG #esoteric :Or is it XLST? < 1308156838 472662 :tswett!~Warrigal@unaffiliated/ihope PRIVMSG #esoteric :Yes, I'm writing an infinite XML quine. < 1308157016 294972 :monqy!~chap@pool-71-102-217-117.snloca.dsl-w.verizon.net JOIN :#esoteric < 1308157056 59473 :tswett!~Warrigal@unaffiliated/ihope PRIVMSG #esoteric :{"type": "object", "contents": [{"type": "string", "value": "type"}, {"type": "string", "value": "objects"}, {"type": "string", "value": "contents"}, {"type": "array", "contents": ["type": "object", "contents": [{"type":... < 1308157217 300307 :tswett!~Warrigal@unaffiliated/ihope PRIVMSG #esoteric :Apply (Constructor "Apply") [Apply (Constructor "Constructor") [String "Apply"], List [Apply (Apply (Constructor "Constructor") [String "Constructor"]) [List [Apply (Constructor "String") (String "Apply")]], Apply... < 1308157263 218311 :tswett!~Warrigal@unaffiliated/ihope PRIVMSG #esoteric :It couldn't be too hard to figure out exactly how efficient each of these encodings is. < 1308157298 493355 :tswett!~Warrigal@unaffiliated/ihope PRIVMSG #esoteric :LISP has them all beat, with an efficiency of 1: < 1308157313 390052 :tswett!~Warrigal@unaffiliated/ihope PRIVMSG #esoteric :(quote (quote (quote (quote (quote (quote (quote (quote (quote (quote (quote (quote (quote (quote (quote (quote (quote (quote (quote (quote (quote (quote (quote (quote (quote (quote (quote (quote (quote... < 1308157354 195658 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :well, 1 in the limit < 1308157381 574193 :tswett!~Warrigal@unaffiliated/ihope PRIVMSG #esoteric :Right. < 1308157405 219902 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :now I vaguely want to see how that would work with Java reflection < 1308157409 438248 :Sgeo!~Sgeo@ool-43500f4b.dyn.optonline.net PRIVMSG #esoteric :What was that Apply and Constructor thing supposed to be? Haskell? < 1308157412 855409 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :but I'm worried that the result might make me go insane < 1308157413 824862 :tswett!~Warrigal@unaffiliated/ihope PRIVMSG #esoteric :Sgeo: yeah. < 1308157428 554775 :tswett!~Warrigal@unaffiliated/ihope PRIVMSG #esoteric :JavaScript reflection is much less insanity-causing, no? < 1308157444 656304 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I imagine so < 1308157577 401742 :ralc!~ralc@79.142.230.243.static.knet.bolignet.dk JOIN :#esoteric < 1308157711 499548 :Lymia!~moe@unaffiliated/cirno-chan PRIVMSG #esoteric :What would an Python infinitely long quine look like? < 1308157721 353243 :Lymia!~moe@unaffiliated/cirno-chan PRIVMSG #esoteric :I imagine you could do something with print"print... < 1308157726 266196 :tswett!~Warrigal@unaffiliated/ihope PRIVMSG #esoteric :Lymia: very similar to that JSON one, I imagine. < 1308157735 576542 :tswett!~Warrigal@unaffiliated/ihope PRIVMSG #esoteric :I mean, these aren't really quines; these are self-describing data structures. < 1308157740 78933 :Lymia!~moe@unaffiliated/cirno-chan PRIVMSG #esoteric :But I don't want to try and figure out an equation for \s < 1308157755 638182 :Lymia!~moe@unaffiliated/cirno-chan PRIVMSG #esoteric :(How many \s to put in each string) < 1308157761 593605 :Lymia!~moe@unaffiliated/cirno-chan PRIVMSG #esoteric :I imagine it'd grow quite fast. < 1308157931 54117 :pumafyre!~puma@174-24-204-215.tukw.qwest.net JOIN :#esoteric < 1308159183 76336 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :pikhq: The reason autoconf offers sizeof tests is that you might want to have something like int32_t on a system without stdint.h < 1308159236 775980 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :As "#if sizeof(int) == 4" does not work (the preprocessor can't evaluate sizeof), I don't see a way how to find out which type(s) has/have 32 bits during compilation. < 1308159267 957304 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :And yes, I *do* know about CHAR_BIT and sizeof reporting in that unit... < 1308159289 289017 :Gregor!Gregor@codu.org PRIVMSG #esoteric :pikhq didn't take me up on my offer of the clever trick for testing that :) < 1308159299 364244 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :amusingly, it manages to work out sizes of variables even during cross-compiling < 1308159300 865513 :Gregor!Gregor@codu.org PRIVMSG #esoteric :(Yes, it is testable at compile-time) < 1308159319 776826 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :the way it does it, is to declare arrays which would have negative sizes or positive sizes depending on if the size of the time is above a certain boundary < 1308159323 862023 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :then binary-searches on compile errors < 1308159344 323419 :Gregor!Gregor@codu.org PRIVMSG #esoteric :Daaaaaaaamn, ais523's got it : < 1308159346 485293 :Gregor!Gregor@codu.org PRIVMSG #esoteric :*:P < 1308159347 725280 :aloril!~aloril@dsl-tkubrasgw3-fe7ef900-153.dhcp.inet.fi QUIT :Ping timeout: 250 seconds < 1308159355 539685 :Gregor!Gregor@codu.org PRIVMSG #esoteric :The other way is to make switch statements with sizeof cases. < 1308159369 408426 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Gregor: wouldn't that just cause warnings, rather than errors? < 1308159372 747393 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I didn't come up with it myself, anyway < 1308159377 399512 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I got that from autoconf source < 1308159383 105889 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :which I have spent probably too much time reading < 1308159393 970684 :Gregor!Gregor@codu.org PRIVMSG #esoteric :ais523: switch (argc) { case sizeof(int): case 4: } /* error if sizeof(int) == 4, no error otherwise */ < 1308159396 892561 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :duplicate case statements should be errors. < 1308159399 223553 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :aha < 1308159412 90895 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :although less than/greater than is much faster than equal-to < 1308159438 988052 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I know I wrote my own autoconf test to see if a particular function was declared by yacc's generated output (to see if I needed to call it) < 1308159439 937578 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Gregor: I do know the trick, actually. < 1308159455 313967 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :and the way I did that was to declare it myself with a completely insane type signature (full of things like function pointers to doubles) < 1308159462 373857 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :to see if it errored out on the incompatible redeclaration < 1308159472 847933 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :if it didn't, I assumed it didn't exist, so I didn't try to call it < 1308159486 891515 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Gregor: sizeof(foo) ? -1 : 1; yay. < 1308159518 537127 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :twice11: I have no intent to support systems that lie about C99 support, and little intent to support systems without C99 support. < 1308159546 426340 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :The standard's a decade old, support it. I refuse to IE6 it. < 1308159554 179959 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :pikhq: If you rely on C99, you can ignore most of autoconf. < 1308159581 393865 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :pikhq: how many systems with working C99 support do you have access to? < 1308159585 92596 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :The remaining problems are solved at least as well by simple things like pkg-config < 1308159589 146247 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :note that gcc's support is broken, and MSVC doesn't even try < 1308159591 600479 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :s/If you rely on C99, / < 1308159628 602465 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :ais523: What's broken about GCC's support? < 1308159640 32196 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :gcc's C99 support is good enough for most general-use projects, even if it is lacking in some areas. < 1308159641 454078 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :mostly minor details < 1308159648 123359 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Ah, well then. < 1308159649 72619 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I think there's a famous screwup with inline < 1308159657 937282 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :where C99 inline = gcc static inline, C99 static inline = gcc inline < 1308159661 412924 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :but I can never remember the details < 1308159668 861005 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :and apparently gcc refuses to change for compatibility reasons, or something < 1308159675 123781 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :(I can't even remember the difference between the two anyway) < 1308159717 967879 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :One of them is an error if included in multiple translation units, IIRC. < 1308159762 912925 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :ais523: Strange, I thought it *had* implementation of C99 semantics on that, but only if you used -std=c99. < 1308159780 29580 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :ah, that might make sense < 1308159784 453862 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :there are various other things, let me find the list < 1308159793 132604 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :ais523: With the compatibility one being enabled by -std=c89, std=gnu89, -fgnu89-line, or attribute((gnu_inline)). < 1308159821 582294 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Sorry, no on the std=c89. < 1308159826 469637 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Invalid keyword. ;) < 1308159852 756482 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :here we go: http://gcc.gnu.org/c99status.html < 1308159863 480411 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :ah, I remember something that caught me out earlier < 1308159867 625133 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :ACTION just googled for "c99status"... < 1308159881 10060 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :when I was trying to write a\u00e8 or something like that as a variable name < 1308159884 600417 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :and gcc didn't even parse it correctly < 1308159901 602089 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :Is that "extended identifiers"? < 1308159907 338623 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :yep < 1308159913 450748 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :that list's actually more complete than last I looked < 1308159918 521337 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :so it seems they're working on it < 1308159918 838913 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Looks like a handful of compiler edge cases, and a giant swath of things required of the libc. < 1308159942 984963 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :yep < 1308159947 876241 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :c99 is so edgecasy < 1308160028 494839 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Edge cases can be tested for if need be. But I am *not* going to do things like implement a bunch of checks just to see if libc is not 40 years old. < 1308160051 22131 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :(admittedly, you shouldn't *use* those checks in autoconf, but people do. *sigh*) < 1308160060 47357 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :pikhq: I do, because I can < 1308160081 32866 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :ais523: How do you handle the test failing? < 1308160085 228462 :aloril!~aloril@dsl-tkubrasgw3-fe7ef900-153.dhcp.inet.fi JOIN :#esoteric < 1308160094 259776 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :hmm, perhaps you're targeting "libraries generally supported by POSIXy systems, and the bits of C99 that are widely implemented" < 1308160102 707363 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Pretty much. < 1308160105 437856 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :pikhq: normally by #defining to somethign dangerous but equivalent < 1308160122 882595 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Oh, so you actually have an alternative to the feature you're testing? < 1308160127 542614 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :e.g. C-INTERCAL uses sprintf if snprintf doesn't exist, and removes all uses of "const" from the program if the compiler doesn't support it < 1308160134 729767 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Congrats, you're using autoconf right! < 1308160193 553923 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Which, sadly, is a *major* achievement. < 1308160206 743560 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :obviously testing for things and then ignoring the resulting info is pointless < 1308160213 177458 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I think C-INTERCAL did that before I started working on it < 1308160219 141932 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :and I've been through about three build systems since < 1308160224 867328 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Yeah, that's how most people use autoconf. < 1308160234 990133 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :There should be more info about using autoconf correctly. < 1308160242 795394 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :Doing that is an art. < 1308160244 627712 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :twice11: The documentation sucks eggs. < 1308160263 453118 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Well, it tells you *very* well what each test does and how to use them. < 1308160279 509115 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :It does not tell you at all why you're doing any of them. < 1308160291 621935 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Making it a gigantic cargo cult. < 1308160303 284379 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :once you know what you're using autoconf for, the documentation is quite good at letting you know how to use it to do that < 1308160327 64937 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :the issue with autoconf is people using it because "autoconf is good" or whatever, without thinking to work out what they actually need it for < 1308160341 373470 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :And don't let us get started on libtool. It seems to mostly work, but for the sake of your sanity, *DON'T* *LOOK* *INSIDE*! < 1308160341 673350 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :e.g. I don't check triplets in autoconf code as it's incredibly rare that that information is useful, but all sorts of stuff does < 1308160348 965454 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :(possibly exception: you're writing a compiler targeting native code) < 1308160351 955476 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :*possible < 1308160390 768167 :Gregor!Gregor@codu.org PRIVMSG #esoteric :Special fun: Compile GMP with target none-elf :P < 1308160430 99858 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :ACTION knows that the problem libtool (tries to) solve(s) is not trivial at all, though. I not gonna claim I can do better. < 1308160449 802995 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Gregor: what happens? < 1308160449 985836 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I'm having trouble visualising what that even means < 1308160460 401023 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :I can do better than libtool. Step one is to admit that the problem libtool tries to solve is not a relevant problem. < 1308160496 132931 :Gregor!Gregor@codu.org PRIVMSG #esoteric :ais523: "none" is its special target for disabling all ASM code, and it ignores the rest of the triple but they still have to get through config.guess, so it has to be semivaild. < 1308160499 301294 :Gregor!Gregor@codu.org PRIVMSG #esoteric :*semivalid < 1308160524 172466 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :If you decide you don't need to support dynamic libraries on any system having something remotely like that, of course it will get easier. < 1308160543 202022 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :And I won't question any decision like that. < 1308160557 824051 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :twice11: If you decide you don't need to handle static library dependencies on any system, actually. < 1308160567 121804 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :hm is there any power of two that is also a power of 10? < 1308160574 560018 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Vorpal: 1 < 1308160575 367896 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :Vorpal: 1 < 1308160576 692016 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :otherwise, no < 1308160579 853288 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :unless you count 0 < 1308160581 182736 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :ah right < 1308160583 789603 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :which you shouldn't < 1308160592 589175 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :that's easy enough to prove by prime factorisation < 1308160594 700007 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :*That* is the majority of the logic in libtool. Making static libraries have dependency information. < 1308160597 240414 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :All other powers of 10 have the prime factor 5 < 1308160597 420151 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :ais523, wait 10^1 != 2^1 < 1308160604 283070 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Vorpal: 10^0 = 2^0 = 1 < 1308160611 246980 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :ais523, ah right < 1308160611 796002 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :true < 1308160661 864849 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Problem is, a) if that's all you want, pkg-config has it covered b) libtool does it by installing .la files, which *only works if you're using the full autoconf stack, anyways*. < 1308160664 822913 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :Dependency info on static libs should be straight-forward, isn't it? < 1308160691 564483 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :pikhq, pkg-config is way newer than libtool < 1308160711 857727 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Oh, and c) it does this by just recording a single dependencies variable, which is actually WRONG on systems with dynamic linking. < 1308160733 380244 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :la is a very common typo for me, into sh < 1308160747 379157 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :it's an invalid command, but the name looks like it has something to do with dynamic library linking < 1308160748 408608 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :Of course, mixing dependency info in .la and .pc (one half of libs using only .la and the other half using only .pc) is not gonny fly. < 1308160773 644130 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :twice11: Having dependency info in .la is fundamentally broken on most systems. < 1308160794 624850 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :I think debian has some hacks around that. < 1308160808 535211 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Most of the distros do. Do you know what that hack *is*? < 1308160816 146039 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :pikhq, --as-needed? < 1308160819 55070 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :rm *.la < 1308160837 476279 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :haha < 1308160886 319200 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Also, it's a bit more than just static library dependency information. It makes it so you can pretend you have a dynamic linker everywhere. < 1308160900 498567 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :libtool also has logic for emulating dlopen, with ltdl. < 1308160928 132744 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :rm *.la is not going to work for the libtool abstraction layer of "I link just to libfoo.la, and that works, no matter whether the library is called foo.dll, libfoo.so.1, libfoo.dylib or libfoo.a", but -lfoo does that as well on most sufficiently modern unix systems. < 1308160967 365944 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :twice11: They only keep .la files around for packages where the .la file is actually read. < 1308160967 546088 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :Libtool could have the advantage of automatically adding dependencies *only* if it happens to choose a static library. < 1308160985 434081 :puma!~android@174-24-204-215.tukw.qwest.net JOIN :#esoteric < 1308161000 467651 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Yes, guess what pkg-config handles right? < 1308161033 94301 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :The option --static ;) < 1308161054 535460 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :And, actually, I think the only .la files floating around on my system are for users of ltdl. < 1308161063 868613 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :But IIRC this also was not in the first version of pkg-config. < 1308161105 221279 :pumafyre!~puma@174-24-204-215.tukw.qwest.net QUIT :Quit: Ex-Chat < 1308161115 71938 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :I happen to have a lot of .la files here, like /usr/lib/libSDL.la < 1308161120 790511 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Which distro? < 1308161128 18504 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :$ ls /usr/lib/*.la | wc -l < 1308161128 198364 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :131 < 1308161128 198559 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :Debian, mostly wheezy < 1308161130 533681 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :ubuntu < 1308161147 451853 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :10.04 < 1308161149 297298 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Strange, I'm on wheezy too. < 1308161150 863522 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric : $ ls /usr/lib/*.la | wc -l < 1308161153 428026 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :64 < 1308161167 464522 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :pikhq, different set of packages < 1308161168 879002 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :For comparison: < 1308161170 454746 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric : $ ls /usr/lib/*.so | wc -l < 1308161172 929134 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :262 < 1308161182 620076 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric : $ ls /usr/lib/pkgconfig/* | wc -l < 1308161184 901664 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :193 < 1308161187 839149 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :$ ls /usr/lib/*.so | wc -l < 1308161188 18767 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :476 < 1308161192 265430 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :It's in the dev packages. < 1308161199 384458 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Aaah. < 1308161204 74139 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :$ ls /usr/lib/pkgconfig/* | wc -l < 1308161204 264369 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :288 < 1308161223 543085 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :I definitely have sdl's -dev installed < 1308161241 221716 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Anyways. The only feature of libtool that's still *useful* is abstracting the creation of dynamic libraries. < 1308161242 605636 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :Note that dependency_libs is empty in debian's libSDL.la < 1308161266 710818 :puma!~android@174-24-204-215.tukw.qwest.net QUIT :Quit: -a- < 1308161267 801598 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :I think that's debians hack - clearing that variable. < 1308161268 179768 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :And that is a much easier task. < 1308161292 578454 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :breaks static linking < 1308161309 902107 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :Vorpal: Debian folks know that. < 1308161310 563880 :puma!~android@174-24-204-215.tukw.qwest.net JOIN :#esoteric < 1308161319 887985 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :and? < 1308161340 977060 :puma!~android@174-24-204-215.tukw.qwest.net QUIT :Client Quit < 1308161345 701263 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :But they still decided that for their purpose, it's the solution with the best effort/use ratio. < 1308161346 445299 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Vorpal: Eh, libtool static linking is broken unless you're using libtool, and people usually only use libtool if they're making a dynamic library. < 1308161392 786455 :Gregor!Gregor@codu.org PRIVMSG #esoteric :Debian: Literally always right. < 1308161398 489777 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :That one single "feature" of libtool really does not work. < 1308161453 984677 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :ACTION keeps wondering that autoconf goes really great lengths about supporting cross-compile environments, but having no support for HOSTCC/CC_FOR_BUILD in autoconf/automake (i.e. you have to do that by hand). < 1308161478 992285 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :ACTION is sorry about messed-up grammar in the last sentence. < 1308161480 123622 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :HOSTCC? < 1308161482 666417 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :hm < 1308161528 1660 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :The compiler that compiles programs that can be executed on the system you are currently building on is traditionally called HOSTCC, and the GNU people call it CC_FOR_BUILD. < 1308161540 924612 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :hah < 1308161573 588674 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :The GNU people have a slightly shifted view of their terms for the architectures involved in cross-compiling, as they are too much fixed on compilers. < 1308161591 370283 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :right < 1308161611 858662 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :For "normal" people, there is the "host" system where you compile your program on, and the "target" system where the program will run on. < 1308161612 885341 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :twice11, their terminology makes sense when doing a canadian cross < 1308161643 44296 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :twice11: the way autoconf doesn't do it is annoying, and the way gcc does it is really stupid < 1308161657 203241 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :C-INTERCAL deals with the problem by generating two configure scripts and getting one to call the other < 1308161691 311543 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :how does gcc do it < 1308161713 429513 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Vorpal: basically by writing huge sections of configure by hand rather than getting autoconf to generate them < 1308161723 633700 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :plus some other stuff too that I couldn't follow because I was too stunned by the previous reason < 1308161732 127304 :pumafyre!~Android@174-24-204-215.tukw.qwest.net JOIN :#esoteric < 1308161734 125426 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :hehe < 1308161768 858737 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :For gcc people thinking about gcc, of course it makes sense to call the system gcc runs on "host" and the system gcc will produce software for "target", so a gcc with a certain set of "host" and "target" can be used in a compilation process involving "host" and "target" as normal people define it. < 1308161813 268980 :pumafyre!~Android@174-24-204-215.tukw.qwest.net QUIT :Client Quit < 1308161829 282892 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :Now for the canadian cross (three parties involved: You build a compiler on system $A, which runs on $B, producing executables that run on $C), you need three names. < 1308161839 77084 :pumafyre!~Android@174-24-204-215.tukw.qwest.net JOIN :#esoteric < 1308161878 427054 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :As I explained, compiler-centric people choose B==host, C==target, and need to invent something for A. GNU decided to call A "build". < 1308161912 152098 :pumafyre!~Android@174-24-204-215.tukw.qwest.net QUIT :Client Quit < 1308161920 263920 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :OTOH, when you *don't* compile a compiler, there *is* no C, and thus no "target" in GNU speak. < 1308161932 546165 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :And "host" will be the opposite of what you expect. < 1308161957 251150 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Yeah, the terminology for autoconf cross-compiling is quite confusing. < 1308161972 168789 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :This is why GNU people don't you "HOSTCC" as variable name - and this shows Linus is not a GNU guru. < 1308161974 582345 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :I'm pretty sure that the terminology was invented for GCC, and brought to autoconf, though. < 1308161996 665740 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :Yeah, hysterical reasins, I guess, too. < 1308162018 241868 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :I think it pretty clear Linus has no regard for autoconf. < 1308162021 787478 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :More likely, developed autoconf alongside gcc. < 1308162050 205064 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :The Linux build system is custom built with GNU Make. < 1308162064 686930 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :So they always have "how do we do this for gcc" in mind when they work on autoconf... < 1308162074 39450 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :pikhq: I know. And it uses HOSTCC... < 1308162080 323831 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :And probably the best example of custom-built make out there, TBH. < 1308162099 136092 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :"Best" in the sense of "actually good", not "best-known". < 1308162126 34558 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :pikhq, well busybox and uclibc uses it too < 1308162157 100556 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :pikhq, how do you go about using it for yourself < 1308162164 432913 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :I mean which files do you extract < 1308162220 581134 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Vorpal: Makefile, most of scripts/ < 1308162241 885389 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :pikhq, part of Makefile is kernel specific, like make modules < 1308162252 125117 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :or make bzimage < 1308162297 302911 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Vorpal: Yeah, and it's easy to remove those. < 1308162306 505497 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :$(Q)$(MAKE) -f $(srctree)/scripts/Makefile.modpost < 1308162319 501503 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :That's the command for modules. < 1308162324 499765 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :Q? < 1308162339 189306 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :For quieting a command. < 1308162343 149422 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :ah < 1308162352 389624 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Remember, it has verbose and silent building. < 1308162368 59440 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :right < 1308162377 445722 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :pikhq, where is the sources to make menuconfig/xconfig/gconfig < 1308162386 790464 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :are* < 1308162392 130723 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :scripts/kconfig < 1308162401 514703 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :ah < 1308162531 222968 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Also, if you want a Tup/kconfig thing, then git://gittup.org/kconfig.git < 1308162556 910937 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :hah < 1308162833 621488 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Wow. Prostitution is legal in Canada. It is illegal to do just about any form of public notice for prostitution, and illegal to live off of the income gained thereby. < 1308162859 526656 :Sgeo!~Sgeo@ool-43500f4b.dyn.optonline.net PRIVMSG #esoteric :illegal to live off the income? < 1308162870 460940 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :pikhq, not as weird as Sweden. Being a prostitute is legal, but buying those services are not < 1308162874 267486 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Sgeo: As in, "have it as your main or primary source of income". < 1308162876 749663 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :So someone may sell his body, excepts if he/she needs to to buy food? < 1308162883 11865 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :twice11: Yes. < 1308162889 857735 :Sgeo!~Sgeo@ool-43500f4b.dyn.optonline.net PRIVMSG #esoteric :Hmm, maybe to make sure that it's not something people feel presured to do? < 1308162903 84858 :Gregor!Gregor@codu.org PRIVMSG #esoteric :So you have to whore on the side :P < 1308162919 669570 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :That's kind of strange, and definitely for the reason Sgeo mentioned. < 1308162950 663091 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Sgeo: Except that the whole *issue* with desperate people going into prostitution is that it not being a ordinarily regulated industry makes it so that people only do it if they are desperate. < 1308163020 590004 :Sgeo!~Sgeo@ool-43500f4b.dyn.optonline.net PRIVMSG #esoteric :But if there are legal prostitutes, then the unregulated illegal prositutes probably won't get much business < 1308163046 678737 :Sgeo!~Sgeo@ool-43500f4b.dyn.optonline.net PRIVMSG #esoteric :Or is the legal prostitution not regulated, o.O? < 1308163055 853056 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Sgeo: It's "legal". < 1308163071 695403 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :You can't be employed as a prostitute. < 1308163072 839870 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :In Germany, prostitution is legalized, but it didn't really turn out to help the whores. < 1308163086 996780 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :twice11: What sort of regulations did they do on it? < 1308163110 211941 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :It's something that *really* needs regulations to prevent exploitation. < 1308163138 155774 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :I don't know the details, but the idea was prostitution to be a regular job so you pay taxes and get social insurance. < 1308163194 284015 :twice11!~twice11@lenny32.physik.fu-berlin.de PRIVMSG #esoteric :Exploiting people ("Zuhälterei", kind of "being a pimp") is still illegal, as it always was. < 1308163518 550580 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :How's about we just solve poverty? < 1308163524 422744 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Suddenly, desperation goes away! < 1308163570 597052 :Gregor!Gregor@codu.org PRIVMSG #esoteric :But then there are no whores :( < 1308163603 87589 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Gregor: There will, no doubt, still be people who want to fuck for $. < 1308163615 522303 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Just not people doing it because they have no other options. < 1308163898 641962 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :(see: Japanese porn industry. Many of their porn stars are also non-porn actors) < 1308163933 721093 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :(and filthy stinking rich after not-too-long) < 1308164213 438486 :CakeProphet!~adam@h160.57.18.98.dynamic.ip.windstream.net JOIN :#esoteric < 1308164213 913034 :CakeProphet!~adam@h160.57.18.98.dynamic.ip.windstream.net QUIT :Changing host < 1308164214 92776 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake JOIN :#esoteric < 1308164223 167336 :wareya!~wareya@cpe-74-70-142-220.nycap.res.rr.com JOIN :#esoteric < 1308165072 605454 :pumafyre_!~Android@174-24-204-215.tukw.qwest.net JOIN :#esoteric < 1308165178 100272 :pumafyre_!~Android@174-24-204-215.tukw.qwest.net QUIT :Client Quit < 1308165320 729577 :pumarain!~Android@174-24-204-215.tukw.qwest.net JOIN :#esoteric < 1308165394 267464 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :The fuck? < 1308165408 482648 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Singapore is labelled as a developing country. < 1308165417 456435 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :As is South Korea. < 1308165431 850063 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :South Korea is about as developed as Japan. < 1308165444 463177 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :I.E. "from the fucking future". < 1308165473 408262 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :And Qatar. The richest country. < 1308165481 77354 :pumarain!~Android@174-24-204-215.tukw.qwest.net QUIT :Client Quit < 1308166249 774691 :ais523!~ais523@unaffiliated/ais523 QUIT :Read error: Connection reset by peer < 1308168617 118506 :azaq23!~derivecto@unaffiliated/azaq23 JOIN :#esoteric < 1308168987 259364 :atrapado!~r-o@46.222.18.144 JOIN :#esoteric < 1308169004 118190 :nooga!~nooga@maverick.aircity.pl QUIT :Ping timeout: 240 seconds < 1308169850 528432 :copumpkin!~pumpkin@unaffiliated/pumpkingod NICK :dependentpumpkin < 1308170044 606300 :dependentpumpkin!~pumpkin@unaffiliated/pumpkingod NICK :copumpkin < 1308171603 877393 :Gregor!Gregor@codu.org PRIVMSG #esoteric :Yesterday to be unhelpful I set the helptext for "opera" in ##javascript to "La donna è mobile, qual piuma al vento, muta d'accento, e di pensiero!" < 1308171613 436368 :Gregor!Gregor@codu.org PRIVMSG #esoteric :But the first time I set it I typo'd "piuma" to "puma" < 1308171639 941762 :Gregor!Gregor@codu.org PRIVMSG #esoteric :Which, as it turns out, changes the original meaning, "Women are fickle, like a feather in the wind" to the much-more-descriptive "Women are fickle, like a puma in the wind" < 1308171785 527638 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :That is an astounding typo, and I didn't realise you had any competence in what looks to be Italian. < 1308171835 583773 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Or that you've memorised an Italian saying, as it may turn out to be. :P < 1308171893 155019 :Gregor!Gregor@codu.org PRIVMSG #esoteric :I just know the first lyrics to La Donna è Mobile :P < 1308171902 876494 :Gregor!Gregor@codu.org PRIVMSG #esoteric :Which probably isn't supposed to be capitalized in Italian. < 1308171903 222709 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :BAH < 1308171946 313945 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Yeah, capital casing is a somewhat Germanic convention, deriving from how nouns are capitalised in Germanic languages (except English, which lost that two or three hundred years ago) < 1308171955 735719 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Erm, title case. < 1308172031 679868 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Well, it's more an English-specific convention, but following patterns from other Germanic languages. < 1308172183 805939 :Gregor!Gregor@codu.org PRIVMSG #esoteric :Anyway, the point is that I was unhelpfully setting the "opera" word to actual opera, when of course people expected the browser since this is ##javascript < 1308172209 544786 :Gregor!Gregor@codu.org PRIVMSG #esoteric :Also, women are fickle like a puma in the wind. < 1308172227 450568 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Oh, duh, I *should* have caught that that was obviously an opera. My brain is not always coöperative, though. Alas. < 1308172381 597138 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake QUIT :Ping timeout: 244 seconds < 1308172470 589125 :CakeProphet!~adam@h33.14.18.98.dynamic.ip.windstream.net JOIN :#esoteric < 1308172479 343087 :CakeProphet!~adam@h33.14.18.98.dynamic.ip.windstream.net QUIT :Changing host < 1308172479 522430 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake JOIN :#esoteric < 1308173050 673394 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake QUIT :Ping timeout: 240 seconds < 1308173803 601084 :Cheery!~cheery@a88-113-50-171.elisa-laajakaista.fi QUIT :Ping timeout: 276 seconds < 1308174012 959723 :pumarain!~Android@174-24-204-215.tukw.qwest.net JOIN :#esoteric < 1308174097 462494 :pumarain!~Android@174-24-204-215.tukw.qwest.net QUIT :Client Quit < 1308175503 436575 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :It occurs to me that as an entirely unintended side effect, it is exceptionally easy to do custom rules in my build system. < 1308175507 202495 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Write a Tupfile outside of the objs directory. < 1308175509 936239 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :That's all. < 1308176168 400741 :CakeProphet!~adam@h215.31.18.98.dynamic.ip.windstream.net JOIN :#esoteric < 1308176168 620386 :CakeProphet!~adam@h215.31.18.98.dynamic.ip.windstream.net QUIT :Changing host < 1308176168 620540 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake JOIN :#esoteric < 1308176467 667995 :MigoMipo!~John@84-217-12-122.tn.glocalnet.net QUIT :Read error: Connection reset by peer < 1308176799 193427 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com JOIN :#esoteric < 1308176862 929511 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :403 (No such channel). < 1308176993 581264 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :Finally I reduced "Success" to 21 bytes of Unlambda. Three hours later, someone else also figure it out. < 1308177002 409251 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :But is there a way to shorten it even more? < 1308177183 652491 :pumarain!~Android@174-24-204-215.tukw.qwest.net JOIN :#esoteric < 1308177264 263942 :pumarain!~Android@174-24-204-215.tukw.qwest.net QUIT :Client Quit < 1308177301 483472 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :I found some information about LLVM with C. It says apparently you have to use a C++ linker even if it is a C code < 1308177367 648437 :Vorpal!~AnMaster@unaffiliated/anmaster QUIT :Quit: ZNC - http://znc.sourceforge.net < 1308177379 126158 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :99% chance they're full of shit. < 1308177449 882455 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :What the fuck it only produces static libraries? < 1308177462 239879 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Okay, yeah, you do need -lc++. < 1308177491 753428 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :No, wait, there it is. < 1308177497 754336 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :zzo38: Yeah, they're full of shit. < 1308177531 563340 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :Then how do I *properly* use LLVM with C? < 1308177621 103619 :Vorpal!~AnMaster@unaffiliated/anmaster JOIN :#esoteric < 1308177824 198331 :jix!jix@tomakin.h-ix.net QUIT :Ping timeout: 240 seconds < 1308177828 632278 :jix!jix@tomakin.h-ix.net JOIN :#esoteric < 1308178147 635776 :jix!jix@tomakin.h-ix.net QUIT :Remote host closed the connection < 1308178154 332051 :jix!jix@tomakin.h-ix.net JOIN :#esoteric < 1308178180 408008 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :*Gaaah*, they don't use pkg-config, but their library name is libLLVM-Major.Minor.so < 1308178216 737239 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Yes, that's right, they make it impossible to link against LLVM generically. < 1308178272 404805 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :zzo38: Give up, they don't *want* you to use it. < 1308178302 457687 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :They hate you. < 1308178338 189368 :wareya!~wareya@cpe-74-70-142-220.nycap.res.rr.com QUIT :Read error: Connection reset by peer < 1308178396 349070 :wareya!~wareya@cpe-74-70-142-220.nycap.res.rr.com JOIN :#esoteric < 1308178787 43486 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Oh, wait, llvm-config. < 1308178820 168952 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Fuck people not using pkg-config. < 1308178915 232727 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :... Debian, in their infinite wisdom, has decided to rename llvm-config to llvm-config-major.minor < 1308178927 868372 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :STOP DEFEATING THE POINT < 1308179132 972944 :atrapado!~r-o@46.222.18.144 QUIT :Quit: FIN < 1308179257 841907 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :You may think you're being clever by allowing multiple LLVM version to be installed at once, but you're not. < 1308179279 834672 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :You're just shitting on reasonable expectations. < 1308179372 986329 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net PRIVMSG #esoteric :Expectations like "I can actually check for a library foo that install foo-config using foo-config". < 1308179561 331839 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au JOIN :#esoteric < 1308180092 177138 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :pikhq: They don't *want* me to use it? What is this? < 1308180130 506696 :pikhq_!~pikhq@71-219-219-174.clsp.qwest.net JOIN :#esoteric < 1308180164 624962 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :pikhq_: They don't *want* me to use it? What is this? < 1308180217 652510 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :What is the point of LLVM if nobody can use it? < 1308180222 257764 :oerjan!oerjan@tyrell.nvg.ntnu.no JOIN :#esoteric < 1308180230 74542 :pikhq!~pikhq@71-219-193-247.clsp.qwest.net QUIT :Ping timeout: 246 seconds < 1308180232 227648 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com QUIT :Quit: Not time now < 1308180240 369952 :pikhq_!~pikhq@71-219-219-174.clsp.qwest.net PRIVMSG #esoteric :zzo38: I dunno. It's just OUCH < 1308180515 700784 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric : Yeah, capital casing is a somewhat Germanic convention, deriving from how nouns are capitalised in Germanic languages (except English, which lost that two or three hundred years ago) < 1308180540 219469 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :also except Norwegian, Danish and Swedish, at least < 1308180574 776836 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :i thought it was a german (no -ic) thing. i'm not sure about dutch. < 1308180585 43234 :pikhq_!~pikhq@71-219-219-174.clsp.qwest.net PRIVMSG #esoteric :oerjan: Yeah, I looked around and it's apparently only been done in some West Germanic languages. < 1308180619 935914 :pikhq_!~pikhq@71-219-219-174.clsp.qwest.net PRIVMSG #esoteric :Modern practice in German, historical practice in Dutch and English... < 1308180649 63341 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric : Finally I reduced "Success" to 21 bytes of Unlambda. Three hours later, someone else also figure it out. < 1308180657 588377 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :...why the heck did he _just_ leave < 1308180695 493150 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :hm 21 seems only slightly shorter than the obvious solution < 1308180724 548605 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :!unlambda ```````.s.s.e.c.c.u.Si < 1308180726 531869 :EgoBot!Gregor@codu.org PRIVMSG #esoteric :sseccuS < 1308180729 385257 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :er < 1308180763 547009 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :!unlambda ```````.S.u.c.c.e.s.si < 1308180763 903243 :EgoBot!Gregor@codu.org PRIVMSG #esoteric :Success < 1308180887 466225 :Adamfyre_!~puma@174-24-204-215.tukw.qwest.net JOIN :#esoteric < 1308180982 732570 :Wamanuz2!~Wamanuz@78-69-168-43-no84.tbcn.telia.com JOIN :#esoteric < 1308180987 912751 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :looks tricky < 1308180991 261077 :ralc!~ralc@79.142.230.243.static.knet.bolignet.dk QUIT :Quit: Leaving < 1308181019 699623 :Sgeo_!~Sgeo@ool-43500f4b.dyn.optonline.net JOIN :#esoteric < 1308181037 922789 :teuchter!~choochter@host81-146-28-169.btremoteinternet-dsl.bt.net JOIN :#esoteric < 1308181050 340599 :Sgeo!~Sgeo@ool-43500f4b.dyn.optonline.net QUIT :Read error: Connection reset by peer < 1308181369 463493 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric : Apply (Constructor "Apply") [Apply (Constructor "Constructor") [String "Apply"], List [Apply (Apply (Constructor "Constructor") [String "Constructor"]) [List [Apply (Constructor "String") (String "Apply")]], Apply... < 1308181373 634250 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :> fix show < 1308181383 604677 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :...now what < 1308181398 292658 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :@help < 1308181410 430601 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :lambdabot is sick :( < 1308181436 378153 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :lol < 1308181448 14047 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :wait < 1308181468 674514 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :Constructor/String/Apply/List, "Apply"/"Construtor"/"String"... < 1308181471 213972 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :hm or its server is, i cannot get to it < 1308181471 815197 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :Is there a "List" then < 1308181517 507523 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :Patashu: i don't know about any of them, may they're in Language.Haskell, haskell's self-parsing library < 1308181543 721957 :Adamfyre_!~puma@174-24-204-215.tukw.qwest.net QUIT :Quit: leaving < 1308181548 123773 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :but the result of fix show is much shorter < 1308181568 937123 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :> fix fix < 1308181575 926330 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :i said lambdabot was sick < 1308181581 866378 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :I'm making it worse < 1308181584 898357 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :also that doesn't type, i think < 1308181594 441541 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :doubtful, /whois lambdabot lambdabot doesn't answer < 1308181667 19102 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :!haskell take 100 $ Data.Function.fix show < 1308181671 232592 :EgoBot!Gregor@codu.org PRIVMSG #esoteric :​"\"\\\"\\\\\\\"\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" < 1308181699 918687 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :!haskell :t Data.Function.fix < 1308181702 322603 :EgoBot!Gregor@codu.org PRIVMSG #esoteric :Data.Function.fix :: (a -> a) -> a < 1308181702 811826 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :what < 1308181718 159812 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :why does it look like... that < 1308181725 404523 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :Patashu: that string is an infinite quine in haskell :) < 1308181760 325727 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :first of all, fix show is equivalent to show (show (show (show (show ... < 1308181760 846034 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :what does it -do- < 1308181784 772298 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :show returns a string, so each show there also applies to a string < 1308181804 461121 :Sgeo_!~Sgeo@ool-43500f4b.dyn.optonline.net PART #esoteric :"Leaving" < 1308181808 73495 :Sgeo_!~Sgeo@ool-43500f4b.dyn.optonline.net JOIN :#esoteric < 1308181823 647340 :Lymia!~moe@unaffiliated/cirno-chan PRIVMSG #esoteric :!haskell Data.Function.fix show < 1308181828 13918 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :show turns a string into "string" with anything escaped inside as necessary < 1308181838 193952 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :Lymia: i used take 100 for a reason < 1308181838 949445 :EgoBot!Gregor@codu.org PRIVMSG #esoteric :​"\"\\\"\\\\\\\"\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ < 1308181844 281677 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :wait what < 1308181853 672681 :Lymia!~moe@unaffiliated/cirno-chan PRIVMSG #esoteric :I dunno. < 1308181854 306345 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :...when did that start working :O < 1308181855 474803 :Sgeo_!~Sgeo@ool-43500f4b.dyn.optonline.net PRIVMSG #esoteric :Dear XChat: As a matter of fact, I am not actually disconnected from any servers, so stop saying that I am. < 1308181899 177130 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :!underload ((test )S:^):^ < 1308181935 819161 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :that didn't answer < 1308181954 726284 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :!haskell scanl1 (*) [1..] < 1308181978 935318 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :wtf < 1308181981 327172 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :!echo hi < 1308181982 9043 :EgoBot!Gregor@codu.org PRIVMSG #esoteric :hi < 1308182021 67370 :choochter!~choochter@host81-146-28-169.btremoteinternet-dsl.bt.net QUIT :*.net *.split < 1308182021 556638 :Wamanuz!~Wamanuz@78-69-168-43-no84.tbcn.telia.com QUIT :*.net *.split < 1308182022 98796 :lambdabot!~lambdabot@li85-105.members.linode.com QUIT :*.net *.split < 1308182022 278296 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :Gregor: how the heck did EgoBot manage to respond to !haskell Data.Function.fix show when it usually fails on any infinite output line? < 1308182028 553919 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :and still does for the other tests < 1308182061 91042 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :!haskell :t show < 1308182063 626625 :EgoBot!Gregor@codu.org PRIVMSG #esoteric :show :: (Show a) => a -> String < 1308182114 976289 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :Patashu: show is haskell's basic function for creating a printable/parseable representation of a value. on strings, it puts " around and escapes what's necessary inside < 1308182144 558349 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :crucially, for strings it is lazy enough to return the initial " _without_ looking at the actual string passed first < 1308182171 738130 :pizearke!~androirc@173-122-164-49.pools.spcsdns.net JOIN :#esoteric < 1308182175 11007 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :which means it is lazy enough to get going when you apply fix to it < 1308182253 513705 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :first there's ", then there's \" which is a " escaped, then there's \\\" which is _that_ escaped, and so on < 1308182382 642633 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :Oh, lol < 1308182384 515 :hagb4rd!~hagb4rd@koln-4db4282b.pool.mediaWays.net JOIN :#esoteric < 1308182386 350498 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au PRIVMSG #esoteric :It's infinitely nested strings < 1308182394 74529 :oerjan!oerjan@tyrell.nvg.ntnu.no PRIVMSG #esoteric :...in a way.