< 1325980836 882212 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :itidus21: it might be best to understand lambda calculus in general first < 1325980848 480882 :Vorpal!~AnMaster@unaffiliated/anmaster QUIT :Ping timeout: 276 seconds < 1325980849 270873 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :not for me < 1325980853 81125 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :for most people maybe < 1325980882 867177 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :anyway, i like this presented idea of SK as gardening < 1325980891 313269 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :then you can see how SK(I) can be used to rewrite any lambda expression without variables < 1325980905 235092 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :ive decided to pretend I doesn't exist < 1325980924 954688 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :it complicates things too much < 1325980928 371636 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :well I = SKK, for example < 1325980950 177620 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric : >:-) < 1325980965 688575 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :so it's redundant. but it's logically necessary to use some form of it for the rewriting. < 1325981001 609094 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :to handle \x . x < 1325981001 765211 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :hmm.. bah.. i don't need lambda calculus < 1325981079 408015 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :What good has lambda calculus ever done, huh? < 1325981179 454087 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :a lot, but probably not enough to parody an entire monty python sketch. < 1325981186 827816 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :What's Lambda Calculus ever done for me, eh? < 1325981189 125670 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Aw. < 1325981194 949228 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :I'm going back to the warm, waiting arms of the Combinatrix. < 1325981248 26534 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :yeah do the combinator bird shop sketch instead < 1325981250 301361 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :oerjan: Are you sure lambda calculus wasn't involved when the aqueduct and sanitation were invented? < 1325981262 392880 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :fizzie: well not _entirely_ sure < 1325981272 825157 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :oerjan, this mockingbird is mocking me all the time! < 1325981273 141760 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com QUIT :Read error: Connection reset by peer < 1325981304 513339 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :it's not mocking, it's just diagonalizing < 1325981328 855636 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :oerjan: Ooh, I just realized you must like the bird shop sketch because it involves fjords. < 1325981341 368863 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :We call them firths here. < 1325981350 684035 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric : Makes sense. You want to lazily instantiate your integes. Those things take up a lot of cycles. I think because PHP has to start with a float, then use the cpu fan to mill off the decimal point. < 1325981353 950671 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :As exemplified by the Firth of Forth, the best-named thing ever. < 1325981386 254747 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Phantom_Hoover: that is a surprisingly good name, indeed < 1325981396 490147 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :oerjan, look, my lad, I know mockery when I hear it and I am being mocked right now. < 1325981399 182789 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :fizzie: actually i was thinking more of the cheese shop sketch here. do you have any owls? < 1325981478 155610 :Ngevd!~Taneb@host-2-99-87-159.as13285.net PRIVMSG #esoteric :Goodnigt < 1325981479 503621 :Ngevd!~Taneb@host-2-99-87-159.as13285.net PRIVMSG #esoteric :h < 1325981481 919062 :Ngevd!~Taneb@host-2-99-87-159.as13285.net QUIT :Quit: Goodbye < 1325981634 803511 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :ACTION fjords for the pines < 1325981866 890825 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Fjording the river. < 1325981883 519097 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :. o O ( Sadc = ac(dc); Sa(dc) = Sa(dc); Sa(dc)b = ab((dc)b); ) < 1325981903 69554 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :ACTION fnords for the pies < 1325981917 144707 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :yay i can compute anything O.O < 1325981986 151716 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :. o O ( Kab = a; K(ab) = K(ab); K(ab)c = (ab); ) < 1325982120 194473 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :but i am pretty dumb so i couldn't do much more than what i just typed at this stage < 1325982525 822754 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :. o O ( (((Sa)d)c) = ((ac)(dc)); ((aK)(dK))b = ((aK)(dK))b; ) < 1325982630 220178 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :. o O ( ((KK)(dK))b = (Kb); ) < 1325982985 851548 :azaq23!~derivecto@unaffiliated/azaq23 QUIT :Quit: Leaving. < 1325983033 388383 :nooga!~nooga@maverick.aircity.pl QUIT :Ping timeout: 240 seconds < 1325985016 110778 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 QUIT :Quit: Leaving < 1325985719 472250 :MDude!~fyrc@c-174-55-44-190.hsd1.pa.comcast.net QUIT :Quit: later chat < 1325985866 988644 :oerjan!oerjan@sprocket.nvg.ntnu.no TOPIC #esoteric :Official revolting channel of the inverse femtobarn stupid topic change plurality, the Prequel: The Revenge of the Monad | http://codu.org/logs/_esoteric/ < 1325986401 894053 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :shachaf, if I pick a random day of #haskell logs and search for your name, I can see you dealing with pretty much every kind of annoying question / behavior in that channel < 1325986407 259549 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :it's uncanny < 1325986417 43181 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :either you will burn out soon like me < 1325986423 457607 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :or you are simply stronger < 1325986492 271847 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :also i don't understand how #haskell got so big anyway < 1325986575 166882 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :argh it's up to 815 people < 1325986963 49754 :pikhq!~pikhq@71-219-222-28.clsp.qwest.net PRIVMSG #esoteric :It seems like, unlike most language channels, #haskell contains a very high proportion of the active Haskell community. < 1325987015 61544 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :how are you defining "Haskell community" in such a way that this isn't definitionally true < 1325987027 185177 :pikhq!~pikhq@71-219-222-28.clsp.qwest.net PRIVMSG #esoteric :Vague handwavey nonsense. < 1325987048 214984 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :i think the people who write core libraries and production software in Haskell are under-represented on IRC < 1325987073 819426 :pikhq!~pikhq@71-219-222-28.clsp.qwest.net PRIVMSG #esoteric :Hmm. Yeah, you don't see a lot of GHC devs in there I don't think... < 1325987096 196218 :pikhq!~pikhq@71-219-222-28.clsp.qwest.net PRIVMSG #esoteric :Or some of the more significant libraries. < 1325987114 380517 :pikhq!~pikhq@71-219-222-28.clsp.qwest.net PRIVMSG #esoteric :And, actually, who in #haskell does notable production software in Haskell? :P < 1325987122 385429 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :it's more fun to learn a little Haskell and talk about it all day < 1325987163 989350 :pikhq!~pikhq@71-219-222-28.clsp.qwest.net PRIVMSG #esoteric :"Programming sucks. Knowledge about programming is awesome." or some such? < 1325987173 168047 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :yeah there's some of that < 1325987200 339066 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :it's worse with Haskell because there is so much to learn before it's actually a better tool for getting shit done < 1325987242 179281 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :most people are stuck at a stage where they only use Haskell on personal projects where "write this in Haskell" is an explicit goal < 1325987255 505026 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :> iterate(show.length&&&take 1<= iterate((show.length&&&take 1)<= iterate((<**>[show.length,take 1]).group)"1" < 1325987510 306650 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Couldn't match expected type `GHC.Types.Char' < 1325987510 463916 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : against inferred type... < 1325987591 33729 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric ::t (<**>[show.length,take 1]).group < 1325987591 796299 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :[Char] -> [String] < 1325987667 326293 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :> iterate(sequence[show.length,take 1]<= [String] < 1325987761 416405 :Lymee!~moe@ppp-70-251-230-64.dsl.rcsntx.swbell.net JOIN :#esoteric < 1325987761 732403 :Lymee!~moe@ppp-70-251-230-64.dsl.rcsntx.swbell.net QUIT :Changing host < 1325987761 888558 :Lymee!~moe@inportb/loli/cirno-chan JOIN :#esoteric < 1325987768 954772 :Madoka-Kaname!~moe@inportb/loli/cirno-chan QUIT :Disconnected by services < 1325987772 359681 :Lymee!~moe@inportb/loli/cirno-chan NICK :Madoka-Kaname < 1325987778 529768 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric ::t (<**>[show.length,take 1]) < 1325987779 361387 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :[[Char]] -> [String] < 1325987810 731537 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric ::t sequence[show.length,take 1] < 1325987811 522725 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :[Char] -> [String] < 1325988041 301408 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric ::t flip < 1325988042 410728 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :forall (f :: * -> *) a b. (Functor f) => f (a -> b) -> a -> f b < 1325988076 412865 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric ::t flip[show.length,take 1] < 1325988077 205003 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :[Char] -> [String] < 1325988109 526445 :Jafet!~Jafet@unaffiliated/jafet JOIN :#esoteric < 1325988116 892755 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com JOIN :#esoteric < 1325988184 806794 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :@hoogle f (a -> f b) -> a -> f b < 1325988185 285173 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Prelude (=<<) :: Monad m => (a -> m b) -> m a -> m b < 1325988185 443871 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Control.Monad (=<<) :: Monad m => (a -> m b) -> m a -> m b < 1325988185 600030 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Prelude (>>=) :: Monad m => m a -> (a -> m b) -> m b < 1325988308 279182 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :@hoogle f (a -> f b) -> f a -> f b < 1325988308 753986 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Prelude (=<<) :: Monad m => (a -> m b) -> m a -> m b < 1325988308 912356 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Control.Monad (=<<) :: Monad m => (a -> m b) -> m a -> m b < 1325988309 68424 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Prelude (>>=) :: Monad m => m a -> (a -> m b) -> m b < 1325988529 629055 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :> iterate(join.flip[show.length,take 1]<= *) a a1. (Monad m, Functor m) => m (a1 -> m a) -> a1 -> m a < 1325988587 379391 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :heh < 1325989420 348356 :Jafet1!~Jafet@unaffiliated/jafet JOIN :#esoteric < 1325989569 182711 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :kmc: Yes, I'm kind of in the process of burning out. < 1325989584 539204 :Jafet!~Jafet@unaffiliated/jafet QUIT :Ping timeout: 276 seconds < 1325989619 482841 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :I wonder what it would be like if we still had dons's statistics on #haskell. < 1325989954 835355 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Maybe life would be good if I did like ddarius and ignored any questions that annoyed me. Even ddarius failed at that today. < 1325989996 101807 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :What's really amazing is how Cale is still at it. Cale might be the most patient person on IRC. < 1325990266 891783 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :kmc: So you still take LSD? It's not just a phase? < 1325990275 369093 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Or maybe it is a phase, in the ordinary meaning of "phase". < 1325990415 657457 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :shachaf, I haven't tripped in a while, but I'm planning to do so next month < 1325990432 637048 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :i think most people who take psychedelics only do it a few times ever < 1325990444 480594 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :so it's hard to say whether that's a "phase" < 1325990632 172458 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :possibly it's best to take it regularly but infrequently < 1325990637 626296 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :like once a year or once every few years < 1325990748 349585 :MDude!~fyrc@c-174-55-44-190.hsd1.pa.comcast.net JOIN :#esoteric < 1325990852 518832 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :kmc: If I did it, would I be like you? :-) < 1325990862 151722 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :you're already like me < 1325990870 940335 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Oh. < 1325990871 416121 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :at least, the things you say in #haskell are eerily like things I would say < 1325990881 878463 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Maybe it rubbed off. < 1325990899 777336 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :The worst thing about IRC is IRC logs. < 1325990904 91434 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :OK, the second-worst thing. < 1325990963 897638 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :i mean what's "best" depends on what you're trying to get out of it in the first place < 1325990987 68702 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :The worst thing about IRC is that it's all a complete waste of time. < 1325991005 940262 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :#haskell has not been a waste of time, overall < 1325991013 838997 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :I think the main reason I use IRC as much as I do is this aversion-to-publishing-things that I've mentioned before. < 1325991018 12011 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :i've learned quite a lot < 1325991024 283705 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :but perhaps it would be a waste of time to continue < 1325991034 682885 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :No, IRC log is good thng < 1325991110 560279 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :kmc: By the way, I considered Haskell as a teaching language a while ago when I was considering teaching someone about comput{ers,ing}, and decided against it because it seemed like it would be way more complicated. < 1325991111 986422 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :it may also be that the channel has grown / changed since i started, and so would be a waste to start now < 1325991127 963628 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :yeah < 1325991131 645068 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :I wondeer whether the same things apply to Scheme or not. < 1325991144 940583 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :which things? < 1325991155 867067 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Well, I was trying to figure out which things they were. :-) < 1325991159 469629 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :heh < 1325991162 833482 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :Scheme is far simpler than Haskell < 1325991169 383550 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :For example, does the type system make Haskell harder or easier to learn? < 1325991184 810108 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Reading Haskell code without type signatures is much more difficult in general. < 1325991216 770521 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :But maybe types have a higher up-front cost which can discourage students. < 1325991221 284134 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :harder, for a total beginner to programming, compared to a hypothetical similar-but-dynamically-typed language < 1325991236 686875 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :one thing to keep in mind is that beginners are writing very small programs with very simple types < 1325991243 916686 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :so they benefit less from static typing < 1325991255 569370 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :I suppose that's true. < 1325991275 577626 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :I still have the vague feeling that imperative languages are easier to learn. < 1325991280 766931 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Imperative programming, anyway. < 1325991286 409637 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :Scheme is a fine imperative language < 1325991289 968882 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :SICP gets into it pretty quickly < 1325991292 676112 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :IP i mean < 1325991322 117543 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :a language with very simple static types might be good for teaching < 1325991333 462204 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :but haskell's has too many bells and whistles in this area < 1325991354 253003 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :That's true. < 1325991359 283997 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Helium doesn't have type classes, I think. < 1325991360 710880 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :type classes and overloaded literals and monomorphism restriction < 1325991361 977198 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :right < 1325991379 205387 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :a simplified teaching version of Haskell would be great, except that nobody will maintain tool support that's comparable to GHC < 1325991394 839486 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :also GHC is pretty bad at explaining type errors < 1325991423 974684 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :it just tells you the two mismatched types... what you really want is a whole tree of the inferences leading to those types < 1325991430 962772 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :ACTION wonders how edwardk's type checker is going. < 1325991465 869506 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :anyway if you want to teach intro programming, teach python or javascript < 1325991476 725870 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :if you want to teach intro CS, use Scheme < 1325991582 290343 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :To teach about computer, learn a lower level programming language, such as C, or Forth, to learn how the computer is working. Possibly even assembly languages for specific computer you learn such as x86 or NES/Famicom. To learn a program, Haskell is as good as any; but even better to learn mathematical and programming together. < 1325991612 365469 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :if you teach someone C and tell them it's how the computer "really works" then they will probably become an insufferable douchebag < 1325991628 995062 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :kmc: Yes; that is why you need to learn assembly programming too. < 1325991640 467415 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :You're best off teaching them physics. < 1325991657 58252 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :But you can learn in C what correspond for example, the pointer to the address in the computer, pointer address array, and instructions set. < 1325991668 371056 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :zzo38, uh, assembly is not how the machine "really works" either < 1325991670 33203 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :There is also LLVM which is much better designed than C in my opinion < 1325991680 197104 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :it's another abstraction < 1325991693 128795 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :the implementation of this abstraction is incredibly complex < 1325991702 830750 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :but it's hard to observe or modify unless you work at Intel < 1325991707 659427 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :so people mostly ignore it < 1325991720 214958 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Pointers and addresses and memory are also a big abstraction. < 1325991735 413648 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :Yes everything mostly does. < 1325991763 31936 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :it's funny when people boast about how C is "close to the machine" and then turn out to be ignorant of caching or branch prediction or memory ordering issues or ... < 1325991767 293201 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :It is why, to design computer that includes the book of full schematic diagrams and program codes printout < 1325991780 860852 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :because C (and assembly) largely hide those things, < 1325991784 385484 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :but then they come back to bite you < 1325991786 535621 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :C is close to the abstract machine! < 1325991808 771960 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :shachaf, it's not that either < 1325991814 590096 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :C doesn't really hide caching. Any more than anything above the CPU level does. < 1325991825 706718 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :kmc: Yes, but the different computer, they might do caching and branch prediction and that stuff differently. You can learn for one individual computer, LLVM has some more control but is still for many computer. Assembly prorgamming and possibly if you have an emulator, can learn thing better < 1325991859 826793 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :shachaf, you saw the Linux bug I was talking about earlier? < 1325991871 543782 :pikhq!~pikhq@71-219-222-28.clsp.qwest.net PRIVMSG #esoteric :kmc: This is because their idea of "machine" is the abstract machine that once upon a time was non-abstract. < 1325991876 254611 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Which one? The one with the undefined behavior? < 1325991889 692778 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :yeah < 1325991934 496265 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :By "abstract machine" I mean the C abstract machine, of course, not x86. < 1325991945 810448 :oerjan!oerjan@sprocket.nvg.ntnu.no QUIT :Quit: Good night < 1325991949 647364 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :here's one example http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=3c8a9c63d5fd738c261bd0ceece04d9c8357ca13 < 1325992006 548089 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :the bug is that 'tun' can be NULL < 1325992008 816647 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :kmc: That bug was neat, by the way. You should tell me when you put the slides for your talk up. < 1325992048 65614 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :if a user maps a page at NULL they can control the value the kernel reads < 1325992058 332588 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :it looks like this is not exploitable, because 'sk' is unused before the NULL check < 1325992075 741418 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :but NULL dereference is Undefined Behavior and so the compiler is free to omit that check < 1325992083 939346 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :which gcc did, hence the bug was exploitable for privilege escalation < 1325992107 538178 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :anyway, if your model of C is "close to the machine" then you will make the mistake of thinking this code is safe (though it's still clearly wrong) < 1325992142 998212 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :shachaf, I will! < 1325992159 247138 :pikhq!~pikhq@71-219-222-28.clsp.qwest.net PRIVMSG #esoteric :shachaf: Of course, their intuitions map to pre-ISO C, so the C abstract machine is irrelevant. :P < 1325992173 748168 :pikhq!~pikhq@71-219-222-28.clsp.qwest.net PRIVMSG #esoteric :shachaf: Unfortunately for them, x86 is also an abstract machine. < 1325992204 226129 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :It's abstract machines all the way down. < 1325992258 398905 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :kmc: When is the talk? < 1325992271 346852 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Oh, Jan 27. < 1325992397 375289 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Oh, and Veinor is doing a Haskell class. < 1325992695 805938 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :'Haskell is the world's most *reasonable* programming language -- a language ideally suited for reasoning about code by machines, by humans, and by machines aiding humans.' < 1325992698 283108 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :that one? < 1325992776 958930 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :That would seem to be the one. < 1325992800 460357 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :that claim seems kinda completely false < 1325992803 347814 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :Haskell is best they do programming and mathematical reasoning in dealing with computer program < 1325992824 277442 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :For other thing, other programming language might be best, it is one reason why, they have many programming languages < 1325992856 848048 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :Haskell is far from the best language if you want to prove things about your programs < 1325992875 312358 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :kmc: Yes, you are probably correct about that. < 1325992890 948579 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :what examples are there of 'reasoning about code by machines' in Haskell < 1325992905 867893 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :I imagine that's referring to type checking or something. < 1325992915 794520 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Haskell is a very compromisey language if you take e.g. Agda into account. < 1325992915 952377 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :weak < 1325992923 255804 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :What I mean, for example, the functions can be like a mathematical functions, and typeclass that is supposed to have certain laws, that follow certain kind of mathematical structures, and sometimes a few things can be implied just by the type signatures < 1325992945 240428 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :kmc: Equational reasoning that the optimizer can do? < 1325992953 302792 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :I don't know, I didn't write it. < 1325992964 962887 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :it seems like a vastly overblown claim that will leave people disappointed < 1325992972 865884 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :i mean it's an approach i see a lot < 1325993005 116724 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :"Haskell is great, because Curry-Howard! Proving things in the type system. We can prove that, uh, Ints exist, unless they're ⊥." < 1325993028 611690 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Is that a _|_ character? < 1325993031 326431 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :yes < 1325993040 668564 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :Yes, there is Curry-Howard as well, and I have been able to make a typeclass for law of excluded middle, too < 1325993042 252065 :atrapado!~rdrp@95.169.240.36 JOIN :#esoteric < 1325993076 462722 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :A lot of claims about Haskell are overstated. < 1325993077 441959 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :Haskell is great but "wealth of static analysis tools" is not its strong point < 1325993095 224853 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :certain things fit very naturally into the type system < 1325993100 880074 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :but for anything else it's an uphill battle < 1325993107 342256 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :To be honest, I don't understand why a lot of people like Haskell so much. < 1325993114 498849 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :shachaf, it's better than Java! < 1325993126 851215 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :You see a fair number of people saying "Haskell is great!" but then they write atrocious code in it that disregards pretty much all its strength. < 1325993128 472070 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :the strongest praise a programming language could get < 1325993138 46721 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :If you have type for bijective functions then you could even use types as numbers, such as (,) meaning both and and multiplication, Either meaning or and addition, -> meaning implication and exponents, Maybe meaning successors < 1325993169 201579 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :shachaf, well, I think you know why I like Haskell, because I gave a talk about it :) < 1325993173 104034 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :it's a bit different from the party line < 1325993206 145510 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :kmc: My statement was ambiguous. < 1325993228 881169 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :"There exists a large set of people such that I don't why any of its members like Haskell so much." < 1325993236 563264 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :right < 1325993257 844469 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :There similarly exists a large set of people who dislike C++ for completely bogus reasons. < 1325993258 952829 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :which set is that < 1325993261 504048 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :hehe < 1325993283 896384 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Although admittedly that one's easier to justify, because "I don't understand it after investing a fair amount of effort" is a valid reason to dislike something. < 1325993298 659001 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :i think Haskell is a pragmatic language with a lot of well-chosen tradeoffs, and a good implementation < 1325993358 62635 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :which is a bit different from "Haskell is best because it enforces total ideological purity" < 1325993362 892348 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :or "Haskell is best because it has the most math" < 1325993391 728481 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :both of which are factually untrue, anyway < 1325993401 541278 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :but they are standard reasons given by beginners < 1325993508 651532 :Jafet1!~Jafet@unaffiliated/jafet PRIVMSG #esoteric :Most people have misconceptions about most things < 1325993511 562402 :Jafet1!~Jafet@unaffiliated/jafet NICK :Jafet < 1325993533 901414 :Jafet!~Jafet@unaffiliated/jafet PRIVMSG #esoteric :ACTION premature generalization < 1325993615 769869 :atrapado!~rdrp@95.169.240.36 PRIVMSG #esoteric :premature optimization < 1325993631 495369 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :and my opinion that Haskell is "practical" is conditional on the fact that I already know it well < 1325993689 238215 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :i think you could probably get 80% of the benefit in a language that's 20% as hard to learn < 1325993854 718209 :atrapado!~rdrp@95.169.240.36 PRIVMSG #esoteric :misconceptions are more like premature optimizations, rather than premature generalizations < 1325993869 677723 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :maybe that language is OCaml, or F#, or Clojure < 1325993872 369598 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :maybe it doesn't exist yet < 1325993900 245845 :iamcal!u1110@gateway/web/irccloud.com/x-glwffzytnduvznrn QUIT :Remote host closed the connection < 1325994140 425658 :atrapado!~rdrp@95.169.240.36 PRIVMSG #esoteric :we start with something general and then optimize it < 1325994208 746863 :atrapado!~rdrp@95.169.240.36 PRIVMSG #esoteric :or misoptimize it < 1325994254 349810 :atrapado!~rdrp@95.169.240.36 PRIVMSG #esoteric :. < 1325994428 962820 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :I need to go to one of NYC/Washington D.C./Los Angeles in the next few months. < 1325994453 641118 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :why? < 1325994461 461063 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Finnish passport. < 1325994470 926502 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :cool < 1325994474 926984 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :It would be best to get it before my birthday in July. < 1325994476 826029 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :well, LA is probably the cheapest for you to get to < 1325994483 7151 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :but NYC and DC are vastly superior cities < 1325994535 772919 :pikhq!~pikhq@71-219-222-28.clsp.qwest.net QUIT :Read error: Operation timed out < 1325994543 770246 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :That's true. But just think of how much cheaper the cost of going to Hac Boston would be if I go to NYC anyway! < 1325994545 381762 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net JOIN :#esoteric < 1325994552 265851 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :it's true! < 1325994555 986686 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Also I have relatives there. < 1325994562 750614 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :I guess I have relatives in San Diego too. < 1325994602 52075 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :San Diego is pretty far from LA < 1325994607 191718 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :but you know that < 1325994617 264049 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Boston is pretty far from NYC. < 1325994631 24868 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :oh, you have relatives in boston? < 1325994652 116916 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Yes. Although I was referring to my relatives in NYC. < 1325994661 198105 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :But I could visit both! < 1325994749 820753 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Anyway, I could drive to Los Angeles. < 1325994755 457144 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Do you feel less like me suddenly, kmc? < 1325994760 509691 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :haha < 1325994993 715746 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com QUIT :Ping timeout: 252 seconds < 1325996409 795940 :atrapado!~rdrp@95.169.240.36 QUIT :Quit: Bye < 1325997247 777381 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com JOIN :#esoteric < 1325997312 162790 :PiRSquared17!~PiRSquare@wikipedia/PiRSquared17 NICK :PiRSquaredAway < 1325997391 301932 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :Can you do so? < 1325997531 113410 :PiRSquaredAway!~PiRSquare@wikipedia/PiRSquared17 QUIT :Quit: I found a *real* proof, it's just too long to fit in the quit message < 1325999412 964320 :Jafet1!~Jafet@unaffiliated/jafet JOIN :#esoteric < 1325999573 422537 :Jafet!~Jafet@unaffiliated/jafet QUIT :Ping timeout: 240 seconds < 1326000294 682105 :elliott!~elliott@unaffiliated/elliott JOIN :#esoteric < 1326000801 236496 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :16:30:25: what are the benefits of levenshtein coding over regular binary coding? < 1326000801 552123 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :elliott: You have 1 new message. '/msg lambdabot @messages' to read it. < 1326000807 142850 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :itidus21: What is "regular binary coding"? < 1326000832 314742 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric : kallisti_ said 11h 1m 21s ago: do you think using Ix and switching elemFromEnum to an array implementation would be faster or slower than using Map? or does an Ix instance basically require the same < 1326000832 475396 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric : kind of lookup code? < 1326000836 846094 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kallisti_: Ix depends on Enum, you moron. < 1326001284 76388 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :16:58:00: itidus21: do you have a university degree yet? < 1326001284 234737 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :16:58:10: no < 1326001284 390871 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :16:58:25: have you considered getting a university degree0 < 1326001284 390962 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :16:58:27: ? < 1326001284 391009 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :16:58:51: i am living in a weird kind of dire strait... < 1326001284 550953 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :16:59:11: the world has defeated me from every angle < 1326001286 526249 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :16:59:32: well i'm aware of that, i felt the question was orthogonal enough < 1326001288 606867 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :16:59:57: success is mostly an illusion < 1326001290 656207 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oklopol: i just want to say you're great < 1326002474 271293 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: Do you have a university degree yet? < 1326002611 949946 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: Nope. < 1326002741 271194 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Have you considered getting a university degree0 < 1326002745 192020 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :? < 1326003489 535614 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric ::P < 1326003729 450571 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :Token expansion in TeX is not entirely comonadic because the \csname command has the possibility to modify the table of equivalents during expansion. < 1326003757 644246 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :So expansion can have side effects, but that is the only one, other than error messages < 1326003873 683351 :myndzi!myndzi@c-67-168-184-168.hsd1.wa.comcast.net QUIT :Read error: Connection reset by peer < 1326004023 348157 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :Specifically, I mean the coKleisli morphisms for the (,) comonad (a.k.a. the Env comonad). < 1326004050 869204 :myndzi!~myndzi@c-67-168-184-168.hsd1.wa.comcast.net JOIN :#esoteric < 1326004146 747794 :MDude!~fyrc@c-174-55-44-190.hsd1.pa.comcast.net NICK :MSleep < 1326004148 215288 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :Have you considered getting a something else other than a university degree? < 1326005516 538338 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: thanks for deleting that page of spa, < 1326005533 320778 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I typo when I type "spam" so much < 1326005546 518881 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I was thinking about automating it, but that'd involve learning GreaseMonkey because Esolang doesn't have working user scripts < 1326005554 660072 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :ais523: can you protect the main page, pls? < 1326005561 372881 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :there was a complaint on the talk page, and it seems a new wave are targetting it specifically < 1326005565 169120 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :*wave of spambots < 1326005567 659277 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I will if it continues < 1326005578 733773 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :OK, but this is the second or third day < 1326005586 680805 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :wouldn't semi-protection work? < 1326005593 561737 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :one of them hit NetHackWiki's main page a while ago, which is the only spam it's had in ages < 1326005627 571934 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :theory: Timwi is controlling the spambots < 1326005641 293434 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :as revenge < 1326006044 7779 :Jafet!~Jafet@unaffiliated/jafet JOIN :#esoteric < 1326006099 646749 :Jafet1!~Jafet@unaffiliated/jafet QUIT :Ping timeout: 252 seconds < 1326006434 92906 :Jafet!~Jafet@unaffiliated/jafet QUIT :Ping timeout: 252 seconds < 1326007115 621382 :Jafet!~Jafet@unaffiliated/jafet JOIN :#esoteric < 1326007300 774426 :myndzi!~myndzi@c-67-168-184-168.hsd1.wa.comcast.net QUIT : < 1326007308 502070 :myndzi!myndzi@c-67-168-184-168.hsd1.wa.comcast.net JOIN :#esoteric < 1326007424 581792 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :Make the HTTP-PUT-based wiki using HTTP-based authentication mode, could be another way that makes it harder for current spambots to find and there are many other ways too < 1326007473 989181 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :ok done now what < 1326007475 695959 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :Another possibility, is prevent Google from indexing it. < 1326007522 919848 :Jafet1!~Jafet@unaffiliated/jafet JOIN :#esoteric < 1326007613 832228 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :The current wiki are form-based rather than PUT-method-based < 1326007650 884878 :Jafet!~Jafet@unaffiliated/jafet QUIT :Ping timeout: 252 seconds < 1326007965 820107 :Jafet1!~Jafet@unaffiliated/jafet QUIT :Read error: Connection reset by peer < 1326007986 632480 :Jafet!~Jafet@unaffiliated/jafet JOIN :#esoteric < 1326008273 38788 :Jafet!~Jafet@unaffiliated/jafet QUIT :Client Quit < 1326008354 12910 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :ais523: Speaking of NetHackWiki, I haven't paid much attention to it or anything, but is the situation with Wikia as bad as it seems? < 1326008408 811822 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :I.e., #nethack wanted a wiki, made a thing on Wikia, Wikia added advertisements, #nethack decided to move their wiki, Wikia refused to redirect or let them add "this wiki has now moved" markers to pages or remove the advertisements? < 1326008536 85806 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: They had a marker up, but I don't think Wikia was happy about it. < 1326008540 174317 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :IIRC it was just on the main page. < 1326008547 152168 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Wikia said they'd remove it after a while. < 1326008564 766895 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: s/added advertisements/progressively redesigned the theme to be more and more terrible while adding more advertisements each time/ < 1326008574 777239 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :It's a common experience for Wikia users. < 1326008580 21482 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :The same happened to the most popular WoW wiki, to my understanding. < 1326008598 5707 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: Right, I was abbreviating. < 1326008618 941517 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :My favourite thing about Wikia's theme is the part where every external link has an interstitial ad added to it. < 1326008623 361096 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :And of course the Wikia pages are way higher ins earch results. < 1326008628 234298 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: Oh, yes, now I remember. < 1326008632 46197 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :I'd suppressed it. :-( < 1326008641 901860 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :They should add it to internal links too. < 1326008643 21886 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :MORE PROFIT < 1326008652 516932 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :Creatures Wiki still has the sane theme < 1326008690 552657 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :Uh < 1326008700 662450 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: What if, as part of the procedure for taking you to an interstitial ad, IT TOOK YOU TO ANOTHER INTERSTITIAL AD??? < 1326008703 775338 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :INFINITE PROFIT < 1326008788 208758 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: The "Skip this Ad" button should have an interstitial ad. < 1326008795 661490 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: GENIUS < 1326008810 639688 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :I would never be able to sit through the full 30 seconds without clicking that button. < 1326008816 8134 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric : http://ideone.com/AJZRX is there a way to do this without wrapping in a type? < 1326008824 612076 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :http://images4.wikia.nocookie.net/__spotlights/images/6d7325c4c94e26518f560e075330aab2.jpg Apparently Bation was overlooked? < 1326008826 512875 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :*Bastion < 1326008871 92603 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Sgeo: < 1326008882 88994 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :http://stackoverflow.com/questions/8739741/higher-ranked-and-impredicative-types < 1326008896 698540 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Sgeo: Why do you use that paste site, by the way? < 1326008898 517587 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :It's horrible < 1326008905 931237 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Sgeo: Thankfully, you want to do that approximately 1 time in 10000000000000000, and never for Show, so it doesn't matter at all. < 1326008923 57455 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: We need mauke's paste-copier bot in here. < 1326008925 710210 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Maybe I'll write one. < 1326008932 714379 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Maybe I'll write a bot that just dumps every URL to sprunge. < 1326009011 639456 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: So does UHC support inferring existential types? < 1326009019 35336 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :That would be a great trick. < 1326009023 880687 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :x = ... < 1326009027 165174 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :x :: exists a. a < 1326009035 496930 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :I've written a universal type inferencer! < 1326009065 76336 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :What's wrong with IdeOne? < 1326009084 937437 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: I somewhat doubt it. < 1326009103 357938 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Sgeo: For one, it's a pastebin with *ads*. < 1326009116 72665 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :And a Tweet button. < 1326009121 574564 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :And a "Login with Facebook" button. < 1326009137 967873 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :For two, curl -F 'sprunge=<-' http://sprunge.us < 1326009145 376776 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Actually I count 8 social networking devices on that page. < 1326009146 961299 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :And it takes a long time to load. < 1326009152 694417 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Did I mention how my Internet connection is very slow? < 1326009161 415347 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Also < 1326009161 732078 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :language: Haskell (ghc-6.8.2) < 1326009166 229801 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Pretty much all web pages on the Internet today load "sequentially" in some weird way. < 1326009170 385509 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :which came out in 2007. < 1326009181 750757 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :And this weird way causes the content to wait on the ads. < 1326009194 251225 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Also the syntax highlighting is hideous, especially for strings. < 1326009214 137205 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :http://codepad.org/taphdoQk < 1326009217 996292 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :Not the most informative < 1326009222 399289 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Ooh, it gets better. < 1326009223 498728 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :"All Rights Reserved." < 1326009225 84284 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :--footer < 1326009232 995620 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :++footer; < 1326009236 469626 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I guess claim rights to your pastes. < 1326009255 588187 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :Sgeo: Seriously though, it doesn't get better than sprunge. < 1326009260 705577 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :who we are < 1326009260 864211 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :We are highly qualified academics with Ph.D. < 1326009261 20624 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :We specialize in research and development. < 1326009261 20726 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :We direct your business towards innovation. < 1326009274 45974 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :--http://sphere-research.com/en/ as linked from footer of ideone < 1326009286 884249 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :They have a Ph.D. between them, collectively. < 1326009292 478475 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :I think sprunge is better, so I wrote a sprunge.cmd file to do that too < 1326009306 628563 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Wow, they're the people behind that http://www.spoj.pl/ thing. < 1326009312 159707 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :zzo38: I am incredibly unsurprised you think sprunge is better. < 1326009318 323045 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: I think they mean they have an actual Doctor of Philosophy, not a certificate specifying that one of them is one. < 1326009333 890545 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :It seems very zzo-esque, except it's also very anyone-who-does-command-lines friendly. < 1326009335 349261 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: Finally someone to nurse philosophy back to health. < 1326009349 420272 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :pikhq, can't run code in sprunge < 1326009351 6508 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Ph.N. < 1326009370 765570 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Sgeo: We don't need to see GHC 6.8.2's error message to know why your code doesn't work on GHC 7.0.3. < 1326009373 990333 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: Does your Ph.D. institution also give out Ph.N.s? < 1326009375 921251 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Esp. since it's obvious. < 1326009378 424803 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :Sgeo: No, but ghci <(curl http://sprunge.us/foo) does that just fine. < 1326009403 99115 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :i just get that way at odd hours of the night < 1326009406 325458 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :ACTION is sometimes too lazy to make a file on his system and use his ghc < 1326009437 903466 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :delusions of the night < 1326009443 922859 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Sgeo: GHC 7.4 has top-level declarations in GHCi. < 1326009472 145601 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :ACTION doesn't have GHC 7.4 < 1326009474 613384 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :Sgeo: Use a better shell. < 1326009486 830051 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Sgeo: Alternatively, that's why you use Emacs. < 1326009499 631634 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :MORE LIKE EWWWMACS < 1326009501 402551 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :GET IT < 1326009506 680191 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :Can GHCi parse a module declaration? < 1326009506 838935 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :I should switch back to Emacs for Haskell stuff < 1326009509 643126 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :C-x C-f foo.hs data Foo = Foo C-x C-s C-c C-l :t undefined :: Foo < 1326009517 457238 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Oh, you need C-x C-o before that :t. < 1326009520 98851 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :jEdit thinks that ' always means the rest of the token is a string < 1326009531 112867 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Who the heck uses jEdit? < 1326009554 320831 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :I think even Slava doesn't use it anymore. < 1326009574 192928 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :He also doesn't use Factor anymore, I believe. < 1326009617 478750 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: Oh, doesn't he? < 1326009623 343506 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :He seemed pretty into it a year or two ago. < 1326009629 225990 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :noobs, i have GHC 7.5 < 1326009638 169994 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :http://factor-language.blogspot.com/ has been dead for a while, though. < 1326009643 47606 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :kmc: I have GHC 7.0. :-( < 1326009647 96674 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :me too < 1326009654 312396 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :You're 7% more modern than I am. < 1326009658 571283 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I have 7.0.*3*! < 1326009662 783512 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :wow < 1326009669 944250 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :It's .0.3 better. < 1326009671 765795 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :I may have been wrong. < 1326009672 596920 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :The Glorious Glasgow Haskell Compilation System, version 7.0.3 < 1326009682 134091 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :elliott, it must be hard to turn the crank on the side < 1326009692 769274 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: That's what I heard. < 1326009697 815680 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I think Arch are waiting for 7.4 to update for, uh, stability. < 1326009705 254414 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :no really, I have a GHC that reports its version as 7.5.blah < 1326009706 46054 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Arch "/usr/bin/python is python3" Linux. < 1326009718 586590 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :i think it has minimal libraries installed tho < 1326009748 108095 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION really wants 7.4 to come out so he can enter a new age of type system horror. < 1326009758 222559 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :build it from git < 1326009760 251475 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :you know you want to < 1326009763 785213 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :That's so much work. < 1326009767 363681 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :not really < 1326009772 248336 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Well, it takes ages. < 1326009775 488883 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :right < 1326009776 123722 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :I used to build GHC from darcs. < 1326009781 192168 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :I had dozens of versions installed. < 1326009782 377602 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :it's a lot of work for your computer; not so much for you < 1326009792 601235 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :GHC needs a build bot. < 1326009794 195326 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :kmc: Remember the deal with the crank on the side? < 1326009796 833657 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I want to use GHC nightlies. < 1326009798 662995 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :it's more work for you if you already have a ghc tree and want to update it and expect incremental builds to work < 1326009802 380004 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :cause they won't < 1326009809 828903 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :elliott, GHC has a buildbot, but I don't know if the binaries are posted anywhere < 1326009826 895960 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kmc: Remember when GHC moved from a hideous Makefile system to a slightly better hideous autotools+Makefile system? < 1326009831 14588 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :no < 1326009836 969733 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Wait, didn't that happen? < 1326009842 911712 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I distinctly recall that it not being autotools a year back or so. < 1326009844 693092 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :maybe, but why would I remember it < 1326009848 30939 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :kmc is amnesiac < 1326009854 63287 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott is elephantine < 1326009855 12898 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Because GHC building folklore, man! < 1326009858 765487 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :make may be "hideous" but it supports -j < 1326009876 397506 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :The Makefiles themselves were the hideous part. Although make is too. < 1326009896 808322 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :-j isn't exactly hard. < 1326009907 390614 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :cabal doesn't have it yet < 1326009947 166637 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION has a plan for a cabal wrapper that builds in parallel. < 1326009951 600260 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :it's been done < 1326009966 392561 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :(for building different packages in parallel; not for the modules in a single package) < 1326009968 940453 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Yeah, but I've never seen one on Hackage, and I don't know anybody who uses one :P < 1326009971 354128 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kmc: The latter is what I meant. < 1326009974 463878 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :ok < 1326009977 748788 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :The former is an orthogonal issue that I don't care about much. < 1326009984 26012 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :kmc: Just because cabal sucks doesn't make -j hard. *If* you're doing dependencies in even a vaguely sane way. < 1326009993 451105 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :make -j is theoretically uninteresting, therefore Haskell already supports it < 1326009998 704551 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :and it's your fault for not writing it < 1326010002 934869 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :ACTION orthogonizes over the issue. < 1326010007 15506 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Well GHC is kinda build system antagonistic < 1326010012 719126 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Multiple output files, no full separate compilation < 1326010038 720674 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :(I mean, heck, redo does it, and the build logic there is in shell scripts.) < 1326010058 268070 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Isn't it Python < 1326010065 613937 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :pikhq, I don't understand what point you're trying to make. are you speaking to a developer of a make-replacement, or to a user of a build system, or? < 1326010070 818347 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :elliott: Yes, but you tell it what to do with shell scripts. < 1326010075 405717 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :kmc: Developer. < 1326010081 142973 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :ok < 1326010083 220909 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :i don't disagree < 1326010085 440670 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :why did you bring it up? < 1326010104 695177 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :"make may be 'hideous' but it supports -j" < 1326010114 456147 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :right < 1326010127 275725 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :meaning that GHC doing things differently from other haskell packages has at least one major advantage < 1326010131 764208 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :that's all i meant by it < 1326010134 823382 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :Okay. < 1326010147 509513 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION didn't realise kmc thought I was comparing it to using Cabal. < 1326010156 168285 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :i didn't really < 1326010160 560064 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I doubt Cabal could even build GHC. Maybe with a massive custom Setup.hs thing. < 1326010194 126427 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :does Cabal have support for Make-based builds? < 1326010198 227426 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :Ish. < 1326010209 56981 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :http://hackage.haskell.org/packages/archive/Cabal/1.10.2.0/doc/html/Distribution-Make.html < 1326010218 198558 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :That's cheating :P < 1326010220 49586 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :"Perhaps at some point we should stop pretending that it works." < 1326010231 483724 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Cabal-1.10.2.0: A framework for packaging Haskell software < 1326010237 103803 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :"Cabal isn't a package manager, it's a build system!" < 1326010239 836379 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :"But it's terrible at that too." < 1326010241 681898 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :haha < 1326010244 851660 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :"It's a framework for packaging!" < 1326010257 484451 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :elliott, the Haskell tools are perfect and you're just some kind of idiot Java Monkey if you can't get by with them < 1326010266 863071 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :next you'll be asking for regexes and stack backtraces < 1326010269 727449 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :fucking java monkeys < 1326010272 146709 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :elliott: Still better than what C's got. < 1326010273 748411 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :(barely) < 1326010279 259046 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kmc: Java monkeys like regexps/ < 1326010280 77064 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :? < 1326010307 948126 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :elliott: Only if you can represent them with an object hierarchy. < 1326010323 435685 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION thinks regexps probably *are* moderately worthless in Haskell, since writing little parsers is so easy, but it would be nice to have a more concise syntax for common things. < 1326010332 644364 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :scsh's sexp regexp stuff would be interesting to mimic. < 1326010351 276154 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :A quasiquoter that turns a regexp into a parser would probably be the most useful thing, if TH wasn't terrible. < 1326010380 405949 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :i'd settle for just a regex library with a simple concrete API < 1326010385 194977 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :in fact there are several on hackage < 1326010401 210710 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :The worst thing about the Haskell regexp libs is the hideous typeclass hack most of them are based on. < 1326010405 449962 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :but i can't find them amongst all the other regex-compat-posix-new-lite-pcre < 1326010408 161124 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :It should be illegal. < 1326010418 86799 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :regex-compat-posix-new-lite-pcre-0.1: NO REALLY USE THIS ONE THE OTHERS SUCK < 1326010439 335869 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :if someone uploaded a good regex lib and used that as the cabal synopsis I would hug them < 1326010501 818189 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :I assign not-elliott to do it. < 1326010525 423448 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :i think translating regexps into first-class parsers is probably bad for performance < 1326010537 818785 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kmc: Monadic parsers, sure < 1326010548 364626 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :What if you turned regexp syntax into http://hackage.haskell.org/package/regex-applicative parsers? < 1326010548 840952 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :even applicative CFG parsers < 1326010568 62129 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :elliott, of course, would come back with @ in 100 years. < 1326010593 756495 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :elliott, might be nice < 1326010602 865991 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kmc: I think the better complaint there is "it's difficult to optimise Haskell EDSLs" < 1326010606 880909 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :it's... yeah < 1326010615 963452 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :which sucks, but is probably inherent < 1326010627 226225 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :arrows seem to have the best opportunities there but you have to use arrows < 1326010636 401962 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :arrows suck because you can't optimize 'arr' < 1326010653 542079 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :that too < 1326010658 524371 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :thus generalised arrows < 1326010665 857147 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :an EVEN LARGER TYPECLASS! < 1326010675 938299 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :i'll be interested to see what iPwn have come up with, if their shit ever sees the light of day < 1326010701 105830 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :"we solved several major open problems in theoretical computer science in order to make an iPhone game where you hit orcs with a sword" < 1326010712 656747 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION has great difficulty taking iPwn seriously because of the name. < 1326010730 140898 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :What have they done apart from their own arrow stuff? I heard about that in passing but nothing else. Well, and the GHC port thing I think was them. < 1326010747 216417 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :they're using a custom preprocessor and some bleeding-edge GHC features to do better arrowized FRP < 1326010752 441569 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :i don't know much about it < 1326010777 867672 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :Waitwaitwait, they're working on FRP so they can do an iPhone game? < 1326010783 111564 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :yes < 1326010792 988677 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Hasn't game development driven FRP for like half a decade by now? < 1326010794 753715 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :I heard that they got some sucker to port GHC to Android. < 1326010795 70209 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :research in arrowized FRP with a custom preprocessor < 1326010797 475875 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :Are they mad or awesome? I dunno. < 1326010803 543806 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :ask Cale about it < 1326010819 527814 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :their game is like 2 years late < 1326010837 481931 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :so i'm gonna go with "not awesome" < 1326010845 723193 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :even if it's great research i can't possibly imagine how it makes business sense < 1326010851 675112 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Do people put two years of work into an iPhone game ever? < 1326010854 323468 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kmc: Business sense? You're talking about Haskellers. < 1326010864 945040 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :elliott, yeah... < 1326010879 251788 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: Hey, some Haskellers have business sense! Those are the people who don't use Haskell for their business. < 1326010901 741261 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :Or presumably the ones using it for finance. < 1326010930 516810 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :I would prefer the Arrow to be changed to something else such as: class (Category c1, Category c2) => CatFunctor c1 c2 where { funct :: c1 x y -> c2 x y; }; class Category c => CatArrow c (p :: * -> * -> *) where { ... }; It should be able to still represent the ordinary Arrow stuff with this, I think < 1326010935 788226 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :Certainly when you're working on open problems for the purpose of mundane, mundane programs, you've got no business sense. :) < 1326010945 253801 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :i think using Haskell for an iPhone game is not completely crazy, but they seem to be doing it wrong < 1326010968 907604 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :kmc: It's the "working on major open problems in theoretical computer science" bit that is completely nuts. < 1326010972 775603 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :right < 1326010980 103775 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :zzo38: What about Barrier Arrows? You mustn't forget those. < 1326010983 972213 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :of course this distinction will be lost on most < 1326010985 279876 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION thinks that working for 2 years on FRP stuff for an iPhone game is cool but would probably work better as a hobby :p < 1326010992 574560 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :elliott: Yup. < 1326011001 613752 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :pikhq: I don't think FRP is considered a /major/ open problem :P < 1326011005 312255 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :the developers of the platform games N and N+ are a bit nuts also < 1326011007 213808 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :shachaf: I don't know what those are < 1326011012 208085 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :elliott, yeah, who knows. it might be one of those startups where it's essentially a hobby, and everyone has a "side job" < 1326011029 464980 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION also isn't sure FRP counts as /that/ theoretical, although the linear temporal logic stuff... < 1326011061 831289 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Mm, LTL. < 1326011070 142213 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :i have fond memories of LTL and SPIN < 1326011071 589721 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :hmm < 1326011087 127001 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :elliott: I'm only quoting kmc on that one. < 1326011087 283177 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :I went to this one talk about model checking once. < 1326011091 226569 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric ::) < 1326011092 264832 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Actually I went to it twice. < 1326011098 899518 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Actually I went to it once and it went to me once. < 1326011103 23256 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kmc: I can't criticise too loudly because I'm on step 2 of the "Hey, I want to make a game with Haskell!" -> "Guess I'd better figure out how to do it with FRP." -> game path. < 1326011112 98257 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :heh < 1326011123 547248 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: Does @ have games? < 1326011124 925405 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION can't remember what the game was going to be any more. < 1326011127 587225 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :right, some things do not make business sense but are justified by broader concerns < 1326011131 784480 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :like "this is what i want to do" < 1326011132 577069 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: Who needs games when @ is as fun as it is?! < 1326011144 49261 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :my impression was that the ipwn guys thought they were making business sense < 1326011155 59927 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :@ peace and @ war... < 1326011158 286063 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kmc: It's the Paul Graham stuff, isn't it? < 1326011162 841381 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :What is FRP? < 1326011172 477600 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :elliott, ? < 1326011175 992359 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :"If you program in my Blub, you'll have such a competitive advantage that you'll be, like, exponentially better than C++ programmers." < 1326011176 777218 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :functional reactive programming < 1326011189 47313 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :zzo38: Functional Reactive Programming; an alternate paradigm for IO in a purely-functional-ish language. < 1326011192 713066 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :(such as Haskell) < 1326011196 839650 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :FRP isn't really about IO. < 1326011212 342552 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :elliott, maybe. PG also says there are nontechnical competitive advantages of using weird languages < 1326011217 203543 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :which I think is a more solid claim < 1326011222 840344 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kmc: I think that's what I was saying. < 1326011230 645530 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :Can you show me the mathematical structures for reactives? < 1326011248 863839 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :zzo38: type Behavior a = Time -> a; type Event a = [(Time,a)] < 1326011263 814191 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :zzo38: Those are lies. Now you can start on the open problem of FRP: finding out definitions that aren't lies. < 1326011272 489486 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: Step 1: "Behaviour" < 1326011280 865537 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Correct! < 1326011299 4545 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :elliott: What I gathered from him was that by using Blub you'll get better programmers, not that you'll turn people into better programmers. < 1326011300 64629 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Step 2: "Eveunt" < 1326011313 615031 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :Which is at least not complete incoherent nonsense. :) < 1326011315 933218 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :you're mixing several PG metaphors < 1326011328 881975 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kmc: Not true, I didn't mention painting. < 1326011356 256309 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :penalty, disproving a universal statement with an existence proof. five yards. < 1326011360 7722 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION doesn't tend to be too careful with PG mockquotes, admittedly, although I do agree that such languages can give competitive advantages. < 1326011388 221974 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :The problem is that most relevant languages that don't have the infrastructure you need because they're still obscure competitive advantages. < 1326011395 418318 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :he thinks Lisp gave ViaWeb a competitive advantage on technical grounds < 1326011409 140011 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PART #esoteric :"Leaving" < 1326011412 276684 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net JOIN :#esoteric < 1326011420 419003 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I also don't think that using Haskell for a game is a competitive advantage unless you /do/ go for something like FRP. < 1326011432 641996 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Because you'll just spend all your time in IO writing callbacks. < 1326011437 554834 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :dunno, Haskell is still a pretty good language < 1326011438 527490 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :kmc: I wonder why that keeps happening. Do you try to delete a word with ^W? < 1326011445 276352 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :i forgot why < 1326011456 37738 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :and you get a nontechnical advantage from hiring haskellers < 1326011457 306851 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kmc: It is, but it's not significantly better at imperative programming than most other languages. < 1326011463 161358 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :The lack of pointers is nice, of course. < 1326011477 82775 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I guess for the iPhone you pretty much have to write games in C++ unless you go for something "weird" like Haskell. < 1326011488 897022 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :Objective C, not C++. < 1326011489 884837 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :i think it is very common to write rendering in C or C++ and game logic in Lua < 1326011490 674812 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :(I gather people write the games in C++ and glue it with Objective-C++.) < 1326011492 691452 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :pikhq: ^ < 1326011495 669101 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Objective-C is way too slow. < 1326011496 206159 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :Oh, okay. < 1326011505 694341 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :which is kind of like writing rendering in C and writing game logic in Haskell < 1326011506 169875 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :It's all the safety of C with all the speed of unoptimised Smalltalk. < 1326011512 126757 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :which is what they were doing < 1326011526 366531 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :getting Lua working is a lot less of a pain < 1326011528 425072 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :Objective-C is a strict superset of C, so you can write a plain C program in Objective-C, too. < 1326011540 222060 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kmc: Rendering in C seems an odd choice. Isn't the iPhone all shadery these days? < 1326011541 880810 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :hiring Lua programmers is not much of a competitive advantage; it's pretty standard in the game industry < 1326011548 219007 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :i'm sure there were shaders too < 1326011556 179853 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :ISTR that the OpenGL they use doesn't have the fixed-function stuff, so there's not all /that/ much C code you'd end up writing. < 1326011559 603237 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :zzo38: Yeah, but Objective-C++ is supported trivially on the platform, and industry tends to prefer C++ over C. < 1326011560 796511 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I guess GLSL counts as C. < 1326011564 335676 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :what i mean is that you make OpenGL calls from a thread which doesn't need garbage collection < 1326011564 493992 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Sort of. < 1326011566 259902 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :TRIVIAL < 1326011568 793618 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kmc: right < 1326011582 319491 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Wasn't GHC getting a parallel collector? < 1326011585 728032 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Or am I thinking concurrent. < 1326011587 199431 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Non-pausing. < 1326011591 72378 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :it's in a branch < 1326011591 744749 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :pikhq: Then you can program plain C++ in Objective-C++ if you want to do so < 1326011627 576084 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :i think PG may be right about Lisp and ViaWeb, but note that there were many fewer options back then < 1326011640 481659 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :Really, the supported compiler is GCC, so... Yeah. Nice and simple to do any GCC-supported language, maybe modulo a few outright oddballs. < 1326011643 430271 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :(gcj?) < 1326011644 750950 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :his competitors were writing webapps in C++ or pre-modern Perl < 1326011653 287329 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :nothing resembling a "web framework" would exist for another decade < 1326011655 314595 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :pikhq: Er, isn't the iPhone clang these days? < 1326011665 949355 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :elliott: Oh, right, so it probably is. < 1326011667 153762 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I mean, OS X is, so I can't imagine the iPhone isn't too. < 1326011682 917149 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :Which leaves you with C, Objective-C, C++, Objective-C++. < 1326011683 788546 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :so I'll bet they got a lot of benefit from being able to grow a kind of web framework in Lisp organically < 1326011698 689394 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :Which is also the set of languages most anyone would actually *give a shit about* in GCC. < 1326011702 342239 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :but also they had good timing and won the lottery etc < 1326011719 214347 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :(seriously, who uses Fortran? GCJ? D?) < 1326011730 128919 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kmc: didn't pg say viaweb took off because of their crazy programming interface thing < 1326011734 5089 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :most of the advice PG has about doing a startup is not technical < 1326011739 286264 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :which is probably correct < 1326011744 994926 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :though his advice is biased and self-serving < 1326011753 718311 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I think PG extrapolates way too much for his sample size. < 1326011767 374067 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :"You should do startups! Here, we've got a totally awesome service that is the BEST EVER for it!" < 1326011771 836249 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :But yeah, "How to Win the Lottery" wouldn't be a very popular article. < 1326011786 106928 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :today there are many reasonable, popular languages and frameworks for web programming < 1326011803 928116 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :it's harder for me to believe that using Haskell over Rails will be a huge advantage, even if using Lisp over C++ was < 1326011809 621912 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :(in the technical sense) < 1326011840 264235 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :it might be a security advantage though :) < 1326011846 58063 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :sure < 1326011849 739129 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :startups don't care about security < 1326011853 724032 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :Yeah... Web dev has had at least enough sensibility to stop with C/C++. < 1326011856 329429 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :yep :p < 1326011861 10998 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :Though they're still on PHP and Ruby. :P < 1326011867 396187 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :pikhq: http://www.webtoolkit.eu/wt < 1326011904 219468 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :WHY GOD WHY < 1326011950 24206 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :ksplice cared about security because we had the ability to automatically root hundreds of thousands of Linux machines < 1326011959 536081 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :even then, I suspect others in a similar situation would not care < 1326011967 665687 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :pikhq: To be fair, he wrote "you should do startups" way before he started investing in them. < 1326011985 334438 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :shachaf, you should play the lottery! one time i played the lottery and won the jackpot! < 1326012001 439162 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :there may be some correlation between the people who understand and care about security, and the people who can write something like ksplice < 1326012012 367164 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :shachaf: True, that's only really a criticism of his *later* stuff. Where he talks a lot about how his startup incubator thing is awesome. < 1326012021 206089 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :Not where he talks about how startups in general are awesome. < 1326012037 572528 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :it's all self-serving, even when he's not directly talking about YC < 1326012042 159596 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :kmc: Sure, I was only responding to pikhq's specific statement. < 1326012051 583828 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :he wants to sell you on the idea that you need to do a startup by age 18 or else you are a failure in life < 1326012068 294202 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :that way you'll be willing to give away equity for minimum wage < 1326012085 685925 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :if people graduate college and work a couple jobs before doing a startup, they don't need YC as much < 1326012093 539814 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :they have savings and they have industry connections < 1326012132 551282 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :And will probably need less of the advice YC could give (they do give advice, right?) < 1326012147 707879 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :yeah < 1326012171 89956 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :advice: make lots of money < 1326012197 838774 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :Advice: steal from Gates < 1326012211 580354 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :hence disparaging the corporate work environment < 1326012218 347328 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :"I'm not sure why Mr. Graham felt the need to draw this incredibly condescending parallel with company employees and caged animals in the zoo." http://www.codinghorror.com/blog/2008/03/paul-grahams-participatory-narcissism.html < 1326012231 493468 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Oh man, Jeff Atwood writing about Paul Graham! < 1326012235 778068 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :i know right < 1326012236 534136 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I can't think of anything more enjoyable. < 1326012266 111668 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :here, Spolsky is PG's partner in crime < 1326012271 21046 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :dunno about Atwood < 1326012279 63938 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :haha, and referencing slamming spolsky in the second paragraph < 1326012290 858277 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :Spolsky wants you to think that every company besides Fog Creek is a soul-sucking cubicle mill < 1326012295 927571 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I wonder if Spolsky tried to get SO written in that custom language < 1326012300 874593 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :because that's the core of their corporate identity < 1326012334 780569 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :"we're going to make a software company which is unlike 1994 Microsoft" < 1326012363 528704 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :as far as I can tell Fog Creek's main money-making scheme must be getting people to like them, rather than anybody actually using their products < 1326012400 9524 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :Does Fog Creek make anything? < 1326012418 386931 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :a bug tracker, IIRC < 1326012461 460017 :Vorpal!~AnMaster@h66n5c1o291.bredband.skanova.com JOIN :#esoteric < 1326012468 88297 :Vorpal!~AnMaster@h66n5c1o291.bredband.skanova.com QUIT :Changing host < 1326012468 245673 :Vorpal!~AnMaster@unaffiliated/anmaster JOIN :#esoteric < 1326012500 828744 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :also https://trello.com/, an organization / collaboration tool < 1326012511 844705 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :and a few other things < 1326012540 206318 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :if you want to spend 80 minutes cringing, watch http://www.projectaardvark.com/movie/ < 1326012551 27234 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :which is about some interns developing one of their other products < 1326012585 628612 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :80 minutes of cringing? I can't think of anything I want more. < 1326012772 171521 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :who thought that would be a good idea < 1326012801 320138 :kallisti_!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :elliott: have I ever mentioned that you're a jerk? < 1326012829 561085 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :I always figured it went without saying < 1326012858 88780 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kallisti_: Often < 1326013138 870731 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Is the main reason that http://en.wikipedia.org/wiki/File:Rope_example.jpg is rotated to make it seem more impressive? < 1326013276 859087 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :it is more pleasant on the eyes rotated < 1326013277 492927 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :good graphic < 1326013305 392015 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :None of the other pictures on that page are rotated. < 1326013326 227429 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: I've wondered about that thing too. < 1326013336 949284 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :"The topic of this article may not meet Wikipedia's general notability guideline. Please help to establish notability by adding reliable, secondary sources about the topic. If notability cannot be established, the article is likely to be merged, redirected, or deleted. (September 2011)" < 1326013342 95083 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Oh yeah, ropes are so non-notable. < 1326013386 900069 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :why is it rotated? why is it jpeg? why what's up with everything being off center and angled wrong? < 1326013394 717252 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :so many questions. the most mysterious image. < 1326013413 482898 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :I just realised that I'm a JPG snob. < 1326013417 793574 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :When did that happen? < 1326013419 74474 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :monqy: ok the investigatin begins < 1326013494 990274 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: I don't even like the idea of using JPEGs for photos. < 1326013504 73262 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION biggest jpeg snob < 1326013505 23185 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :Meng Yao introduced the rotated rope on 03:25, 25 April 2011 < 1326013531 932934 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :his edit increased the document from about 3kb to 9kb < 1326013601 924067 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :his only wiki contribution has been on the rope article and he altered it on wiki for approximately 90 minutes before dissapearing forever < 1326013604 23798 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Rotated rope. Rope. < 1326013681 301436 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :class Category c => CatArrow c p where { arr1 :: c x y -> c (p x z) (p y z); arr2 :: c x y -> c (p z x) (p z y); mirror :: c (p x y) (p y x); (*+*) :: c x y -> c x' y' -> c (p x x') (p y y'); (&|&) :: c x y -> c x y' -> c x (p y y'); arr2 f = mirror . arr1 f . mirror; f *+* g = arr1 f >>> arr2 g; }; Is it possible to define mirror in terms of the other class methods? < 1326013692 28005 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :Should there even be a mirror? < 1326013761 504593 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: Take a look at this amazing question: http://stackoverflow.com/questions/8767849/importing-modules-as-a-function-with-string-as-input < 1326013765 206577 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :The edit is the best part. < 1326013769 228691 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :meng yao included his rope diagram 8 times in his wiki edit :-D < 1326013787 678107 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :itidus21: there are multiple diagrams < 1326013798 453470 :Ngevd!~Taneb@host-2-99-87-159.as13285.net JOIN :#esoteric < 1326013801 683843 :Ngevd!~Taneb@host-2-99-87-159.as13285.net PRIVMSG #esoteric :Hello! < 1326013805 977855 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :ok ok its not exactly the same < 1326013847 940413 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :as to why he rotated it... i think that is a real mystery < 1326013882 85985 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :and why it's jpeg and why it's generally wonky < 1326013885 95466 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :many real mysteries < 1326013913 397102 :kallisti_!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :elliott: lol. one bad idea to another. < 1326013928 511992 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :perhaps he is boycotting SVG < 1326014019 843785 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: So I read every word in that sentence once and didn't manage to piece it together. < 1326014033 466704 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: I'm going to treat this as one of those games where you only get one try and then it's instadeath. < 1326014097 914643 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :I read it a few times and still don't get it < 1326014143 517240 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :`shaWhich sentence? < 1326014147 341985 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: < 1326014155 213067 :HackEgo!foobar@codu.org PRIVMSG #esoteric :​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: shaWhich: not found < 1326014164 550650 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :@src foldl < 1326014164 707257 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :foldl f z [] = z < 1326014164 865416 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :foldl f z (x:xs) = foldl f (f z x) xs < 1326014171 960713 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Right. < 1326014180 262670 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: The edit. < 1326014212 625011 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: It's technically multiple sentences. :p < 1326014289 438889 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: Am I a bad person if I don't really like RWH? < 1326014295 973540 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION feels guilty. < 1326014337 311044 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: I haven't read RWH. < 1326014358 84872 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION hasn't read all of it. < 1326014375 59092 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :kmc says that the chapters on FFI and STM are good. < 1326014383 745647 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :But all the code snippets are ugly imperative blobs. < 1326014385 249566 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :I haven't even read those. < 1326014391 875224 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Also it's really outdated but I can't really blame them for that. < 1326014394 885606 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: That's Real-World for you! < 1326014405 674891 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: I'm sure you could find room in your heart to blame them for being outdated. < 1326014420 71295 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I heard they advocated putting text in ByteStrings, which is unacceptable even if one of the authors later goes on to create a Unicode text type. :p < 1326014428 160054 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I HEARD THEY'RE COMMIES. < 1326014464 230845 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :OUR PRECIOUS UNICODE FLUIDS < 1326014480 991664 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION would like to see a LYAH2: Electric Boogaloo that picks up where LYAH left off. < 1326014523 111399 :kallisti_!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :the problem is that it would still have to be written in a quirky style. < 1326014563 26811 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :LYAH isn't really. < 1326014571 103752 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :lyah2: the real world no jokes allowed < 1326014579 641085 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Although w(p)gtr kind of desensitised me to that sort of stuff permanently. < 1326014589 429522 :kallisti_!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :"see, monads are just monoids in the category of endofunctors. Pretty simple, huh? " < 1326014589 588227 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: I don't like LYAH much either. < 1326014592 122124 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Not that I've read it. < 1326014613 450566 :kallisti_!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :I like it because < 1326014617 845857 :kallisti_!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :it's how I learned Haskell. < 1326014620 491828 :kallisti_!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :initially. < 1326014623 109147 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :But people occasionally come into #haskell, misled by wrong sentences in it. < 1326014637 268018 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: Hmm, like what? < 1326014643 834238 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :shachaf: It's not bad, it's just very, very simplistic. < 1326014661 368333 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :It ends with monads. < 1326014665 469622 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :pikhq: *zippers < 1326014670 695569 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :elliott: Bah < 1326014680 838675 :kallisti_!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :if only we could teach newbies every excrutiatingly technically correct detail of everything without scaring them away. < 1326014685 356990 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: I don't remember. < 1326014686 308198 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Monads-as-containers or something. < 1326014694 639316 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION would write a Haskell tutorial, but nobody would read it. < 1326014700 877388 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :I'd read it! < 1326014704 675915 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Well. < 1326014710 758775 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :I'd read it to the same degree I've read LYAH and RWH. < 1326014711 76456 :kallisti_!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :elliott: you would just spam equations at the reader and be like "okay this makes perfect sense now" < 1326014717 185408 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :That's a pretty good honour, isn't it? < 1326014732 972671 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :"When we first talked about functors, we saw that they were a useful concept for values that can be mapped over. Then, we took that concept one step further by introducing applicative functors, which allow us to view values of certain data types as values with contexts and use normal functions on those values while preserving the meaning of those contexts. < 1326014733 132091 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :In this chapter, we'll learn about monads, which are just beefed up applicative functors, much like applicative functors are only beefed up functors. < 1326014733 288515 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :[...] < 1326014734 399813 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Monads are a natural extension of applicative functors and with them we're concerned with this: if you have a value with a context, m a, how do you apply to it a function that takes a normal a and returns a value with a context? That is, how do you apply a function of type a -> m b to a value of type m a? So essentially, we will want this function: < 1326014738 900826 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :(>>=) :: (Monad m) => m a -> (a -> m b) -> m b < 1326014740 896413 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :If we have a fancy value and a function that takes a normal value but returns a fancy value, how do we feed that fancy value into the function? This is the main question that we will concern ourselves when dealing with monads. We write m a instead of f a because the m stands for Monad, but monads are just applicative functors that support >>=. The >>= function is pronounced as bind." < 1326014745 709790 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: Looks pretty far away from monads-as-containers to me. < 1326014758 781159 :kallisti_!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :monads-as-fancy-values < 1326014782 634718 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: "Well, there should, but when Haskell was made, it hadn't occured to people that applicative functors are a good fit for Haskell so they weren't in there." This is misleading though, EVERYBODY knows Haskell predates applicative functors. < 1326014784 626866 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :EVERYBODY < 1326014825 586182 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: I don't remember. < 1326014837 385815 :kallisti_!~eris@h0.32.18.98.dynamic.ip.windstream.net NICK :kallisti < 1326014844 696003 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Haskell is a natural predator of applicative functors. < 1326015059 460312 :Taneb!~Taneb@host-2-99-87-159.as13285.net JOIN :#esoteric < 1326015066 883109 :Ngevd!~Taneb@host-2-99-87-159.as13285.net QUIT :Read error: Connection reset by peer < 1326015379 434631 :Taneb!~Taneb@host-2-99-87-159.as13285.net QUIT :Ping timeout: 268 seconds < 1326015406 675625 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :THere is also join, and that doesn't mention join < 1326015462 824544 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :sure it does. < 1326015466 152539 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :it mentions >>= < 1326015473 449904 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :zzo38: join is not in the Monad typeclass < 1326015476 416405 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric ::> < 1326015483 688928 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :I'm sure it's mentioned id at some point < 1326015485 964786 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :elliott: I know it is not in the Monad typeclass but it should be < 1326015492 567982 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: If we're arguing *that* way, it didn't mention fail. < 1326015494 707843 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :ANYONE WITH A BRAIN would know that join is (>>= id) :> < 1326015501 195001 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :fail is one of the essential nutrients for any Haskell monad. < 1326015566 185802 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: It does show fail and implement it in its examples, actually. < 1326015573 32304 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Though it probably: shouldn't. < 1326015583 595201 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :zzo38: Well, LYAH is a Haskell tutorial, not a Haskell-as-it-should-be tutorial. < 1326015654 763432 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :But you can't learn monads properly unless you know about fmap and join as well, and their mathematical relation to >>= < 1326015673 759284 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :zzo38: It does teach functors and applicative functors before monads. < 1326015679 456725 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :"learn monads" should never be your goal. < 1326015688 921098 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :zzo38: that's what monad tutorials are for < 1326015715 205664 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :(>>=) = (8===D) < 1326015720 123482 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :shachaf: Not necessarily. What if you're learning category theory? :) < 1326015750 685793 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :_ === _ = (>>=) < 1326015770 168501 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :monqy: ah yes good old const (const (>>=)) < 1326015785 256028 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :my favourite < 1326015785 572747 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :the best of all functions < 1326015796 934777 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :no wait, not as good as the totem pole. < 1326015823 567066 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :the best of all functions is the McCarthy 91 function < 1326015851 602151 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kmc: What about the man or boy not-a-function? < 1326015866 10076 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :@let best n | n > 100 = n-10 | otherwise = best (best (n+11)) < 1326015867 753357 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Defined. < 1326015870 422876 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :> best 50 < 1326015872 15687 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : 91 < 1326015878 153726 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> best 91 < 1326015879 639567 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : 91 < 1326015880 312989 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> fix best < 1326015883 994242 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : mueval-core: Time limit exceeded < 1326015885 775017 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :fail < 1326015888 999359 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :> fail < 1326015889 951863 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Overlapping instances for GHC.Show.Show (GHC.Base.String -> m a) < 1326015890 267419 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : arising... < 1326015899 858472 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :I think monad are generally understand better as a endofunctor having return and join, at least to me it is. But >>= is useful too, and so is <*> and that stuff. < 1326015905 255543 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :> fix (>>=) < 1326015906 259190 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Occurs check: cannot construct the infinite type: < 1326015906 418265 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : m = (->) (a -> m b) < 1326015911 978597 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> fix bеst < 1326015913 454932 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : 91 < 1326015916 107533 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric ::t fij oin < 1326015916 582135 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kmc: It was just a bit slow, that's all. < 1326015916 899412 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Not in scope: `fij' < 1326015917 57842 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Not in scope: `oin' < 1326015919 756209 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric ::t fix join < 1326015920 549376 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Occurs check: cannot construct the infinite type: a = m a < 1326015920 707876 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Expected type: m (m a) < 1326015920 864072 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Inferred type: m a < 1326015956 827300 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :Check in the appropriate box for boy or girl < 1326015958 570342 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :wondering will it ever stop and who invented this world < 1326015970 904143 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :Hi, welcome to big burger can i take your order? < 1326015985 37038 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :hi < 1326015989 764692 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :Someone broke kmc! < 1326016000 237578 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :hi < 1326016007 342241 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :For example, the list monad, join means put all list together, and for IO monad, join means if result if IO is another IO series of actions, then do the resulting one afterward. < 1326016035 700183 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :hi < 1326016036 675080 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :sequencing < 1326016043 148441 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :sequencing < 1326016343 341844 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :And with (,) monad, join will make the monoid composition < 1326016769 362419 :ais523!~ais523@unaffiliated/ais523 QUIT :Remote host closed the connection < 1326016773 623542 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Speaking of (,) < 1326016780 479636 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :@let best n = tell [n] >> if (n > 100) then return (n-10) else best (n+11) >>= best < 1326016781 128528 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : :13:0: < 1326016781 327882 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Multiple declarations of `L.best' < 1326016781 484116 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Declared at: > if (n > 100) then return (n-10) else bestest (n+11) >>= bestest < 1326016794 790879 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Defined. < 1326016799 517302 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :> runWriter (bestest 91) < 1326016801 65412 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : (91,[91,102,92,103,93,104,94,105,95,106,96,107,97,108,98,109,99,110,100,111... < 1326016811 617445 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :> runWriter (bestest 89) < 1326016813 43211 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : (91,[89,100,111,101,91,102,92,103,93,104,94,105,95,106,96,107,97,108,98,109... < 1326016820 965369 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Thanks, lambdabot. < 1326016958 862567 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :Thambdabot. < 1326016961 676749 :sebbu2!~sebbu@ADijon-152-1-12-141.w83-194.abo.wanadoo.fr JOIN :#esoteric < 1326016967 26860 :sebbu2!~sebbu@ADijon-152-1-12-141.w83-194.abo.wanadoo.fr QUIT :Changing host < 1326016967 183119 :sebbu2!~sebbu@unaffiliated/sebbu JOIN :#esoteric < 1326016972 889105 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :Thanks, Hanks. Thanks. < 1326016992 373060 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :"Here is how John McCarthy may have written this function in Lisp, the language he invented:" < 1326017012 20125 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Right, because he'd've written it in Common Lisp. < 1326017061 207422 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com QUIT :Remote host closed the connection < 1326017074 814059 :sebbu!~sebbu@unaffiliated/sebbu QUIT :Ping timeout: 255 seconds < 1326017336 822773 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 JOIN :#esoteric < 1326017451 279521 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: There's a reason it's called Common Lisp! < 1326017457 16021 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I... completely forget why. < 1326017672 407224 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: It's derived from "Come On". < 1326017686 789867 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 QUIT :Ping timeout: 240 seconds < 1326017702 967569 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 JOIN :#esoteric < 1326017883 890087 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :shachaf, "Lisp" doesn't mean "Common Lisp" < 1326017896 591428 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :shachaf, it means "whatever vaguely Lisp-like language most supports the point I'm currently trying to make" < 1326017951 40057 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :kmc: Using "defun" and "t"? < 1326017958 901519 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :for example "Lisp is a statically-typed language with pattern matching" < 1326017993 929805 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :That sounds like a fun game. < 1326018002 854801 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Sadly I must go to sleep. < 1326018009 969355 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :in this case "Lisp" means "Lisp extended with macros for pattern-matching and a static type system, which should be trivial for the most casual observer" < 1326018016 683005 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :sadly but truly < 1326018028 573992 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Pattern matching? < 1326018029 523525 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :kmc: Wait, I thought Haskell had a monopoly on that technique? < 1326018029 998085 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Lisp? < 1326018063 480676 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: Tons of Lisps have pattern matching. < 1326018066 864824 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Heck, destructuring-bind is in CL. < 1326018097 333853 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Huh. < 1326018107 100163 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Pattern matching is just a special case of unification, man. < 1326018138 173663 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :"Lisp is a simple, elegant language based on the lambda calculus" => R5RS Scheme with mutation and anything you don't learn in SICP removed < 1326018160 174101 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :"Lisp is a mature language with sophisticated implementations" => Common Lisp < 1326018162 16429 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :kmc: _The Little Schemer_ is simpler than SICP for this purpose. < 1326018172 553089 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :"Lisp is webscale, in the cloud" => Clojure < 1326018222 53280 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :ACTION wonders what kmc will say about Arc < 1326018261 358136 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :mumble mumble hackers and painters < 1326018337 954395 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Did you know there are people who still care about Arc? < 1326018346 195565 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Astonishing. < 1326018350 925998 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kmc: R5RS really shouldn't have mutation, though. < 1326018354 59285 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :At least not set-car!/cdr!. < 1326018360 610782 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :set! I can bear. < 1326018384 470498 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :sigh < 1326018387 739022 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :been fighting with this recently < 1326018394 336169 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :to get some Scheme code to work in Racket < 1326018403 715916 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kmc: #lang r5rs? < 1326018406 726916 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Or whatever the syntax is. < 1326018409 17167 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :doesn't do everything I want < 1326018411 762109 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :but, we have it working now < 1326018433 309457 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION thinks it was a deliberately breaking change to make Racket more distinct as its own language < 1326018444 507459 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :so, it seems weird to use pairs also as reference cells < 1326018445 726332 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :although it was still PLT Scheme then < 1326018463 576564 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :but there's probably some benefit in having reference cells, distinct from mutable environments < 1326018468 397214 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :but i'll have to think about what that might be < 1326018468 872369 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :yes, true < 1326018479 860741 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kmc: it's a legacy from lisp implementations of ye olden days, I think < 1326018483 852634 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :sure < 1326018485 496247 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :where even implementation structures were made out of cons cells < 1326018493 553450 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I know picolisp still does everything like that < 1326018501 960612 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :also I have no actual evidence old implementations were like that < 1326018504 858861 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :"what, you don't do everything inside a metacircular evaluator" < 1326018514 431192 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :"how do you write language extensions?!?" < 1326018559 32808 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :kmc: Is this for your educational thing? < 1326018575 257035 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :i don't know what you mean < 1326018584 474332 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :Zombie 6.001 is http://web.mit.edu/alexmv/6.S184/ < 1326018586 645049 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :You were talking about something earlier. < 1326018586 803114 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :i'm helping teach it < 1326018590 984541 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Ah. Yes, that. < 1326018623 777733 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :That looks like a fun class thing. < 1326018628 928742 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :yep < 1326018632 495888 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :you should follow along < 1326018650 307491 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :How does one do that? < 1326018658 953055 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Do I have to move to Boston? < 1326018666 763780 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION closes some tabs so he can see the favicons again. < 1326018670 191660 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :i expect lecture slides and assignments will be posted < 1326018746 324874 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: I'm just at the brink. Interesting tabs are a zero-sum game now. < 1326018762 202140 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :ACTION thinks project 3 might be kind of a challenge, even as an instructor < 1326018784 994380 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :(but it's not posted yet) < 1326018789 662392 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :What's project 3? < 1326018803 143399 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :a bunch of extensions to the metacircular evaluator < 1326018807 315633 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :including an interactive debugger < 1326018825 250986 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Ah, a debugger. < 1326018908 989521 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :I haven't actually read SICP. I probably should. < 1326018929 104749 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :i've not read it cover to cover < 1326018936 514243 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :but i think i've read most parts of it at some point or another < 1326018999 642791 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :OK, you've convinced me. I'll follow along. < 1326019017 733367 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :You should send me a reminder when it starts, if you remember. :-) < 1326019020 413576 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :sure < 1326019022 861952 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :it starts on Monday < 1326019025 361586 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :er, Tuesday < 1326019032 101138 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I suddenly realise I've never written a debugger. < 1326019034 534394 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :ACTION keeps forgetting that Tuesday isn't Monday < 1326019037 56677 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :(Probably because I don't like debuggers.) < 1326019040 774389 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Oh. < 1326019056 729004 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: Write a C debugger in Haskell for me. < 1326019071 402779 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :And make it like gdb except satisfying whatever mysterious criteria a debugger must satisfy for me to like it. < 1326019142 276390 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Where are the slides etc. going to be posted? < 1326019143 933384 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: I don't think it's possible to like anything that exclusively exists to make you focus in depth on the exact control flow of an imperative prorgam. < 1326019154 691484 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Prorgam! < 1326019158 682218 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :shachaf, for zombie 6.001? at the URL i just linked, I think < 1326019181 539438 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :ACTION is new to this < 1326019194 947545 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :OK. I'll keep a tab open. < 1326019209 346080 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :will try to remind you < 1326019216 557206 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Hopefully I remember to reload it on Tuesday. < 1326019225 137852 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :first project will be posted Tuesday night < 1326019234 482637 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :ACTION cleverly executes a rebalancing algorithm by moving a pair of tabs from one window to another. < 1326019238 210222 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: The best way to GC tabs is to turn your computer off every day. < 1326019253 842299 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION just holds down the power button so he doesn't get a chance to think about saving them. < 1326019263 395237 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: That would be a tragedy. < 1326019269 806181 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :the best way is to run a browser which crashes a lot < 1326019272 662063 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :This collection of tabs has been building up for about a year. < 1326019277 998879 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :My browser crashes but recovers. < 1326019287 209480 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric ::t fromRational < 1326019288 41348 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :forall a. (Fractional a) => Rational -> a < 1326019300 302253 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :@hoogle Floating a => a -> Float < 1326019300 938810 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Prelude acos :: Floating a => a -> a < 1326019301 131238 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Prelude acosh :: Floating a => a -> a < 1326019301 131416 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Prelude asin :: Floating a => a -> a < 1326019303 200191 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Oh, right. < 1326019307 810744 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :@hoogle Double -> Float < 1326019308 128528 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Unsafe.Coerce unsafeCoerce :: a -> b < 1326019308 444914 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Control.OldException throwDyn :: Typeable exception => exception -> b < 1326019308 601198 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Control.DeepSeq ($!!) :: NFData a => (a -> b) -> a -> b < 1326019311 505591 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :lmao < 1326019319 851022 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :haha < 1326019321 317557 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :what the fuck < 1326019333 251408 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :@hoogle (RealFloat a) => a -> b < 1326019333 608143 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Unsafe.Coerce unsafeCoerce :: a -> b < 1326019333 766463 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Prelude isDenormalized :: RealFloat a => a -> Bool < 1326019333 922784 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Prelude isIEEE :: RealFloat a => a -> Bool < 1326019336 205812 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I forget if RealFloat is a thing. < 1326019337 46663 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Yes, it is. < 1326019338 630793 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :@hoogle (RealFloat a) => a -> Float < 1326019338 987775 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Prelude significand :: RealFloat a => a -> a < 1326019339 145835 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Prelude id :: a -> a < 1326019339 303663 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Data.Function id :: a -> a < 1326019342 477132 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :@hoogle (RealFrac a) => a -> Float < 1326019342 793948 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Prelude id :: a -> a < 1326019342 952090 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Data.Function id :: a -> a < 1326019343 108259 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :GHC.Exts breakpoint :: a -> a < 1326019346 215810 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Oh, come on! < 1326019349 524874 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :@hoogle /msg < 1326019349 700767 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Parse error: < 1326019349 858848 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric ::t Control.OldException.throwDyn :: Double -> Float < 1326019350 17507 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : /msg < 1326019350 174741 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : ^ < 1326019350 812315 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Double -> Float < 1326019357 921555 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :> Control.OldException.throwDyn 3.0 < 1326019358 756536 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Not in scope: `Control.OldException.throwDyn' < 1326019390 231003 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :That's a fun type. < 1326019400 583994 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :how do you even do Float -> Double or w/e < 1326019404 464879 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION hasn't used floating-point much in Haskell < 1326019410 77421 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric ::t realToFrac < 1326019410 909032 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :forall a b. (Real a, Fractional b) => a -> b < 1326019412 64930 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oh right < 1326019414 942608 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric ::t realToFrac :: Float -> Double < 1326019415 774227 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Float -> Double < 1326019417 359558 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I knew that existed, I just forgot its name < 1326019418 667213 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :and type < 1326019462 943268 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :This is the best typeclass: < 1326019465 60931 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :@src Real < 1326019465 407809 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :class (Num a, Ord a) => Real a where < 1326019465 566047 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : toRational :: a -> Rational < 1326019481 902301 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :class F a where { f :: a } < 1326019557 521524 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kmc: Haskell should get rid of value declarations. < 1326019557 879035 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Maybe I should move to Boston for a month. < 1326019565 828410 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :You could just use a newtype record and an instance. < 1326019578 157678 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :mhm < 1326019582 905480 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :shachaf, which month? < 1326019594 829277 :Ngevd!~Taneb@host-2-99-87-159.as13285.net JOIN :#esoteric < 1326019612 415684 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :I don't know. I guess the bad months are just around now. < 1326019860 976678 :Taneb!~Taneb@host-2-99-87-159.as13285.net JOIN :#esoteric < 1326019862 929351 :Ngevd!~Taneb@host-2-99-87-159.as13285.net QUIT :Read error: Connection reset by peer < 1326019989 977093 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Anyway, I was going to sleep. < 1326020407 326048 :nooga!~nooga@maverick.aircity.pl JOIN :#esoteric < 1326020432 51515 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: Hi. < 1326020441 906479 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: Thanks. < 1326020513 857056 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: Did I wake you up? < 1326020523 425965 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :thelliott < 1326020567 678294 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Thanks, kmc. < 1326020618 427289 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Stumped you there, didn't I. < 1326020628 191097 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :no < 1326020677 553710 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Oh. < 1326020689 516931 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Anyway, I'm going to sleep. < 1326020697 555655 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :good night, shachaf < 1326020703 692873 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :gochaf < 1326021596 394830 :azaq23!~derivecto@unaffiliated/azaq23 JOIN :#esoteric < 1326021969 753723 :Taneb!~Taneb@host-2-99-87-159.as13285.net PRIVMSG #esoteric :Hello < 1326022769 333531 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :class Comonoid a where { ytpme :: a -> (); dneppa :: a -> (a,a) } < 1326022784 910419 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :no.... < 1326022803 647979 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :what laws does it follow < 1326022936 867854 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :The inverse of the monoid laws, duh. < 1326022960 181186 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :help < 1326023031 445006 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Come on, monqy, it's just comonads extended from endofunctors. < 1326023090 627159 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :!perl use v5.10; say scalar caller; say eval "scalar caller"; < 1326023093 166268 :EgoBot!foobar@codu.org PRIVMSG #esoteric :​\ main < 1326023120 824484 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :hi perl < 1326023122 652067 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Evil scalar caller. < 1326023170 235490 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run echo 'scalar caller' > blah.pl; perl -e 'print do "blah.pl"'; rm blah.pl < 1326023173 856435 :HackEgo!foobar@codu.org PRIVMSG #esoteric :main < 1326023194 336689 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run echo 'scalar caller' > blah.pl; perl -e 'package Foo; print do "blah.pl"'; rm blah.pl < 1326023198 181585 :HackEgo!foobar@codu.org PRIVMSG #esoteric :Foo < 1326023232 373756 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :hm < 1326023293 797533 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :I /think/ I can use this... < 1326023304 631811 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :to write code that can reload itself. < 1326023331 698808 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :I can just check caller and if it's the name of the package, run any kind of necessary hot-swap code. < 1326023606 936726 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric : no.... < 1326023607 95336 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric : what laws does it follow < 1326023647 518153 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :monqy: i er < 1326023658 923377 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :monqy: i don't know < 1326023662 540897 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric ::( < 1326023672 171578 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric : Come on, monqy, it's just comonads extended from endofunctors. < 1326023683 14892 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: Not really, you'd need a < 1326023696 249409 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :class SortaCategory (~>) one (*) < 1326023698 710489 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :or whatever. < 1326023703 146415 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :*id < 1326023719 529824 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :ytpme :: id ~> one; dneppa :: id ~> id*id < 1326023733 827433 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :oh hmmmm that won't always work I think.... < 1326023767 152152 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :if I write new code that removes a method, the reload won't hide that method. < 1326023777 680585 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :but it can redefine and add methods no problem. < 1326023834 508518 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run echo '$x' > blah.pl; perl -e 'local $x = 5; print do "blah.pl"'; rm blah.pl < 1326023837 203721 :HackEgo!foobar@codu.org PRIVMSG #esoteric :5 < 1326023850 196884 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run echo '$x' > blah.pl; perl -e 'my $x = 5; print do "blah.pl"'; rm blah.pl < 1326023853 798766 :HackEgo!foobar@codu.org PRIVMSG #esoteric :No output. < 1326023863 52657 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :awwww yeah. < 1326023876 274894 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :I can do so many evil things with that trick. < 1326023880 379897 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: (What is a comonoid really?) < 1326023888 104203 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Oh, it's a monoid in the opposite category. < 1326023897 336838 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Yes. < 1326023901 343521 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :And the opposite category is just flipping all the arrows. < 1326023912 58102 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :So, um... what's the comonoid equivalent of Monoid? < 1326023965 562192 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :Comonoid. < 1326023968 230078 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric ::) < 1326024033 11959 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Well, um, if you take the definition with a category with one object A, and take the underlying set to be Hom(A,A) and the multiplication operator to be ., you get... < 1326024039 497565 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :The exact same monoid? < 1326024066 556174 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Q.E.D. < 1326024172 797327 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run echo 'package X; our $x = 3' > blah.pl; perl -e 'package X; our $x = 2; do "blah.pl"; print $x;' rm blah.pl < 1326024176 117378 :HackEgo!foobar@codu.org PRIVMSG #esoteric :3 < 1326024198 742854 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :oh that's so good... < 1326024226 508775 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :why kallisti why................ < 1326024237 65372 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :monqy: to have an IRC bot that never needs to be shutdown ever. < 1326024342 216465 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :`cat blah.pl < 1326024345 237143 :HackEgo!foobar@codu.org PRIVMSG #esoteric :package X; our $x = 3 < 1326024357 875446 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :oh < 1326024379 248266 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run rm blah.pl < 1326024382 135790 :HackEgo!foobar@codu.org PRIVMSG #esoteric :No output. < 1326024410 421195 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :it's not without flaws though. I can't redefine lexical variables at the top-level this way. < 1326024423 373148 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :perhaps that is for the best < 1326024423 571123 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :because... well, they're lexical. < 1326024463 494427 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :but most top-level variables are going to be package scope or dynamic scope anyway. < 1326024517 224553 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :now for something fun... < 1326024724 819735 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run echo 'package X; my $caller = caller; eval "require $caller";' > X.pm; echo 'package Y; if (my $caller = caller) { eval "require $caller" } else { require X }' > Y.pm; perl Y.pm < 1326024728 468727 :HackEgo!foobar@codu.org PRIVMSG #esoteric :No output. < 1326024732 625819 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :hm < 1326024738 101386 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :oh right < 1326024748 327207 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :I can't recursively require things like that. < 1326024761 233314 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run echo 'package X; my $caller = caller; eval "require $caller";' > X.pm; echo 'package Y; if (my $caller = caller) { eval "require $caller" } else { print %INC; require X }' > Y.pm; perl Y.pm < 1326024764 598683 :HackEgo!foobar@codu.org PRIVMSG #esoteric :No output. < 1326024785 674721 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run echo 'package X; print %INC; my $caller = caller; eval "require $caller";' > X.pm; echo 'package Y; if (my $caller = caller) { eval "require $caller" } else { require X }' > Y.pm; perl Y.pm < 1326024789 201321 :HackEgo!foobar@codu.org PRIVMSG #esoteric :X.pmX.pm < 1326024932 251089 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run echo 'package X; do caller.".pm";' > X.pm; echo 'package Y; if (my $caller = caller) { do "$caller.pm" } else { require X }' > Y.pm; perl Y.pm < 1326024935 266795 :HackEgo!foobar@codu.org PRIVMSG #esoteric :Warning: Use of "caller" without parentheses is ambiguous at X.pm line 1. \ Warning: Use of "caller" without parentheses is ambiguous at X.pm line 1. \ Warning: Use of "caller" without parentheses is ambiguous at X.pm line 1. \ Warning: Use of "caller" without parentheses is ambiguous at X.pm line 1. \ Warning: Use of "caller" without parentheses is ambiguous at X.pm line 1. \ Warning: Use of "caller" without parentheses < 1326024944 148931 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :lol < 1326024970 876664 :Zuu!zuu@unaffiliated/zuu QUIT :Ping timeout: 252 seconds < 1326024980 454081 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :apparently not very ambiguous because it did exactly what I wanted. :P < 1326025011 535751 :Taneb!~Taneb@host-2-99-87-159.as13285.net PRIVMSG #esoteric :`run echo "main = print \"test\"" < 1326025014 931407 :HackEgo!foobar@codu.org PRIVMSG #esoteric :main = print "test" < 1326025023 845321 :Taneb!~Taneb@host-2-99-87-159.as13285.net PRIVMSG #esoteric :Hmm < 1326025030 662740 :Taneb!~Taneb@host-2-99-87-159.as13285.net PRIVMSG #esoteric :I can't remember what I was doing with that < 1326025035 473369 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :me neither. < 1326025085 151485 :Taneb!~Taneb@host-2-99-87-159.as13285.net PRIVMSG #esoteric :`run echo "main = print \"test\"" > test.hs; runhaskell test.hs < 1326025093 779158 :HackEgo!foobar@codu.org PRIVMSG #esoteric :​"test" < 1326025105 791920 :Taneb!~Taneb@host-2-99-87-159.as13285.net PRIVMSG #esoteric :`rm test.hs < 1326025109 136 :HackEgo!foobar@codu.org PRIVMSG #esoteric :No output. < 1326025174 52342 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :http://search.cpan.org/~sprout/Sub-Delete-1.00002/lib/Sub/Delete.pm < 1326025181 759478 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :I could maybe use this if I need to delete subs. < 1326025208 500020 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :undef ⊂ works kinda < 1326025239 465440 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :or, hmmm... < 1326025252 440556 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :I could completely destroy the symbol table before I reload. lol. < 1326025322 15422 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :gah does java not have a built in rounding function that rounds away from zero in case of .5 < 1326025357 53248 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :lolMath.round? < 1326025362 481344 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :kallisti, from the docs of Math.round it seems to always round up? So -0.5 would end up as 0? < 1326025364 741734 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :oops lol virus < 1326025377 781632 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :oh that's... weird. maybe they're wrong. < 1326025389 30113 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :maybe they mean "rounds up" in terms of absolute value. < 1326025392 407077 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :hm perhaps < 1326025403 612220 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :no REPR for java so a bit annoying to test such < 1326025432 344681 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :read eval print read < 1326025437 427014 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :it just exits after the second read < 1326025443 151746 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :useful(tm) < 1326025504 132152 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :nonsense. it's just as simple as public class Test { public static void main(String[] argv) { ... } < 1326025505 684359 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :at least it pays attention < 1326025519 762636 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :not like those dirty EEPLs < 1326025559 681914 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :and then System.out.println(Math.round(-0.5)) assuming you imported Math < 1326025564 359888 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :so. easy. < 1326025580 545072 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, typo :P < 1326025589 794629 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, but I guess I could justify it as read eval print repeat < 1326025595 470222 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :or something < 1326025599 77773 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :wait no deleting the symbol is probably a bad idea oh wait nevermind that's a great idea. < 1326025708 581895 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run echo 'package X; our $x = 3;' > X.pm; perl -e 'package X; our $x = 2; sub test() { print "WOAH" }; undef %X::; do "X.pm"; test'; < 1326025711 916474 :HackEgo!foobar@codu.org PRIVMSG #esoteric :WOAH < 1326025719 87223 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :oh, no. < 1326025721 880386 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :not a good idea. :P < 1326025733 86331 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run echo 'package X; our $x = 3;' > X.pm; perl -e 'package X; our $x = 2; sub test() { print "WOAH" }; %X:: = (); do "X.pm"; test'; < 1326025736 362218 :HackEgo!foobar@codu.org PRIVMSG #esoteric :WOAH < 1326025748 203371 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :subroutines get some kind of magic namespace < 1326025750 171362 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :????? < 1326025754 851855 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :no. < 1326025803 176531 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run echo 'package X; our $x = 3;' > X.pm; perl -e 'package X; our $y = 2; sub test() { print "WOAH" }; %X:: = (); do "X.pm"; print $x, $y;' < 1326025806 632177 :HackEgo!foobar@codu.org PRIVMSG #esoteric :2 < 1326025817 923890 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :uh < 1326026116 133113 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run echo 'package X; our $x = 3;' > X.pm; perl -e 'package X; use strict; our $y = 2; sub test() { print "WOAH" }; %X:: = (); do "X.pm"; print $x, $y;' < 1326026119 468119 :HackEgo!foobar@codu.org PRIVMSG #esoteric :Global symbol "$x" requires explicit package name at -e line 1. \ Execution of -e aborted due to compilation errors. < 1326026137 835067 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run echo 'package X; our $x = 3;' > X.pm; perl -e 'package X; use strict; our ($y,$x) = (2,5); sub test() { print "WOAH" }; %X:: = (); do "X.pm"; print $x, $y;' < 1326026140 858088 :HackEgo!foobar@codu.org PRIVMSG #esoteric :52 < 1326026195 69567 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :hmmm I spoke too soon. < 1326026236 860245 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run echo 'package X; our $x = 3;' > X.pm; perl -e 'package X; use strict; our ($y,$x) = (2,5); sub test() { print "WOAH" }; do "X.pm"; print $x, $y;' < 1326026240 111011 :HackEgo!foobar@codu.org PRIVMSG #esoteric :32 < 1326026253 283672 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :okay so. for future reference: don't try to delete symbol tables < 1326026258 887215 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :weird things will happen. < 1326026403 68715 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :`run echo 'package X; our $x = 3;' > X.pm; perl -e 'package X; use strict; our ($y,$x) = (2,5); sub test() { print "WOAH" }; %X:: = (); do "X.pm"; print "directly, x=$x, y=$y\n"; eval "print \"evally, x=\$x, y=\$y\\n\"";' < 1326026406 377096 :HackEgo!foobar@codu.org PRIVMSG #esoteric :directly, x=5, y=2 \ evally, x=3, y= < 1326026416 904293 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :fizzie: ah because of compilation < 1326026464 17567 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :http://stackoverflow.com/questions/4623556/symbol-table-deleting-entries-question < 1326026466 973940 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :according to this < 1326026511 93560 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :It's a reasonable theory. < 1326026569 173312 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :(Though you should of course give equal time to the "intelligent variable" theory, too.) < 1326026582 601083 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :I haven't studied that one. < 1326026586 342315 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :are variables sentient in perl? < 1326026595 893038 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :It's something like that, yes. < 1326026634 965592 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :so unless all the code I execute afterwards is part of an eval, my symbol table deletions take no effect. < 1326026729 391346 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :http://cpansearch.perl.org/src/SPROUT/Sub-Delete-1.00002/lib/Sub/Delete.pm < 1326026739 283330 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :I wonder what that magical looking subroutine at the top does. < 1326026777 997763 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :magic < 1326026855 242801 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :my $glob = *$globname; # autovivify the glob in case future perl < 1326026859 489104 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :you never know when future perl might happen. < 1326026942 331226 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :keys %imported_slots == 1 and exists $imported_slots{SCALAR} and !$imported_slots{SCALAR} and Internals'SvREFCNT $$glob =>== 1 and !defined *$glob{IO} and !defined *$glob{FORMAT} and return; # empty glob < 1326026946 225095 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :oh god what is this. < 1326026969 584191 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :=>== 1 ??????? < 1326026989 69215 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :REALLY greater than or equal to. < 1326027119 483422 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :`run perl -e '1 =>== 2' < 1326027122 759864 :HackEgo!foobar@codu.org PRIVMSG #esoteric :syntax error at -e line 1, near "=>==" \ Execution of -e aborted due to compilation errors. < 1326027129 390473 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :It must be some kind of real magic. < 1326027139 149642 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :oh wait... < 1326027142 203417 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :it could be either... < 1326027144 438674 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric := >= = < 1326027147 54946 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :=> == < 1326027149 511458 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :or ... < 1326027150 620107 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :what < 1326027155 944560 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :what does that even mean < 1326027191 180203 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I like the use of ' there too < 1326027200 213867 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :!perl my $x = 3; print Intervals'SvREFCNT \$x < 1326027201 45378 :EgoBot!foobar@codu.org PRIVMSG #esoteric :No output. < 1326027216 23520 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :oh this code doesn't use strict; < 1326027220 860414 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Internals, not Intervals. < 1326027227 672041 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :!perl my $x = 3; print Internals'SvREFCNT \$x < 1326027228 188512 :EgoBot!foobar@codu.org PRIVMSG #esoteric :Type of arg 1 to Internals::SvREFCNT must be one of [$%@] (not single ref constructor) at /tmp/input.7682 line 1, at EOF \ Execution of /tmp/input.7682 aborted due to compilation errors. < 1326027236 535177 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :!perl my $x = 3; print Internals'SvREFCNT $x < 1326027237 170230 :EgoBot!foobar@codu.org PRIVMSG #esoteric :1 < 1326027246 465780 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :not very surprising. < 1326027307 99756 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :!perl my $x = 3; print Internals'SvREFCNT $x =>== 1 < 1326027307 732936 :EgoBot!foobar@codu.org PRIVMSG #esoteric :1 < 1326027318 979890 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :!perl my $x = 3; print Internals'SvREFCNT $x => == 1 < 1326027319 455966 :EgoBot!foobar@codu.org PRIVMSG #esoteric :1 < 1326027322 675161 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :!perl my $x = 3; print Internals'SvREFCNT $x = >== 1 < 1326027323 151712 :EgoBot!foobar@codu.org PRIVMSG #esoteric :syntax error at /tmp/input.7967 line 1, near "= >=" \ Execution of /tmp/input.7967 aborted due to compilation errors. < 1326027333 278373 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :oh hmmm < 1326027337 122342 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :I wonder what the comma does. < 1326027342 896480 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :!perl my $x = 3; print Internals'SvREFCNT $x , == 1 < 1326027343 616757 :EgoBot!foobar@codu.org PRIVMSG #esoteric :1 < 1326027362 691017 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :nothing? < 1326027368 188538 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :maybe it's to disambiguate something? < 1326027381 142117 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :!perl my $x = 3; print Internals'SvREFCNT $x, 1 < 1326027381 617107 :EgoBot!foobar@codu.org PRIVMSG #esoteric :1Attempt to free unreferenced scalar: SV 0x7f56d20d4a30, Perl interpreter: 0x7f56d20b3010. < 1326027384 710700 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :The bestest. < 1326027388 801541 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :!perl my $x = 3; print Internals'SvREFCNT $x == 1 < 1326027389 453324 :EgoBot!foobar@codu.org PRIVMSG #esoteric :Type of arg 1 to Internals::SvREFCNT must be one of [$%@] (not numeric eq (==)) at /tmp/input.8217 line 1, at EOF \ Execution of /tmp/input.8217 aborted due to compilation errors. < 1326027392 211446 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :ah < 1326027408 796865 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :it's to prevent that < 1326027425 945454 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :instead of, you know, using parentheses. < 1326027432 441950 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :=>== lololololol < 1326027526 276528 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :a regular comma would have been much clearer < 1326027533 829115 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :!perl print abs -4 =>== 42 < 1326027534 342767 :EgoBot!foobar@codu.org PRIVMSG #esoteric :4 < 1326027550 364962 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :maybe it's some weird idiom I've never seen? < 1326027591 353815 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :....wat < 1326027596 589901 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :oh < 1326027597 382294 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :yes < 1326027628 890707 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :=>== is to == as and is to && < 1326027667 208652 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric ::t randoms < 1326027668 1296 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :forall g a. (Random a, RandomGen g) => g -> [a] < 1326027682 577055 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :but yeally I'd use ,== or , == or (most likely) parentheses < 1326027717 274889 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :The half-orphan comma looks pretty silly too. < 1326027809 112063 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :ACTION is tempted to use this module with use strict turned on and see how many warnings/errors he gets. < 1326027904 455081 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :anyway this will work in many of the cases I'm concerned with, where I have plugins redefining methods. I think.. < 1326027976 76503 :oerjan!oerjan@sprocket.nvg.ntnu.no JOIN :#esoteric < 1326028059 814349 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run echo 'package X; our $x = 3;' > X.pm; perl -e 'package X; use strict; our ($y,$x) = (2,5); sub test() { print "WOAH" }; %X:: = (); do "X.pm"; X::test' < 1326028063 371579 :HackEgo!foobar@codu.org PRIVMSG #esoteric :WOAH < 1326028088 492047 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run echo 'package X; our $x = 3;' > X.pm; perl -e 'package X; use strict; our ($y,$x) = (2,5); sub test() { print "WOAH" }; %X:: = (); do "X.pm"; package Blah; X::test' < 1326028091 633338 :HackEgo!foobar@codu.org PRIVMSG #esoteric :WOAH < 1326028095 996509 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :hm, well, nevermind < 1326028103 320517 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :I'll just... not try to delete symbol tables. < 1326028154 455836 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run echo 'package X; our $x = 3; sub test { print "SHADOOSH" }' > X.pm; perl -e 'package X; use strict; our ($y,$x) = (2,5); sub test() { print "WOAH" }; %X:: = (); do "X.pm"; package Blah; X::test' < 1326028157 831535 :HackEgo!foobar@codu.org PRIVMSG #esoteric :WOAH < 1326028170 76232 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run echo 'package X; our $x = 3; sub test { print "SHADOOSH" }' > X.pm; perl -e 'package X; use strict; our ($y,$x) = (2,5); sub test { print "WOAH" }; %X:: = (); do "X.pm"; package Blah; X::test' < 1326028172 886119 :HackEgo!foobar@codu.org PRIVMSG #esoteric :WOAH < 1326028175 183722 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric ::( < 1326028230 877597 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :I'm not sure why it suddenly doesn't work because I add that symbol table line < 1326028240 843306 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run echo 'package X; our $x = 3; sub test { print "SHADOOSH" }' > X.pm; perl -e 'package X; use strict; our ($y,$x) = (2,5); sub test { print "WOAH" }; do "X.pm"; package Blah; X::test' < 1326028244 174502 :HackEgo!foobar@codu.org PRIVMSG #esoteric :SHADOOSH < 1326028284 677430 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :fizzie: just how sentient are variables in Perl exactly. < 1326028339 195068 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run perl -e 'package X; our $x = 3; %X:: = (); our $x = 4; print $x' < 1326028342 127685 :HackEgo!foobar@codu.org PRIVMSG #esoteric :4 < 1326028397 912713 :oerjan!oerjan@sprocket.nvg.ntnu.no TOPIC #esoteric :Official revolting channel of the inverse femtobarn stupid topic change plurality, the original Trilogy: A new PHP | http://codu.org/logs/_esoteric/ < 1326028457 528585 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run echo 'package X; %X:: = (); our $x = 3;' > X.pm; perl -e 'package X; use strict; our ($y,$x) = (2,5); sub test() { print "WOAH" }; do "X.pm"; package Blah; X::test' < 1326028460 674537 :HackEgo!foobar@codu.org PRIVMSG #esoteric :WOAH < 1326028502 171220 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :HackEgo: you sound so impressed < 1326028514 953278 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :I don't understand at all... < 1326028567 498381 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run echo 'package X; %X:: = (); our $x = 3;' > X.pm; perl -e 'package X; use strict; our ($y,$x) = (2,5); sub test() { print "WOAH" }; do "X.pm"; sub foo { test}; foo ' < 1326028571 270063 :HackEgo!foobar@codu.org PRIVMSG #esoteric :WOAH < 1326028585 443596 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :ACTION should write a hello Template Haskell program or something < 1326028595 797008 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :Hello, Template World! < 1326028620 658696 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :Don't like the notion of needing a separate module though < 1326028623 353573 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :fizzie: can you make sense of this. < 1326028772 786899 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I'm not entirely sure I want to. < 1326028793 802628 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :kallisti: perhaps you should add -w ? < 1326028799 492887 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Sgeo: I think it complicates type-checking if you don't enforce that. < 1326028808 17541 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :ACTION doesn't really know what kallisti is trying < 1326028813 153966 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :TH is a pain because it messes up the compiler control flow. < 1326028819 569760 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Thus the restrictions. < 1326028843 415352 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Anyway, I suspect compilation again. I mean, do "X.pm" equals eval `cat X.pm`, on compilation-time the 'test' in sub foo presumably gets turned into a reference of the sub test. < 1326028843 891610 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :oerjan: I'm trying to write code that can reload itself. < 1326028876 297337 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :the reloading part is easy, however... all the old symbols that weren't overwritten get left behind unless you do something to delete them beforehand. < 1326028886 678718 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :and now I'm encountering weirdness with Perl and its symbol table. < 1326028910 241660 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :specifically %X:: = (); doesn't appear to do what you would expect. < 1326028930 312013 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Then you must simply expect something else. < 1326028937 244395 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :"The subroutine is completely obliterated from the symbol table (though there may be references to it elsewhere, including in compiled code)", like Sub::Delete says. < 1326028967 7929 :Zuu!zuu@77.215.149.86 JOIN :#esoteric < 1326028967 167620 :Zuu!zuu@77.215.149.86 QUIT :Changing host < 1326028967 323944 :Zuu!zuu@unaffiliated/zuu JOIN :#esoteric < 1326028980 861792 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :it would seem if that were the case then completely redefining the symbol table via a do "X.pm" shouldn't do anything to the outer code. < 1326029004 921780 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :in fact, if I write %X:: = (); before the do, then that's exactly what happens. < 1326029012 268627 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :but if I remove that line, then the do redefines symbols as expected. < 1326029091 429869 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run echo 'package X; %X:: = (); our $x = 3;' > X.pm; perl -e 'package X; use strict; our ($y,$x) = (2,5); sub test() { print "WOAH" }; local %X:: = (); do "X.pm"; test ' < 1326029094 878874 :HackEgo!foobar@codu.org PRIVMSG #esoteric :WOAH < 1326029167 330248 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run echo 'package X; %X:: = (); our $x = 3; sub test { print "hi" }' > X.pm; perl -e 'package X; use strict; our ($y,$x) = (2,5); sub test() { print "WOAH" }; local %X:: = (); do "X.pm"; test ' < 1326029170 638428 :HackEgo!foobar@codu.org PRIVMSG #esoteric :WOAH < 1326029186 264560 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run echo 'package X; our $x = 3; sub test { print "hi" }' > X.pm; perl -e 'package X; use strict; our ($y,$x) = (2,5); sub test() { print "WOAH" }; local %X:: = (); do "X.pm"; test ' < 1326029189 341235 :HackEgo!foobar@codu.org PRIVMSG #esoteric :WOAH < 1326029193 542510 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :okay, I give up. :P < 1326029221 172457 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :You could just forget about the symbol tables and use coderefs you manage manually. < 1326029282 405241 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :I was thinking that I could probably just manually delete subroutines when I hotswap if leaving them present would break the system. < 1326029337 242818 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :but that might have the same problem. < 1326029350 721289 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :ACTION notes a subtle edit to the intro blurb in today's darths & droids < 1326029370 881831 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :well, "subtle" < 1326029412 938480 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :Whee! < 1326029413 612505 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :makeDef text = [d|helloDefinition = $(litE . stringL $ text)|] < 1326029438 640125 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :ACTION thinks it's somewhat confusing as to when something puts stuff in the Q monad and when it doesn't < 1326029462 325328 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :what parts are confusing < 1326029490 838772 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run echo 'package X; our $x = 3; sub test { print "hi" }' > X.pm; perl -e 'package X; use strict; our ($y,$x) = (2,5); sub test() { print "WOAH" }; undef &test; do "X.pm"; test ' < 1326029494 11949 :HackEgo!foobar@codu.org PRIVMSG #esoteric :hi < 1326029511 560671 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :if I undefine subroutines that way it works fine, so... yes that's an option. < 1326029512 194701 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :I forget what does what and what does what except that the constructors don't and the lowercasey functioney things do < 1326029535 566638 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :`run echo 'package X; sub test { print "new!" }' > X.pm; perl -e 'package X; use strict; sub test { print "old!" }; do "X.pm"; test; package Blah; X::test' < 1326029538 818192 :HackEgo!foobar@codu.org PRIVMSG #esoteric :new!new! < 1326029544 879848 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :`run echo 'package X; sub test { print "new!" }' > X.pm; perl -e 'package X; use strict; sub test { print "old!" }; %X:: = (); do "X.pm"; test; package Blah; X::test' < 1326029548 484899 :HackEgo!foobar@codu.org PRIVMSG #esoteric :old!old! < 1326029552 203710 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :monqy, yeah, I'm starting to think that's the rule of thumb < 1326029553 986509 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :kallisti: I'm thinking the %X:: = () symbol table deletion there wipes out the symbol table entry, so the "sub test" in X.pm gets bound to a new entry and therefore doesn't get called; while when you don't wipe it out, the "sub test" in X.pm just overwrites the CODE slot of that glob, and therefore does get called. < 1326029569 360072 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :Also didn't realize that [d|..] did a list of the things, and not a single one < 1326029580 691086 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :I initially tried to sequence the thing < 1326029584 695354 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run echo 'package X; our $x = 3; sub test { print "hi" }' > X.pm; perl -e 'package X; use strict; our ($y,$x) = (2,5); sub test() { print "WOAH" }; undef &test; do "X.pm"; test ' < 1326029587 864750 :HackEgo!foobar@codu.org PRIVMSG #esoteric :hi < 1326029589 808009 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Sgeo: You're always meant to use the functions. < 1326029595 848144 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :As opposed to the constructors directly. < 1326029604 767686 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :TH sucks, by the way. < 1326029606 37884 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :Except when pattern matching? < 1326029608 982573 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :No shit. < 1326029611 847626 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :fizzie: so I could loop through the symbol table and undef all the variables maybe? < 1326029625 932036 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :How does TH suck? < 1326029638 334062 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :Sgeo: it will quickly become apparent < 1326029651 469887 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :Sgeo: unless you're really bad at noticing bad things < 1326029653 328127 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :I have 3 choices here: Use TH, write a program to output Haskell code, or go insane. < 1326029655 430276 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :monqy: No it won't, he likes Active Worlds. < 1326029664 757401 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :elliott: I was thinking more station v3 but that works too < 1326029668 442094 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Sgeo: Pick (d) Don't do whatever bad thing you're trying to do. < 1326029679 303646 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :Sgeo: code generation is cool. write a perl script. < 1326029683 148375 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :there aren't any th alternatives are there :( < 1326029688 932053 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :cpp doesnt count < 1326029691 309641 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :Sgeo: I write all of my Haskell in perl. < 1326029693 394047 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Sgeo: Anyway: http://www.reddit.com/r/haskell/comments/nny43/readargs_for_quick_argument_parsing/c3apz9x?context=1 < 1326029702 20065 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Sgeo: Most people avoid TH for basically those reasons./ < 1326029704 810192 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :*no / < 1326029718 483840 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Deriving lenses is the main TH usecase these days :P < 1326029760 200244 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Sgeo: (The "BTW, I despise anything using TH. Including my own code." quote is from augustss, if Big Names convince you of things.) < 1326029821 339264 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :Sgeo: what bad thing are you trying to do , anyway < 1326029848 485809 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :kallisti: I don't really know about Perl internals, I don't know what the compilation stores in the code. If it's a typeglob-like reference, I suppose you could just zero the CODE slots of all the entries; that I think should stop old compiled code calling them, if that's what you want. (Well, except if some place actually stored a coderef to the old sub, I'm not sure if that's even possible to break.) < 1326029862 577782 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :monqy: don't don't say that he'll tell us < 1326029869 280321 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :monqy, automate the creation of functions and data structures based on specifications that I.. err, specify, largely copy-pasted from the AW wiki < 1326029879 776463 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :fizzie: no that can't break. < 1326029965 350667 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :but that's not really an issue < 1326029976 148976 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :all the old coderefs get redefined anyway. < 1326029978 644502 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :Sgeo: automate? < 1326029993 74378 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :monqy, as opposed to writing out countless definitions by hand. < 1326029998 711090 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :(the coderefs in my program are in the bot command table, which will get redefined during the hotswap) < 1326030097 625636 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :basically I'll just add a line so that, if the caller is the package itself, it will autorun a special hotswap routine that basically reinitializes everything. < 1326030581 740548 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :I'll zero basically everything. I don't want old package-scope variables to be visible either. < 1326030620 250564 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :Would it be better for me to write a program to write the Haskell code instead? < 1326030635 347138 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :Sgeo: it would be pretty easy I'd thin. if it's sufficiently boring. < 1326030668 227734 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :why are you doing what you are doing in the way you are doing it < 1326030676 589897 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :and why are you doing what you are doing < 1326030679 233368 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Sgeo: If you can't avoid whatever you're doing, then yes. < 1326030689 418360 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Sgeo: If your needs are simple enough, use {-# LANGUAGE CPP #-} instead. < 1326030735 292019 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run perl -e 'package X; our ($x, $y, $z) = 1..3; print %X::' < 1326030738 542763 :HackEgo!foobar@codu.org PRIVMSG #esoteric :y*X::yx*X::xz*X::z < 1326030854 350849 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run perl -e 'package X; our ($x, $y, $z) = 1..3; $X::{x}{SCALAR} = undef; print $x' < 1326030857 570847 :HackEgo!foobar@codu.org PRIVMSG #esoteric :1 < 1326030857 726487 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :kallisti, this sounds like an awfully complex way to do hotswapping of code above. And what if the old code is still executing in another thread? < 1326030861 242387 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :it sounds like he's doing some hard core code generation < 1326030878 747268 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run perl -e 'package X; use strict; our ($x, $y, $z) = 1..3; $X::{x}{SCALAR} = undef; print $x' < 1326030882 276550 :HackEgo!foobar@codu.org PRIVMSG #esoteric :1 < 1326030889 367038 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :Vorpal: can you think of any better alternatives? < 1326030896 234033 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :kallisti, using erlang? ;P < 1326030900 279211 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :nope. < 1326030905 603688 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :unless you have a good perl-to-erlang translator. < 1326030949 264445 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :I remember a MUD codebase I used to maintain used... execl? or something? < 1326030975 204674 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :it somehow magically transferred sockets. I didn't really understand it. < 1326031000 718445 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :kallisti, erlang basically does it by allowing you to have multiple versions of a module at the same time in memory and then when you are ready you tell threads to jump over to the new one (how: module:foo refers to the last version, but inside module a plain foo would refer to the current version, so you just call module:foo from inside the module itself if that is where the main loop is) < 1326031013 49189 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :(gen_server and such abstracts that away) < 1326031035 261676 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :kallisti, eh when you exec existing file descriptors aren't closed. < 1326031055 853829 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :unless you specifically set some flag on the fd using fcntl iirc < 1326031072 225824 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :kallisti, so that is why they hang around < 1326031074 528800 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :are sockets... file descriptors? < 1326031084 608015 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :kallisti, obviously, what did you think they were? < 1326031098 731438 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :I'm thinking of bash file descriptors I think. is that the same thing? < 1326031128 702470 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :like fds as in open() or such < 1326031136 964111 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :not sure what you mean with bash fds < 1326031142 407076 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :the numbered ones. < 1326031157 562851 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :that is what everything uses on *nix? < 1326031163 786525 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :so why bash specifically < 1326031164 103973 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :I see. < 1326031174 913508 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :FILE* is just a wrapper around fds < 1326031183 807659 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :because I don't fully understand file descriptors. < 1326031188 815551 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :how are the numbers assigned? < 1326031198 375625 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :by the programmer or the OS? < 1326031204 206493 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :right < 1326031206 982485 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :I meant < 1326031213 636164 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :what algorithm is followed by the OS. < 1326031214 429794 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :if any. < 1326031228 716897 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :kallisti, probably "next unused" I would guess < 1326031235 614827 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :you can of course move a fd and such < 1326031236 608260 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :fds get reused immediately < 1326031239 315778 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :did that in cfunge < 1326031249 754232 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :so I guess they use a free-list or w/e < 1326031255 446640 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :in other words could I do something 3>&1 and have some file in my program assigned to STDOUT? < 1326031261 29566 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, does POSIX say that or is it just how it works on Linux? < 1326031263 992136 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric : unless you specifically set some flag on the fd using fcntl iirc < 1326031268 358679 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :At open() time too; O_CLOEXEC. < 1326031273 690359 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :oh right < 1326031274 207532 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: POSIX says nothing about it afaik. < 1326031280 112456 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :right < 1326031321 72807 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :kallisti, not entirely sure what bash does there in terms of which syscalls < 1326031336 870900 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :kallisti, I would guess it calls dup(3)? < 1326031344 692618 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :or rather dup2(3) < 1326031346 656 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :ACTION had previously thought it was the case that file descriptor referred to any open files, but I think through some conversation in this channel I was convinced that it was a bash-related concept. < 1326031393 31639 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :POSIX-2008: dup(3) equivalent to fcntl(fildes, F_DUPFD, 0); fcntl F_DUPFD "Return a new file descriptor which shall be the lowest numbered available (that is, not already open) file descriptor greater than or equal to the third argument, arg, taken as an integer of type int." < 1326031394 76232 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kallisti: If it was a bash-only concept, I'm not sure what you'd call the return value of open(2). < 1326031396 36068 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :kallisti, if you inspect a struct FILE it will, amongst other things, contain a field for the fd < 1326031402 605456 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :So when dup'ing it's always the "smallest free". < 1326031404 823415 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :there will be various flags and buffer things and so on too < 1326031405 615842 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :At least on POSIX. < 1326031417 280900 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :elliott: this may come as a shock but I don't know much about syscalls. < 1326031423 455647 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :or C. < 1326031425 58132 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Does POSIX actually specify that stdio must be implemented as a wrapper around fd stuff? < 1326031426 327213 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :"The open() function shall return a file descriptor for the named file that is the lowest file descriptor not currently open for that process." < 1326031428 747341 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :fizzie, I used dup2() in cfunge iirc to move some fd about for PERL < 1326031429 857947 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Same for 'open'. < 1326031433 691353 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Obviously a conforming C can implement fopen() without file descriptors. < 1326031444 527367 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :s/about/around/ < 1326031452 495480 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :so uh... is 3>&1 a bad idea? < 1326031470 126161 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kallisti: Not if you want to redirect fd 3 to stdout. < 1326031471 631933 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :So the "lowest number that's not in use" is in fact in POSIX. < 1326031474 48209 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, indeed < 1326031482 205260 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :elliott: I'm guessing there's a way to specify that fd 3 is, then. < 1326031482 711150 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, I just meant how it is done on *nix < 1326031492 260688 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :elliott: otherwise you're at the mercy of the OS. < 1326031494 126807 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kallisti: What? < 1326031501 995146 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Is what? < 1326031503 770623 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Oh. < 1326031504 88642 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :elliott: POSIX includes fileno(), so there sort-of has to be some correspondence between FILE*s and file descriptors. < 1326031515 835819 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kallisti: The program can just < 1326031518 135818 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :write(3, ..., ...); < 1326031525 222318 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :fizzie, indeed, I assumed he meant for non-*nix < 1326031527 837875 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kallisti: The shell opens fd 3. < 1326031529 427257 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :*creates < 1326031531 971200 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :By duping 1 onto it. < 1326031555 131156 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Vorpal: Yes; this was an answer to the "Does POSIX actually specify that stdio must be implemented as a wrapper around fd stuff" thing, not the "conforming C" thing. < 1326031556 559056 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :fizzie: Yes, but is the fd specified to refer to the same file? :p < 1326031568 554450 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :"The fileno() function shall return the integer file descriptor associated with the stream pointed to by stream." < 1326031571 368504 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :elliott: it always does that? or is that a result of the 3>&1 bit? < 1326031580 739940 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kallisti: That's because you told it you want an fd 3 going somewhere. < 1326031584 3618 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :The standard fds are just 0, 1, 2. < 1326031585 633237 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric : or C. <-- oh, I assumed you were familiar with C when I tried to describe the concept above. < 1326031591 849904 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kallisti: You can't allocate fd 3 without pointing it somewhere. < 1326031597 263706 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :fizzie, ah < 1326031598 372765 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :i.e. another fd or a file or a socket or whatever. < 1326031613 846122 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :elliott: so a regular open call can't assign fd 3 to something? < 1326031642 421945 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Not if it's already open. < 1326031655 657824 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kallisti: open(2) chooses which FD to give you. < 1326031666 930056 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kallisti: If you want it somewhere else, you need to dup2(2) it. < 1326031667 762560 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :kallisti, I don't think you can specify which fd you want open to use, but you could open and then move it with dup2 and then close the original one opened < 1326031677 439765 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :*dup2(3), apparently. < 1326031679 182821 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, I believe that is dup2(3) < 1326031681 561676 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :snap < 1326031682 354204 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Wait, no. < 1326031684 790492 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :dup2(2). < 1326031693 27577 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :At least "man 2 dup2" produces my glibc man page. < 1326031699 133244 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, man 3p dup2 too < 1326031700 241990 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :man 3 dup2 produces the POSIX manpage. < 1326031703 16055 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Right. < 1326031703 916404 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :In 3P. < 1326031724 130801 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, I often wondered what the point of the 2/3 separation was < 1326031751 848734 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :right I'm asking... if you don't specifically assign 3, and the OS assigned a random file to fd 3, then.... 3>&1 would then do possibly weird unpredictable things, right? < 1326031754 304966 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :2 is system calls, 3 is libc functions? < 1326031772 521099 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :kallisti: If you do 3>&1, 3 is open by the time your program starts. < 1326031780 504610 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :kallisti: Therefore it won't be used by any files you open in the program. < 1326031786 247374 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :olsner, yes but there are some system calls that are also specified by either POSIX or C as libc functions. Shouldn't there be a man page in each then < 1326031789 379574 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :ah right it's dup'd from fd 1 < 1326031799 47446 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :olsner: Yes, although the system call man pages come from glibc, and document the glibc wrappers around them too. < 1326031801 469074 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :or fd 0 possibly? < 1326031809 785533 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, indeed < 1326031823 355352 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: Presumably the point is taht you can look in section 2 to find all the system primitives. < 1326031825 455418 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :If you say 3>&1, it's fd 1 which it dups into 3. That's what the "&1" part means. < 1326031825 613549 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :*that < 1326031830 18163 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Back when people actually cared about sections. < 1326031835 12611 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :Vorpal: for dup3 I do have two manpages < 1326031838 620620 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :|dup2 < 1326031842 701604 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :*dup2 < 1326031844 608378 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :Vorpal: I know the basics of C programming but that's the extent of it. I'm not too familiar with all the details. < 1326031848 825751 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Nowadays sections are just to disambiguate program/libc/system-doc. :p < 1326031850 479289 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :olsner, well one is the 3p copied-from-POSIX one < 1326031852 486945 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :at least for me < 1326031883 742891 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :fizzie: aaaah I see. < 1326031898 862949 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Vorpal: You can "specify" that open(2) uses fd n by doing "close(n); for (i = 0; i < n; i++) dup2(someotherfd, i); open(...);" (assuming here that someotherfd != n, and none of the calls fail). < 1326031916 177442 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, so we could basically drop everything except 1,3,3p,5 and 7? < 1326031920 303882 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :for some reason I thought things like 2>&1 reassigned fd 1 to 2, not the other way around. < 1326031928 716025 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, it isn't like section 8 for example is very well defined < 1326031953 522438 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :hm I guess section 4 is useful too but I can't ever remember using that < 1326031956 102062 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: Were I designing man today, I would drop the numeric sections. < 1326031961 243145 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :(I'm looking at man man atm) < 1326031964 34321 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :"man coreutils/ls", "man libc/wtf". < 1326031972 80104 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :"man foo" would just do */foo and prompt if it's ambiguous. < 1326031972 436319 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :well yes < 1326031982 223687 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :ACTION knows nothing about sections < 1326031984 863388 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :that is indeed a lot more sensible < 1326031989 26396 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :kallisti, try man man < 1326031990 611219 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :in fact sections seems like a terrible way to organize namespaces of things. < 1326031995 936844 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Perl and Tcl documentation coming up when I use man is really annoying, so proper segregation is needed rather than silly numeric sections. < 1326032006 668892 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :kallisti: Well, it does that if that's the way you want to think of it. I mean, it makes fd 2 point to the same thing fd 1 points to. < 1326032007 144426 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :Vorpal: I've seen them, but haven't taken the time to commit numbers to sections in memory. < 1326032007 300860 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kallisti: It originates because man pages were originally a printed manual. < 1326032012 544150 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Then they invented On-Line help. < 1326032012 700649 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, you can edit /etc/man.conf to set search order < 1326032020 270809 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, or /etc/mandb.conf on some systems < 1326032022 371656 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: It doesn't bother me that much. :p < 1326032033 636108 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :or even manpath.config on ubuntu < 1326032033 953993 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: But I'd call 7 "linux". < 1326032037 205657 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :And 2 "syscall". < 1326032049 993624 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Probably syscall/foo would just symlink to libc/foo. < 1326032053 228919 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, I'd call 2 "glibc-mostly" < 1326032064 393368 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Are there 2 manpages not from glibc? < 1326032068 44781 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I think I've seen some bare-bones ones. < 1326032093 290834 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, I seen a few from glibc saying that glibc doesn't provide a wrapper for it < 1326032101 720954 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :or maybe not from glibc hm < 1326032110 24544 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :ioctl_list(2) is probably not from glibc. < 1326032112 919896 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, man futex for example < 1326032146 265305 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :btw my manpath.config contains SECTION 1 n l 8 3 2 3posix 3pm 3perl 5 4 9 6 7 < 1326032162 538829 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :I believe I moved some stuff around. Might have been on a different system < 1326032166 528981 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: Well < 1326032168 231920 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :COLOPHON < 1326032168 549741 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric : This page is part of release 3.35 of the Linux man-pages project. A < 1326032168 706038 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric : description of the project, and information about reporting bugs, can be < 1326032168 706225 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric : found at http://man7.org/linux/man-pages/. < 1326032175 843481 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, so not glibc indeed < 1326032182 895842 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: That's the case for all glibc manpages, though. < 1326032190 590794 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :It's just that they describe glibc functions. < 1326032198 920899 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :So they're glibc man pages. < 1326032201 299983 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :hm < 1326032210 575198 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :indeed < 1326032215 95920 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: The funny thing is that a third party writes the documentation for glibc... < 1326032216 713876 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au QUIT :Quit: MSN: Patashu@hotmail.com , Gmail: Patashu0@gmail.com , AIM: Patashu0 , YIM: patashu2 , Skype: patashu0 . < 1326032221 694885 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Must be great fun keeping it in sync. < 1326032226 315291 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :heh < 1326032226 631996 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :At least libc's API doesn't change much. < 1326032240 30947 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :The Linux man-pages project < 1326032240 348552 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :The Linux man-pages project documents the Linux kernel and C library interfaces that are employed by user programs. It provides manual pages in the following sections: < 1326032240 504917 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :2: System calls, documenting the system calls provided by the Linux kernel. < 1326032240 505092 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :3: Library functions, documenting the functions provided by the standard C library (with particular focus on glibc, the GNU C library). < 1326032240 661266 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :4: Devices, which documents details of various devices, most of which reside in /dev. < 1326032242 529510 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :5: Files, which describes various file formats, and includes proc(5), which documents the /proc file system. < 1326032245 498878 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :7: Overviews, conventions, and miscellaneous. < 1326032247 600991 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :(Note that many of the man pages on a Linux system, especially those in sections other than 2 and 3, come from other packages.) < 1326032263 293387 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :hm < 1326032294 602481 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, it must be annoying when a new C or POSIX version is released and gets supported in glibc < 1326032309 742710 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Ubuntu has "manpages-dev" which includes sections 2 and 3 from that project, but also "glibc-doc" which installs at least some missing pthreads manpages, presumably generated from some glibc documentation. < 1326032334 874076 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: That's like 3 functions at the rate those two pieces of crap move. < 1326032336 778032 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :POSIX is updated more frequently than C too and it is larger. < 1326032341 530412 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Does glibc even bother to track POSIX these days? < 1326032353 887483 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, or the other way around you mean? ;P < 1326032357 535588 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :What did POSIX 2008 even add, anyway? < 1326032361 540752 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :I think it's unlikely that a new standard gets surprise-dropped and then surprise-implemented in one single chunk by libc < 1326032383 318118 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, mostly stuff from glibc iirc. Some stuff from other libcs too < 1326032386 14793 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :olsner: They should stop publishing drafts and annoucning things and whatnot. < 1326032388 797628 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Would be much more fun. < 1326032397 503227 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :"The GNU C library implements all of the functions specified in ISO/IEC 9945-1:1996, the POSIX System Application Program Interface, commonly referred to as POSIX.1." <- current glibc manual. < 1326032398 455659 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, I believe it was like 20-30 new functions though < 1326032402 35847 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :C99 -> twelve years pass -> "Surprise, motherfuckers! Here's C11!" < 1326032410 53764 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric ::D < 1326032433 899440 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, and MSVC is still on C89 < 1326032439 607646 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :"Also while we were at it, we made a NetHack 4 too." < 1326032441 364048 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :MSVC is also still in C89. < 1326032444 664652 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :that is like over 20 years old < 1326032446 608765 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Er. < 1326032448 34211 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :*89 < 1326032452 991517 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :KINDA RUINED MY JOKE THERE, C. < 1326032463 830278 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :hah < 1326032467 841779 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: In fact, it's over 22.9 years old. < 1326032471 887428 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :MSVC doesn't do any of the added stuff in C90? < 1326032476 363648 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, right < 1326032480 596006 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Well, if it was published in January. < 1326032483 527745 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Which it probably wasn't. < 1326032484 161995 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :iirc, commas at the end of enums was added in C90 < 1326032492 370783 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :olsner, err maybe < 1326032496 180753 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :olsner: But... but gcc says they're the same! < 1326032504 429839 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :GUYS DO YOU REMEMBER THAT TIME WE FOUND A PRINTED COPY OF C94 < 1326032511 478955 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :olsner, I'm surprised they differ though < 1326032516 586385 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, we did? < 1326032523 846714 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :C94, wth did that contain < 1326032524 2858 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :http://en.wikipedia.org/wiki/C_(programming_language) doesn't even mention C94. < 1326032524 479557 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :C94? < 1326032526 464388 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :I know it existed < 1326032532 656971 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :but I don't know what was new < 1326032534 242990 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: I think it was never officially standardised, or something? < 1326032542 828649 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :ah < 1326032544 412398 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :But it was a printed copy or PDF for like 30 quid. < 1326032549 632290 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :heh < 1326032550 899889 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I totally regret not buying it. < 1326032552 50195 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Souvenir. < 1326032560 795870 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :http://clc-wiki.net/wiki/C89 "Purchase Amendment 1 (upgrades the Standard to C94 aka C95) as an ISO publication from SAI Global or --" < 1326032577 873826 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :hmm, so C90 vs C89 has only the changes that ISO did while giving the ANSI standard an ISO number < 1326032589 537053 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :fizzie: I'm disappointed C99 didn't get sometimes referred to as C100. < 1326032613 464030 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :C00 the mysterious < 1326032623 31968 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :elliott: ANSI could've released a C100 that was essentially ISO C99 except with a different name. For symmetry. < 1326032630 131605 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, if C keeps going they are going to have to time it to unused years in future centuries < 1326032642 990556 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :and that only works for 100 versions < 1326032648 983206 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :after that they are screwed < 1326032656 611094 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: This is why you use Befunge numbering(tm). < 1326032664 412373 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :well yes < 1326032666 36496 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :AKA 19100 numbering. < 1326032700 879757 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :will C have died off by then < 1326032712 255968 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :monqy, hopefully yes, probably not < 1326032726 737525 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, I still think that timing releases is a far funnier solution :P < 1326032727 888265 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Vorpal: It's already a bit confusing at the point when the chronological order goes C90 C99 C11 C34 C82 C97 C05 C22 C76 after the 2176 version is out. < 1326032747 846480 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :fizzie, well yes < 1326032795 341094 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :fizzie, I would think there will be a C25 or so rather than C34 < 1326032810 95788 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :maybe < 1326032812 712128 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :heh, looks like C has/had a limit of 15 nested levels of compound statements < 1326032826 806887 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :olsner, heh? < 1326032830 896749 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :olsner: Noooooooooooooooooooooooooooooo < 1326032831 214965 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :probably it's just saying that compiler must support at least 15 levels, but anyway < 1326032844 261037 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :All of the limits are just "at least this" guarantees. < 1326032845 921836 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :maybe future C will use fruits instead of numbers < 1326032852 248210 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Also they've written in a really weird way. < 1326032859 652223 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :fizzie, are they? < 1326032864 229133 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :monqy: yes, then you'll need to support at least banana nested levels < 1326032886 291758 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :http://stackoverflow.com/questions/8520673/installing-postgresql-on-qnx-neutrino < 1326032889 842822 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Best. Question. Ever. < 1326032909 62323 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION realises that some people actually use QNX. < 1326032921 587297 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION prefers to pretend they're just fucking around. < 1326032921 904962 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Vorpal: "The implementation shall be able to translate and execute at least one program that contains at least one instance of every one of the following limits: [list of limits, like 127 nesting levels of blocks, 63 nesting levels of conditional inclusion, and so on]" < 1326032932 609063 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I've never quite "gotten" that "at least one program" rule. < 1326032939 238586 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, is it better or worse than people using vxworks? < 1326032954 197054 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :fizzie, heh < 1326032985 152251 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :fizzie, so that means that in that one program you can possibly only use up to 15 nesting levels in one place in the program? < 1326032987 372440 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :or what < 1326033004 293380 :Taneb!~Taneb@host-2-99-87-159.as13285.net QUIT :Quit: Goodbye < 1326033043 477772 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Vorpal: If I read it right, it's enough if the compiler translates, say "int ************a; [instances of all other limits];" but not "int ************b; [instances of all other limits];". < 1326033057 101198 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I mean, it did translate at least one program that contained at least one instance of every one of the limits. < 1326033065 788895 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :fizzie, well there is that too < 1326033072 540783 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :(12 pointer declarators is one of the limits.) < 1326033083 126509 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :fizzie, but it doesn't even have to support int ************a; int ************b; in the same program < 1326033087 45322 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :which is just silly < 1326033091 972565 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric : Vorpal: "The implementation shall be able to translate and execute at least one program that contains at least one instance of every one of the following limits: [list of limits, like 127 nesting levels of blocks, 63 nesting levels of conditional inclusion, and so on]" < 1326033097 833035 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :At *least* one? < 1326033106 896492 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Is there only one such conforming C program? < 1326033108 5477 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I don't know if it's any sillier than just not supporting int ************b at all. < 1326033116 896252 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, that is what we are discussing < 1326033125 982278 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :fizzie, is that from C99 or C11? < 1326033126 138520 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :elliott: It's also implementation-dependant which one it is. < 1326033134 497491 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Vorpal: C99, but IIRC it's unchanged in C11. < 1326033135 331745 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :It seems like the standard already obligates the implementation to translate all conforming programs. < 1326033143 586978 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :So the limits are arguably null. < 1326033179 779723 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :what was the thing in perl you can use to run commands with options, but without opening up a whle shell? < 1326033191 207051 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, ah but afaik the definition of a conforming program is one that can be handled by such a conforming implementation < 1326033200 37826 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :was it the piped open? < 1326033201 704877 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :(given the limit description) < 1326033249 22703 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :kallisti: IIRC, system and the piped open have the same behaviour; if you give them a list, it's executed directly without a shell; if you give them a string with spaces in it, a shell is involved. < 1326033256 49259 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :kallisti, is that like pipe(), fork(), dup2() and exec() in C? If so, then yes < 1326033272 971426 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :(Just that 'system' of course doesn't capture any output, while a pipe-open does.) < 1326033277 78109 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :fizzie: ah okay good. < 1326033278 702837 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :(well execl or whatever) < 1326033279 654331 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: I... somewhat doubt it. < 1326033289 24121 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :That means "conforming implementation" is circular. < 1326033331 704581 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, no I mean that conforming implementation is defined by those limits (and various other things, like the grammar), and a conforming program is simply one that can be run by such an implementation < 1326033332 22416 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :"If there is only one scalar argument, the argument is checked for shell metacharacters, and if there are any, the entire argument is passed to the system's command shell for parsing (this is "/bin/sh -c" on Unix platforms, but varies on other platforms). If there are no shell metacharacters in the argument, it is split into words and passed directly to "execvp", which is more efficient." < 1326033354 699707 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Oh, so it was about metacharacters, not spaces, and it does space-splitting by itself. Well, anyway. < 1326033376 674431 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Providing a list will never execute a shell. < 1326033393 62584 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :so wait the list form can still create a shell? < 1326033401 639864 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :No. < 1326033403 677346 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :"If there is more than one argument in LIST, or if LIST is an array with more than one value, starts the program given by the first element of the list with arguments given by the rest of the list." < 1326033404 350708 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: I... don't think that makes much sense. < 1326033404 508875 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric : Providing a list will never execute a shell. < 1326033404 826755 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric : so wait the list form can still create a shell? < 1326033405 734101 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :lol < 1326033415 401320 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :oh < 1326033419 978584 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric ::) < 1326033430 338521 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, of course not < 1326033438 52865 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, but then, nor does gets()! < 1326033442 813594 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: That's gone now. < 1326033446 441522 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :They replaced it with a safe version. < 1326033451 358703 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, yes but only in C11 < 1326033456 13599 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I think it's hideously unfair; gets was awesome. < 1326033456 571597 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :which is absurdly long < 1326033467 255193 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I mean, can we have one easy-to-use, ridiculous function in C? < 1326033469 119022 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Just one? < 1326033476 459247 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :One function to remind you the language you're using is utterly terrible. < 1326033519 845798 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :"A conforming program is one that is acceptable to a conforming implementation. A conforming -- implementation shall accept any strictly conforming program. A strictly conforming program shall use only those features of the language and library specified in this International Standard -- and shall not exceed any minimum implementation limit." < 1326033531 135772 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :fizzie: oh but system doesn't give me the stdout < 1326033541 307139 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :I have to use open for that. < 1326033542 418124 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :I think. < 1326033568 879562 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :fizzie, wow < 1326033575 87742 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :kallisti: Well, right, but the '|-' and '-|' opens have the same behaviour. If I recall correctly. < 1326033580 299665 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :fizzie: That's amazing. < 1326033587 218139 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :fizzie: What... what does that even end up meaning. < 1326033608 142111 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :fizzie: Hmm. < 1326033615 729524 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :fizzie: That means that you can write a C compiler that accepts any string of bytse. < 1326033616 880866 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :bytes < 1326033623 722498 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, it means it is a C standard < 1326033630 805833 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :fizzie: As long as it correctly compiles every strictly conforming program, every string of bytes becomes a conforming C program. < 1326033639 647390 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Someone get on that? < 1326033665 786145 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, there is the minimum implementation limit thing too < 1326033682 838638 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, which is defined elsewhere by the spec (the "at least one" bit) < 1326033698 625515 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :That's just limiting the strictly conforming programs set further. < 1326033704 542347 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :What fizzie said. < 1326033706 240901 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :well yes < 1326033722 67445 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :You could troll comp.lang.c with this. < 1326033722 826127 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I would think you can, as an extension, accept any string and do whatever you want with the ones that are not strictly conforming. < 1326033730 609956 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, is that still alive? < 1326033730 768242 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :"I have a conforming C program that isn't working: int main(;;)qw;4{};/;{" < 1326033746 599321 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Comp.lang.c people quite often remember to put that "strictly" in, from what I've seen. < 1326033752 791913 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: Do Usenet groups ever "die"? < 1326033787 902662 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, well I haven't seen any message on alt.lang.intercal for almost a year by now < 1326033793 246979 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :or at least half a year < 1326033800 327463 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: Dude... < 1326033804 334872 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :That's INTERCAL. < 1326033809 457811 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Oh, I see. < 1326033814 623804 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: alt.lang.intercal always goes that slowly. < 1326033824 379274 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, fair enough < 1326033829 368134 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: It at least gets a post every April. < 1326033831 128072 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :what a sad group < 1326033836 213376 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :well okay < 1326033968 599669 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :fizzie: is there a way to get stderr with the list form of piped open? < 1326033997 79093 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :kallisti: IPC::Open3 might help. < 1326034160 642370 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :fizzie, what if you want to deal with more than 3 fds < 1326034182 673387 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :(what if you want to redirect any fd the program opens to go through your own program?) < 1326034185 132723 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :oh crap, capital c's all over the screen < 1326034200 182478 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Vorpal: I think there's a module for more general piping, but most programs don't expect to have more than 0, 1 and 2 open at start. < 1326034211 443515 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Vorpal: For "opens during the execution", I don't see how you can redirect those at all. < 1326034228 54487 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :fizzie, it is obviously easy to do so. Just use ptrace < 1326034236 380710 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Obviously nonportable, too. < 1326034241 158425 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :fizzie, or LD_PRELOAD probably < 1326034248 94364 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Won't catch syscalls. < 1326034250 195677 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :I didn't say portable < 1326034260 317358 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :fizzie, well indeed, most programs don't use them directly < 1326034266 940952 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :unless they are statically linked < 1326034270 229468 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :but ptrace would work < 1326034278 480957 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :itidus21: FSVO all, screen. < 1326034295 284409 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric : fizzie, it is obviously easy to do so. Just use ptrace < 1326034307 86295 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I don't think that works. < 1326034315 903207 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :You still can't force the program to dup2 without fucking about with its memory. < 1326034318 945821 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :i get scared when theres a language i could almost get away with coding in being discussed here < 1326034322 719778 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, that is easy as in "conceptually easy" not "easy to implement" < 1326034339 162314 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, anyway gdb manages to insert calls into a process if you write call foo < 1326034342 842644 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: Well, you could also write a kernel module or whatever. < 1326034346 758105 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, indeed < 1326034348 195302 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Yes, so does weboflies. < 1326034353 626160 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Someone on clc has also pointed out, that the particular "one program" containing "at least one instance of every one of" all the limits doesn't need to be "strictly conforming", and can in fact include any kind of syntax or constraint violations that the implementation allows as an extension, which makes the started translation limits slightly meaningless. You could limit block nesting to 1 for all strictly conforming programs, and when someone complai < 1326034353 783990 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :ned, just be all "well so sad, your program wasn't the one program". < 1326034354 933492 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Your suggestions are pretty stupid though. < 1326034359 467280 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, indeed < 1326034365 840191 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :fizzie: :D < 1326034377 205377 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :fizzie: Excellent use of bold. < 1326034404 339074 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :fizzie, :D < 1326034457 727435 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :fizzie: Actually... < 1326034464 593909 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :fizzie: "A conforming -- implementation shall accept any strictly conforming program. A strictly conforming program shall use only those features of the language and library specified in this International Standard -- and shall not exceed any minimum implementation limit." < 1326034488 431346 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :fizzie: So since implementations are required to accept any strictly conforming program, and a strictly conforming program can go up to the limits... < 1326034522 15259 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I suppose it's arguable whether "shall not exceed any minimum implementation limit" means any of the separately stated limits, or whether the "one program" clause is in fact the "limit" that could be exceeded. < 1326034527 963031 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, no it says they shouldn't exceed said limits. It doesn't say they aren't allowed to use less? < 1326034565 993723 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: What? < 1326034573 407016 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :oh hm, nvm < 1326034592 912438 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :The intent is anyhow reasonably clear, I've just wondered more than once about the strange-sounding "at least one program" clause. I'm sure there's some sort of a logic they've had when first drafting it. < 1326034594 660208 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :C sure is confusingly worded < 1326034635 340247 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :fizzie: They might have just wanted to avoid a scary universal quantification. :p < 1326034665 268182 :oerjan!oerjan@sprocket.nvg.ntnu.no QUIT :Quit: Later < 1326034666 943208 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :fizzie: They might have worded it weirdly to allow the implementation to apply stricter limits to conforming-but-not-strictly programs for whatever reasons? < 1326034668 846089 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :*reason? < 1326034707 739209 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Who *are* the C committee, anyway? Do they even have any writers of compilers that people actually use on there? < 1326034718 298780 :atrapado!~rdrp@95.169.240.36 JOIN :#esoteric < 1326034736 494630 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`words --canadian 9001 < 1326034744 751575 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :HackEgo: hi < 1326034746 533335 :HackEgo!foobar@codu.org PRIVMSG #esoteric :moniz ber bhoodcuting ceric ker rhization defore cunactyl cari underfee soutwaisec upgia trentation teneopeir nonper ramosometting comper nailty unblaco hydrati acci searabilic contment pyosing dric boarding lured reade bebloo rechny canic virasephosto subselte phenchar jacque simpresom comently posively noda wan tate cyan trian shagboard friskilli terimescoe posard spaapelblar camsie trallycephoto unfrable ophalpathone < 1326034749 613358 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, this was probably worded like that back in 1989 or so < 1326034774 911105 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, and no one bothered to change it < 1326034791 425533 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :so hm probably of compilers used back then? < 1326034826 194846 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: I was asking in general. < 1326034840 220202 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :good question < 1326034965 522134 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :It's the JTC1/SC22/WG14 working group; I'm not sure if their member list is anywhere; the wiki and the "WG internal information" are all password-protected and only for members. < 1326034973 207026 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :comp.std.c has some overlap, though. < 1326034986 621021 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :well that explains a lot < 1326034998 675068 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :fizzie: I don't like the idea of a public international standards committee nobody knows the membership of. < 1326035020 559980 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Oh, I'm sure it's somewhere, just can't find it right now. < 1326035025 87886 :Zuu!zuu@unaffiliated/zuu QUIT :Ping timeout: 252 seconds < 1326035043 460653 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :There have been programmers on it at some point, at least. < 1326035045 626191 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION has never looked at comp.std.c. Is it like comp.lang.c but /exclusively/ for pedantry? < 1326035104 275643 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :It's for speaking about the standard itself; "yes, yes, but I think the what the standard should do instead is *this*" sort of comments from comp.lang.c are sometimes referred to there. < 1326035109 407652 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :!perl $, = ' '; print "hi"; print "hello"; < 1326035110 42336 :EgoBot!foobar@codu.org PRIVMSG #esoteric :hihello < 1326035114 47395 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :!perl $, = ' '; print "hi",; print "hello"; < 1326035114 599405 :EgoBot!foobar@codu.org PRIVMSG #esoteric :hihello < 1326035116 812459 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :L( < 1326035117 289368 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I guess theoretically speaking you could speak there if you want to influence the standard. < 1326035126 96421 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :It probably won't do anything, but that's what it's for. < 1326035146 960341 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :fizzie: http://groups.google.com/group/comp.std.c/browse_thread/thread/d0fd9bfc89647b4a < 1326035153 597464 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :fizzie: Standard lawyers! THESE ARE MY PEOPLE. < 1326035341 432854 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :"It was established in the comp.lang.c discussion (which was too long to reproduce here) that int and long are not the same type." < 1326035350 480260 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`fetch http://sprunge.us/SERK < 1326035353 174722 :HackEgo!foobar@codu.org PRIVMSG #esoteric :2012-01-08 15:09:12 URL:http://sprunge.us/SERK [4539] -> "SERK" [1] < 1326035367 98827 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :reminds me of the ents determining after a few days that the hobbits are probably not orcs < 1326035369 162018 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run mv SERK bin/words.pl; chmod +x bin/words.pl < 1326035372 376789 :HackEgo!foobar@codu.org PRIVMSG #esoteric :No output. < 1326035379 241512 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`words --help < 1326035383 48686 :HackEgo!foobar@codu.org PRIVMSG #esoteric :Usage: words [-dhNo] [DATASETS...] [NUMBER_OF_WORDS] \ \ valid datasets: --eng-1M --eng-all --eng-fiction --eng-gb --eng-us --french --german --hebrew --russian --spanish --irish --german-medical --bulgarian --catalan --swedish --brazilian --canadian-english-insane --manx --italian --ogerman --portuguese --polish --gaelic --finnish --norwegian \ default: --eng-1M \ \ options: \ -h, --help this help text < 1326035390 21078 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :no bad < 1326035390 973290 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`ls < 1326035393 903865 :HackEgo!foobar@codu.org PRIVMSG #esoteric :Mineso \ X.pm \ Y.pm \ bin \ canary \ karma \ lib \ main \ min.sh \ paste \ quotes \ share \ typetest.hs \ wisdom < 1326035404 84209 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run rm X.pm Y.pm < 1326035406 939024 :HackEgo!foobar@codu.org PRIVMSG #esoteric :No output. < 1326035419 278910 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :oh < 1326035425 507130 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run mv bin/words.pl bin/words < 1326035428 221151 :HackEgo!foobar@codu.org PRIVMSG #esoteric :No output. < 1326035433 27651 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`words 50 < 1326035436 680398 :HackEgo!foobar@codu.org PRIVMSG #esoteric :Optional module Math::Random::MT::Perl not found. \ can't open Data/Eng1M: No such file or directory at /hackenv/bin/words line 104 < 1326035444 785835 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :`run rm Mineso typetest.sh main.sh < 1326035447 724136 :HackEgo!foobar@codu.org PRIVMSG #esoteric :rm: cannot remove `Mineso': Is a directory \ rm: cannot remove `typetest.sh': No such file or directory \ rm: cannot remove `main.sh': No such file or directory < 1326035462 15518 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :`run rm -r Mineso min.sh typetest.sh < 1326035465 159571 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :`run rm -r Mineso min.sh typetest.hs < 1326035465 316412 :HackEgo!foobar@codu.org PRIVMSG #esoteric :rm: cannot remove `typetest.sh': No such file or directory < 1326035466 429456 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :FUCK!!! < 1326035468 968754 :HackEgo!foobar@codu.org PRIVMSG #esoteric :No output. < 1326035472 933446 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :`ls < 1326035476 883899 :HackEgo!foobar@codu.org PRIVMSG #esoteric :bin \ canary \ karma \ lib \ main \ paste \ quotes \ share \ wisdom < 1326035524 411024 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run perl -pi -e 's#Data#share/WordData#' bin/words < 1326035527 897853 :HackEgo!foobar@codu.org PRIVMSG #esoteric :No output. < 1326035530 993246 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`words < 1326035534 984770 :HackEgo!foobar@codu.org PRIVMSG #esoteric :Optional module Math::Random::MT::Perl not found. \ can't open share/WordData/Eng1M: No such file or directory at /hackenv/bin/words line 104 < 1326035557 107004 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`ls share < 1326035560 199842 :HackEgo!foobar@codu.org PRIVMSG #esoteric :WordData \ awesome \ units.dat < 1326035576 807158 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`ls share/WordData < 1326035579 505852 :HackEgo!foobar@codu.org PRIVMSG #esoteric :Brazilian \ Bulgarian \ CanadianEnglishInsane \ Catalan \ Eng1M \ EngAll \ EngFiction \ EngGb \ EngUs \ Finnish \ French \ Gaelic \ German \ GermanMedical \ Hebrew \ Irish \ Italian \ Manx \ Norwegian \ Ogerman \ Polish \ Portuguese \ Russian \ Spanish \ Swedish < 1326035585 521989 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :>_> < 1326035588 324647 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :hackgeo shoiuld totally coloured output < 1326035608 422362 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :yes < 1326035621 272034 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Is hackgeo Sgeo's cousin? < 1326035623 754859 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :`ls --colour=yes < 1326035624 231897 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :I am great confused < 1326035626 909911 :HackEgo!foobar@codu.org PRIVMSG #esoteric :ls: unrecognized option '--colour=yes' \ Try `ls --help' for more information. < 1326035631 173438 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :eh < 1326035637 284863 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`words < 1326035640 830792 :HackEgo!foobar@codu.org PRIVMSG #esoteric :Optional module Math::Random::MT::Perl not found. \ can't open share/WordData/Eng1M: No such file or directory at /hackenv/bin/words line 104 < 1326035644 887266 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :`ls --color=yes < 1326035647 434604 :HackEgo!foobar@codu.org PRIVMSG #esoteric :​.[0m.[01;34mbin.[0m \ canary \ karma \ .[01;34mlib.[0m \ .[01;32mmain.[0m \ .[01;34mpaste.[0m \ quotes \ .[01;34mshare.[0m \ .[01;34mwisdom.[0m < 1326035649 904079 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :aww < 1326035652 163632 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :Gregor: I'm noticing a distinct lack of Math::Random::MT::Perl < 1326035668 939942 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Gregor: Don't install it. < 1326035689 89334 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :oh.. < 1326035701 541444 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric : Is hackgeo Sgeo's cousin? < 1326035701 858643 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :wat < 1326035709 529355 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric : hackgeo shoiuld totally coloured output < 1326035709 870315 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :elliott, typo < 1326035743 599295 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run perl -pi -e 's#^.*chdir.*$##' bin/words < 1326035746 533536 :HackEgo!foobar@codu.org PRIVMSG #esoteric :No output. < 1326035753 163827 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :I whshhould typo more ofrten maybe this will happen agaion < 1326035761 712388 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :[[ < 1326035762 28897 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :[...] < 1326035762 187366 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> As far as I know, variables of type "size_t" are guaranteed to be of < 1326035762 343488 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> sufficient precision to represent the size of any object. < 1326035762 343675 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :[...] < 1326035762 506044 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :The standard doesn't state that explicitly, and I argue that it < 1326035762 980998 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : : parse error on input `,' < 1326035763 139905 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : can't find file: L.hs < 1326035764 568451 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :doesn't imply it. < 1326035766 474333 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :It says that the sizeof operator yields a result of type size_t. < 1326035768 536508 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :It also says that the "*" operator applied to two operands of type < 1326035770 495120 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :int yields a result of type int; that doesn't imply that the result < 1326035772 597091 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :will always fit in an int. I suggest that the sizeof operator can < 1326035774 552845 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :overflow, and if it does, the behavior is undefined. < 1326035776 535123 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :]] < 1326035778 558704 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :fizzie: This is beautiful. < 1326035780 393880 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :monqy: hi < 1326035785 456775 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :elliott: hi < 1326035789 99385 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run perl -pi -e 's#^.*\bwarn\b$##' bin/words < 1326035792 194558 :HackEgo!foobar@codu.org PRIVMSG #esoteric :No output. < 1326035793 27522 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`words < 1326035797 775283 :HackEgo!foobar@codu.org PRIVMSG #esoteric :Optional module Math::Random::MT::Perl not found. \ wiektripuur < 1326035816 849798 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run perl -pi -e 's#^.*\bwarn\b.*$##' bin/words < 1326035820 409648 :HackEgo!foobar@codu.org PRIVMSG #esoteric :No output. < 1326035821 395020 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`words < 1326035826 950567 :HackEgo!foobar@codu.org PRIVMSG #esoteric :sulf < 1326035829 527305 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`words --help < 1326035833 142775 :HackEgo!foobar@codu.org PRIVMSG #esoteric :Usage: words [-dhNo] [DATASETS...] [NUMBER_OF_WORDS] \ \ options: \ -l, --list list valid datasets \ -d, --debug debugging output \ -N, --dont-normalize don't normalize frequencies when combining \ multiple Markov models; this has the effect \ of making larger datasets more influential \ -o, --target-offset change the target length < 1326035853 932452 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`words --list < 1326035857 548162 :HackEgo!foobar@codu.org PRIVMSG #esoteric :valid datasets: --eng-1M --eng-all --eng-fiction --eng-gb --eng-us --french --german --hebrew --russian --spanish --irish --german-medical --bulgarian --catalan --swedish --brazilian --canadian-english-insane --manx --italian --ogerman --portuguese --polish --gaelic --finnish --norwegian \ default: --eng-1M < 1326035901 729611 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :`words 900 -o 289347898974892734238947923742389423 < 1326035907 210941 :HackEgo!foobar@codu.org PRIVMSG #esoteric :Argument "900 -o 289347898974892734238947923742389423" isn't numeric in int at /hackenv/bin/words line 146. \ cog maki ashed flam deming hun guaj cili ponste alledit shapetick titum adiompl colonia hymanstastre occifield rib kuk ivell cogn wadhyal sine chillul nonidi mplaim < 1326035915 847320 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :oh I forgot the thing. < 1326035936 116780 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :...what was the thing again. < 1326035941 137418 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :ah yes < 1326036006 518289 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :sizeof overflow sounds < 1326036009 134945 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :beautiefulye < 1326036109 471113 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :elliott: interesting < 1326036112 865220 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :monqy: you're overdoing the typos a little :P < 1326036123 775881 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run perl -pi -e 's#GetOptions#@ARGV = split /\s+/, \$ARGV[0] if \@ARGV == 1;$&#' bin/words < 1326036127 144011 :HackEgo!foobar@codu.org PRIVMSG #esoteric :No output. < 1326036127 997533 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :i have trouble helping it < 1326036130 455998 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :fizzie: Could I convince you to op a single-purpose bot? < 1326036133 334212 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`words --eng-all 9001 < 1326036137 128488 :HackEgo!foobar@codu.org PRIVMSG #esoteric :syntax error at /hackenv/bin/words line 111, near "=" \ Execution of /hackenv/bin/words aborted due to compilation errors. < 1326036141 46541 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :uh oh < 1326036155 399197 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :turns out perl is not a valid substitute for a text editor. < 1326036195 732277 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :kallisti, just edit it locally and `fetch a new one? < 1326036213 495238 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :too easy. < 1326036242 146154 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kallisti: You're just inferior. < 1326036242 779875 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`fetch http://sprunge.us/KHIN < 1326036245 596552 :HackEgo!foobar@codu.org PRIVMSG #esoteric :2012-01-08 15:24:05 URL:http://sprunge.us/KHIN [4599] -> "KHIN" [1] < 1326036245 913288 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I fixed scripts with sed all the time. < 1326036270 916670 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run chmod +x KHIN; mv KHIN bin/words < 1326036274 483892 :HackEgo!foobar@codu.org PRIVMSG #esoteric :No output. < 1326036275 435024 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`words --eng-all 5000000 < 1326036278 866212 :HackEgo!foobar@codu.org PRIVMSG #esoteric :can't open share/WordData/EngAll: No such file or directory at /hackenv/bin/words line 104 < 1326036290 383104 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, wow, sizeof overflowing < 1326036297 821831 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, that is so absurd < 1326036302 266972 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`fetch http://sprunge.us/VHhP < 1326036304 333884 :HackEgo!foobar@codu.org PRIVMSG #esoteric :2012-01-08 15:25:03 URL:http://sprunge.us/VHhP [4600] -> "VHhP" [1] < 1326036317 139311 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run chmod +x VHhP; mv VHhP bin/words < 1326036320 363846 :HackEgo!foobar@codu.org PRIVMSG #esoteric :No output. < 1326036322 787497 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`words --eng-all 5000000 < 1326036326 361423 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :more like they forgot to put in the standard the bit about size_t always being big enough < 1326036329 476844 :HackEgo!foobar@codu.org PRIVMSG #esoteric :cartzwick refd cons quenfeasodcr lighlymb signing prol busina ccote oscoplai phistorialpa hegle out presen golo chowski oand gresset sageopak dpoudle metnbruku remati nei tist shropsych < 1326036337 727332 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :fizzie: HMPH < 1326036344 821652 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :(and/or all objects and types being small enough) < 1326036366 257167 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :shropsych < 1326036372 358152 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, hm does sizeof overflowing allow infinite memory? And does that make C TC then? < 1326036388 93437 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: I doubt it; \infty doesn't "overflow" to anything. < 1326036407 815984 :atrapado!~rdrp@95.169.240.36 PRIVMSG #esoteric :anyone wants to implement an interpreter for my language? < 1326036415 27127 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :is it a good language < 1326036417 404021 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :hmm, if size_t doesn't have to be unsigned, I think it could be arbitrary-precision < 1326036429 112432 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :atrapado: Wait, aren't you one of those people who were in here years ago? < 1326036436 669845 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, hm true < 1326036438 996383 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :or if sizeof(x) = 1 for all x < 1326036449 26011 :atrapado!~rdrp@95.169.240.36 PRIVMSG #esoteric :yes, i was < 1326036451 674445 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :olsner: no, CHAR_BIT is required of freestanding implementations < 1326036465 146585 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :atrapado, which language? < 1326036469 590060 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :atrapado: Naww, `pastelogs says 2007, I meant the REAL old days. But hi :P < 1326036481 349745 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION remembers your name for some reason. < 1326036491 83562 :atrapado!~rdrp@95.169.240.36 PRIVMSG #esoteric :i define a minimal turing complete language < 1326036493 344242 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :elliott: hmm, but didn't we conclude that this only affected unsigned types? < 1326036494 454310 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric : atrapado: Naww, `pastelogs says 2007, I meant the REAL old days. But hi :P <-- what? 2005? < 1326036504 693641 :atrapado!~rdrp@95.169.240.36 PRIVMSG #esoteric :i think tc < 1326036508 580726 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: 2002-2004. < 1326036512 231890 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, ah < 1326036512 430446 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :minimal? < 1326036532 38341 :atrapado!~rdrp@95.169.240.36 PRIVMSG #esoteric :only 3 or 4 elements < 1326036542 738225 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :olsner: I don't think so, I think we just didn't realise at the time. unsigned was another thing; sizeof still has to return the size. Although, hmm. < 1326036549 807567 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :I'm bad at making my programs simultaneously have data files and also being current-directory agnostic. < 1326036555 637227 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :olsner: I think we waxed philosophical about what sizeof's value actually meant. < 1326036565 316409 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I don't recall. < 1326036577 753849 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :kallisti, huh? < 1326036605 953540 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :kallisti, if you don't mind portability look at /proc/self/exe < 1326036629 402121 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :well, in Perl I use $0 < 1326036631 376084 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :kallisti, if you mind portability I suggest you have a configure script or such that hardcode the target paths into the program < 1326036633 319485 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: Have you heard of argv[0]. < 1326036642 241548 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :I think unsigned types need to wrap at 2^n, where n is possible related to sizeof and CHAR_BIT < 1326036643 827711 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, argv[0] has the issue that it might be anything < 1326036647 798228 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, at least in C < 1326036650 533824 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :but that signed types had no lower limit except that the max. *positive* value must be smaller than the max value of the corresponding unsigned type < 1326036651 10217 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, not sure about perl < 1326036658 139433 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: /proc/self/exe will also point to `which perl`, duh. < 1326036662 902768 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, hm true < 1326036673 193348 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :but... negative sizeof, hmm < 1326036682 401164 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :olsner: Right, but by having sizeof return something you're still declaring that it fits into that many chars. < 1326036698 45295 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :olsner: i.e. you can put it in a char array of that size and convert it back. < 1326036715 385693 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :olsner: And by defining CHAR_BIT you're declaring that that many bools can uniquely identify a character. < 1326036725 314703 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :So there's no real way around it, AFAICT. < 1326036755 756788 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :The only argument there is what CHAR_BIT really means, IMO. < 1326036830 815725 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :and sizeof still has a (constant) maximum value, because everything else has, so that's no solution to sizeof overflow anyway < 1326036861 598103 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :is it possible to allow structs and arrays to have sizeof 1? < 1326036886 871359 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :char n[2] can't fit into a char unless char is countably infinite. < 1326036893 259848 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Which it can't be, as we've established. < 1326036899 712057 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :So, no. < 1326036908 279337 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, I always found it amusing that even though the C standard allows lots of weird deathstation 9000 style systems it doesn't allow a ternary one < 1326036939 948664 :sebbu2!~sebbu@unaffiliated/sebbu NICK :sebbu < 1326036963 49711 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: Well, that's just perverse. < 1326036967 823222 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :elliott: because of CHAR_BIT? < 1326036969 610873 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Who the hell uses ternary? < 1326036971 753219 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :olsner: Yse. < 1326036972 584629 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Yes. < 1326036979 412223 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, a few systems have used that < 1326036984 166296 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :fizzie: What's the actual definition of CHAR_BIT? < 1326036985 633308 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: It was a joke. < 1326036990 755237 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, oh < 1326037050 23909 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Hey, the musl guy is on SO. < 1326037053 235268 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric : fizzie: What's the actual definition of CHAR_BIT? <-- are you using fizzie as a search engine of the C standard? < 1326037102 961336 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: Yes. < 1326037108 296307 :atrapado!~rdrp@95.169.240.36 PRIVMSG #esoteric :well, i will explain the language definion later, well 2 languages really < 1326037137 246772 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, he tends to be very good at such things < 1326037148 522940 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :atrapado, is it on the wiki? < 1326037153 279643 :atrapado!~rdrp@95.169.240.36 PRIVMSG #esoteric :no < 1326037159 583494 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :why not? < 1326037177 546600 :atrapado!~rdrp@95.169.240.36 PRIVMSG #esoteric :it is very simple < 1326037184 145392 :atrapado!~rdrp@95.169.240.36 PRIVMSG #esoteric :i can explain here < 1326037200 508889 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :well that won't be as each to find for people in the future < 1326037203 521396 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Lots of languages on the wiki are very simple < 1326037211 553271 :atrapado!~rdrp@95.169.240.36 PRIVMSG #esoteric :ok < 1326037232 438275 :atrapado!~rdrp@95.169.240.36 PRIVMSG #esoteric :i will consider the wiki < 1326037244 343701 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :atrapado, as long as it isn't yet another bf-clone (or bf-clone with minor variations) you should probably put it on the wiki < 1326037266 403376 :atrapado!~rdrp@95.169.240.36 PRIVMSG #esoteric :no it is not a clone < 1326037294 783062 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :atrapado, did you manage to break SHA256, then? < 1326037301 611289 :atrapado!~rdrp@95.169.240.36 PRIVMSG #esoteric :hehe < 1326037312 151128 :atrapado!~rdrp@95.169.240.36 PRIVMSG #esoteric :not even md5 < 1326037320 398855 :atrapado!~rdrp@95.169.240.36 PRIVMSG #esoteric :but i developed a model < 1326037349 366618 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :A model of what? < 1326037362 178404 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :MD5 was broken ages ago. < 1326037391 991692 :atrapado!~rdrp@95.169.240.36 PRIVMSG #esoteric :of md5 or other algorithm with logical and add operarions < 1326037450 551588 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :A 2009 attack by Tao Xie and Dengguo Feng breaks MD5 collision resistance in 220.96 time. This attack runs in a few seconds on a regular computer.[2] < 1326037450 747450 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :yikes, I didn't know it was that bad < 1326037462 792222 :atrapado!~rdrp@95.169.240.36 QUIT :Read error: Connection reset by peer < 1326037605 449739 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :Is that 2^20.96 time? < 1326037674 963871 :atrapado!~rdrp@95.169.240.66 JOIN :#esoteric < 1326037696 287970 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :elliott: "number of bits for smallest object that is not a bit-field". < 1326037718 217117 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :sorry, batery was low < 1326037820 472405 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :fizzie: What does "number of bits" even mean? :/ < 1326037821 423759 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :olsner: Yes. < 1326037920 527439 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :if we're lucky, we only need to care about "number of bits" as far as making the unsigned ints looking like n-bit numbers < 1326038623 438665 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :elliott: All values (discounting bitfields) "consist of n x CHAR_BIT bits, where n is the size of an object of that type, in bytes. The value may be copied into an object of type unsigned char [n]; the resulting set of bytes is called the /object representation/ of the value." < 1326038716 55860 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :And "objects of type unsigned char shall be represented using a pure binary notation.49) ... 49) A positional representation for integers that uses the binary digits 0 and 1, in which the values represented by successive bits are additive, begin with 1, and are multiplied by successive itnegral powers of 2, except perhaps the bit with the highest position." < 1326038732 185637 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :(Typos mine.) < 1326038787 30187 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :The 'n' for unsigned types is not related to sizeof, though, since (non-char) arithmetic types can have padding bits. < 1326038822 89364 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :damn, and objects need to be representable as a series of *unsigned* chars < 1326038843 574093 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :(Where the "n" was the [0 ... 2^n-1] value range for unsigned types.) < 1326038947 425942 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :hmm, *except perhaps the bit with the highest position.* - so the highest bit is allowed to be anything? < 1326038989 37260 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :That's just a footnote, and they are non-normative, IIRC. < 1326038998 744880 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :It's just defining "pure binary" there. < 1326039035 267900 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :pff, "pure binary" could mean anything! < 1326039037 90634 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :There's another place which explicitly defines what the value bits mean in unsigned integer types. < 1326039081 483612 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :"If there are N value bits, each bit shall represent a different power of 2 between 1 and 2^(N-1), so that objects of that type shall be capable of representing values from 0 to 2^N - 1 using a pure binary representation." < 1326039157 228130 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`which log < 1326039160 122407 :HackEgo!foobar@codu.org PRIVMSG #esoteric :​/hackenv/bin/log < 1326039161 440974 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Signed integers are otherwise identical, except there is (in addition to padding and value bits) a single sign bit, which will either have the value -(2^M), the value -(2^M-1), or the meaning that the corresponding value with sign bit 0 is negated. < 1326039180 54411 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :(In other words, two's-complement, one's-complement, or sign-magnitude.) < 1326039181 325147 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric : pff, "pure binary" could mean anything! <-- it basically means that on a ternary machine the it could only encode one bit per... um... trit? < 1326039201 178415 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :"Tit". < 1326039211 106160 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :I believe it is actually trit < 1326039225 454791 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :"Trit" is more common, sure. < 1326039248 953086 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :fizzie: argh, so C mandates binary representations? :( < 1326039274 854881 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :is that new from C99 though? maybe C90 is better < 1326039279 95686 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :olsner, I complained about that earlier today < 1326039287 380703 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :(the exclusion of ternary) < 1326039295 912188 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :C90 isn't (IIRC) any better when it comes to unsigned integers. < 1326039302 73306 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Signed integers are allowed more latitude. < 1326039330 347442 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :fizzie, anyway all modern systems uses two-complement for signed integers afaik < 1326039444 722606 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Anyway, it's all under the "as if" rule, so "physically" I'm sure you could run things on a ternary machine with, say, three bits packed into two trits -- or 9-bit quantities into 6-trit ones if that's natural for the machine -- and just make the bitwise operators work right. All objects have to be composed out of unsigned chars, though. < 1326039469 903974 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :9 is a perfectly suitable value for CHAR_BIT, after all. < 1326039494 445065 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Well, unless you want to be all POSIXy. < 1326039673 363559 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :check SumaMoito in the wiki for the languages i mentioned < 1326039717 265323 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :fizzie: but it does limit the range of signed integers to some fixed number of bits, which is the boring part < 1326039718 772059 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric : The 'n' for unsigned types is not related to sizeof, though, since (non-char) arithmetic types can have padding bits. < 1326039720 839721 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :fizzie: Ah. < 1326039729 296239 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :fizzie: Didn't we conclude that nothing stopped you packing data into those padding bits? < 1326039771 146070 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :fizzie: Incidentally, I had to cite the as-if rule a day or two ago! < 1326039779 410288 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I didn't realise people ever actually had to do that. < 1326039786 231803 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I feel like a real standards lawyer. < 1326039798 715907 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :elliott: I suppose, though the data is not guaranteed to survive through operations, or get copied by assignment, and "bad" padding bit values are allowed to generate trap representations. < 1326039831 577735 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :(E.g. one of the padding bits can be a hardware-mandated parity bit.) < 1326039865 648974 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :fizzie: Well, we don't care about portability guarantees. < 1326039892 827909 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :fizzie: We just care that it is possible to write a strictly conforming C program that can implement infinite-tape BF on a hypothetical conforming C implementation. < 1326039987 845529 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :"Aside from that, garbage collection is just plain slow. You can find hundreds of academics who like to claim otherwise, but that won't change the reality. The performance issues of GC can be broken down into 3 main categories: < 1326039988 3248 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Unpredictability < 1326039988 159199 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Cache pollution < 1326039988 159368 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Time spent walking all memory" < 1326039992 240027 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :pikhq: I don't like musl any more. :( < 1326040006 481983 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :"Reference counting is clean and elegant" I double don't like it! < 1326040043 567962 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :if only it were @ < 1326040046 665795 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :elliott: well if you just keep calling malloc(n) :D < 1326040061 415737 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :itidus21: No. < 1326040064 215354 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Pointers have a defined size. < 1326040068 654324 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :That size must be finite. < 1326040074 554407 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :oh i see < 1326040140 905099 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :well ain't that a bitch < 1326040173 476662 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :fizzie: So, theoretically you could have an unsigned integer whose value is in the padding bits? < 1326040198 566521 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Erm, signed. < 1326040199 858045 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Argh. < 1326040207 931262 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :fizzie: I've lost track of the argument. < 1326040213 516280 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :or in a single arbitrary-precision padding bit < 1326040260 507437 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :olsner: The padding bits are still bits that show up in the unsigned char[n] object representation. < 1326040286 573944 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :(What does an "arbitrary-precision bit" even mean?) < 1326040305 185882 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :something that's called a "bit" but has infinite data < 1326040316 314204 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :fizzie: Well, you can be really sure of the precision of your 0s and 1s. < 1326040319 658300 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :They're... crisp. < 1326040321 284522 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :High-fidelity. < 1326040323 502950 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :All thanks to Monster Cable. < 1326040335 568472 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :lol < 1326040342 313455 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :thanks monster cable < 1326040432 239260 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :olsner: In any case, no matter whether it's legal for the padding bits to be not quite "bits" (which I doubt), it's still explicit that the value (as seen by arithmetic operations and such, I mean) of the object is strictly defined by the value bits. < 1326040491 20638 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :the best way to store bits is as pebbles < 1326040621 199249 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :elliott, take a look at the wiki: SumaMoito < 1326040636 305890 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :"Based on the powerful editing component Scintilla, Notepad++ is written in C++ and uses pure Win32 API and STL which ensures a higher execution speed and smaller program size. By optimizing as many routines as possible without losing user friendliness, Notepad++ is trying to reduce the world carbon dioxide emissions. When using less CPU power, the PC can throttle down and reduce power consumption, resulting in a greener environment." < 1326040640 746710 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Worst. Marketing. Ever. < 1326040681 704109 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :atrapado: The only difference between Z1 and Z2 is the wraparound value? < 1326040700 190790 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :It just looks like brainfuck with variables instead of a tape and no IO to me. :p < 1326040711 568722 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :is the value that you get when decrement 0 < 1326040712 520662 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I don't think it's TC. < 1326040737 667787 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Because you always condition on the same variable in a loop. < 1326040739 935086 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :i am sure they are tc, mostly < 1326040746 169841 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Brainfuck with only balanced loops is not TC. < 1326040747 318290 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :So... < 1326040757 816549 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :atrapado: You can be as sure as you like, that doesn't change the theory. < 1326040766 866865 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :you can have many variables and loops < 1326040788 368595 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :i saw a proof some day < 1326040791 456240 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :atrapado: You can have many variables and loops in lots of sub-TC languages. < 1326040797 686919 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :for z2 < 1326040813 715295 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Okay. Show the proof? < 1326040817 720974 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :It might be erroneous, after all... < 1326040824 2314 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :is the true value of TC that TC means compatible with LC? < 1326040825 982650 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :in computer science grade < 1326040850 616401 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :atrapado: Err, you aren't the author of these languages? < 1326040856 271473 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :well show me a computation that can not be done < 1326040864 408009 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :and that LC means you can derive mathematical proofs by the code < 1326040866 481539 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :atrapado: Burden of proof... < 1326040882 897077 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :i am the author of 2 of these lsnguages < 1326040901 484208 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :atrapado: Here's a thing that can't be done: a BF->SumaMoito-Z1 compiler. < 1326040916 729687 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :As I said, the loop structure is too weak. < 1326040920 915349 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :no < 1326040921 73910 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :If you want to show it TC, show the compiler. < 1326040929 766509 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :and that esoteric programmers primary goal is to make programming useful for mathematical proofs < 1326040954 25530 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :atrapado: No what? < 1326040965 432681 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :i implemented a compiler for one of these languages < 1326040977 547015 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :A compiler from what to what? < 1326040977 865200 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :atrapado, you invented that crap? < 1326040981 135244 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :you can add sub div... < 1326040991 906079 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :rude... < 1326040998 659792 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :atrapado: The arithmetic isn't the problem. < 1326041000 961780 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :The control flow is. < 1326041007 243608 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :compiler from the language to c++ < 1326041013 354779 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :no < 1326041017 452484 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :nest them < 1326041022 969652 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Well, that doesn't prove anything; you can compile sub-TC languages to C++. < 1326041027 284988 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :atrapado: OK, let me put it this way. < 1326041031 615293 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :yes elliott < 1326041037 870351 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Brainfuck with only balanced loops is *proven* sub-Turing-complete. < 1326041050 805851 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :In brainfuck, you *have* to be able to vary the cell you condition on for it to be TC. < 1326041057 192162 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Your language is essentially BF with variables instead of cells. < 1326041060 645155 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric : >:-) < 1326041063 933570 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :But your loop structure is over a constant variable. < 1326041069 289238 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :You cannot change what you loop over in the loop itself. < 1326041075 98476 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :yes < 1326041075 415034 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Therefore, it is most likely sub-TC. < 1326041086 426059 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :it is hard but is possible < 1326041086 744007 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :By analogy with the fact that balanced brainfuck is sub-TC. < 1326041087 736766 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :elliott, you can swap two variables, can't you? < 1326041099 19264 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: Weell... < 1326041100 182875 :Ngevd!~Taneb@host-2-99-86-84.as13285.net JOIN :#esoteric < 1326041108 566712 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: I suppose so, with a third variable. < 1326041122 672048 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :Hello < 1326041122 828234 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: But a loop can only swap two fixed variables. < 1326041155 651098 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :atrapado: Oh well, if you're just going to continue asserting it's TC based on no evidence at all in the face of fair sketch arguments it's not, then reasoning with you about it is pointless < 1326041169 962185 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Hmm, it /seems/ like an MRM would be a worthwhile avenue. < 1326041186 9376 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :i am not mathematician < 1326041189 500270 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :SumaMoito-Z1 and -Z2 are, I think, Turing Complete < 1326041192 754786 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: MRM? < 1326041198 345944 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :atrapado: Nor am I, what's your point? < 1326041200 54968 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Minsky register machine? < 1326041201 860009 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :Isomorphic to a Minsky Machine < 1326041203 129470 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: Ah. < 1326041208 781406 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Ngevd: I don't think so. < 1326041212 370602 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :to show the proof < 1326041213 641994 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :It's the loop structure still. < 1326041217 234097 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :Well, not isomorphic, but < 1326041220 59740 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :atrapado: Proving it TC is trivial; you just have to write a compiler from a TC language to it. < 1326041223 867744 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :I'm not really sure how MRMs work, so I can't say. < 1326041230 346754 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :atrapado: For instance something very simple like boolfuck or as Phantom_Hoover said a Minsky machine. < 1326041278 803220 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :I think I could translate any Minsky Machine with n registers to a SumaMoito program with n+1 variables < 1326041289 229287 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :i did not see a computation that can not be done with the languages < 1326041312 461672 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :atrapado: Proof by lack of imagination is a common but invalid method :) < 1326041321 945107 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :yes i see < 1326041347 252426 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :How are Minsky Machines numerally notated? < 1326041397 308288 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :what happens in z2 if you decrement a zero variable < 1326041408 867765 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Hmm, OK, Minsky machines might work. < 1326041409 509257 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :elliott: it is fascinating that something which is sub-TC becomes impossible to implement a compiler for in something which is TC < 1326041414 1741 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :stays the same < 1326041415 271071 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :monqy, it stays 0 < 1326041419 280079 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :But I dunno. < 1326041423 567591 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :Ngevd: unimaginitive < 1326041423 726370 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :BCT looks implementable too. < 1326041424 519992 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :You need an "if". < 1326041430 137562 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I'm not convinced the "while" there can do an "if". < 1326041445 511247 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :yes it can do < 1326041454 124581 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :atrapado: Not necessarily in the way required. < 1326041456 824934 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :itidus21: what < 1326041459 144786 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :elliott, have a 3rd variable stuck at 0? < 1326041472 647508 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :i mean, is sumamoito not a form of computation? :D < 1326041477 834705 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :Wait, hang on < 1326041477 991049 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :what < 1326041479 739597 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :You can do < 1326041480 532128 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :temp = foo < 1326041483 944836 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :is it not? < 1326041486 801659 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :while (foo) { ...; foo = 0 } < 1326041487 990660 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :foo = temp < 1326041494 858660 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :But that means the whole thing _cannot_ change foo at all in any way < 1326041496 959753 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :hehehe < 1326041498 388426 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Hmm < 1326041499 189068 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :temp = foo < 1326041508 152597 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :while (foo) { ...; /* sets add */; foo = 0 } < 1326041508 984802 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :foo = temp < 1326041510 94304 :variable!root@freebsd/developer/variable NICK :consrt < 1326041511 268227 :consrt!root@freebsd/developer/variable NICK :const < 1326041519 67155 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :/* foo += add */ < 1326041520 654162 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :while (a) { a-; b+; code }; while (b) { code } seems like it'd work as an if-else. < 1326041522 297314 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :That could work if you can do addition. < 1326041527 585068 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :why can't a TC do sumamoito i wonder.. perhaps due to some limitation of the power of a TC < 1326041530 440036 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :well strictly speaking there is no = < 1326041536 352963 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :You can even restore a int the else loop. < 1326041537 171584 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :itidus21: what < 1326041538 203930 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :atrapado: It was pseudocode < 1326041541 691796 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :ok < 1326041555 424783 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :yeah.. TC is overhyped < 1326041556 376871 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: Erm, that only works if a is either 0 or 1. < 1326041562 86583 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Which is not the case with an MRM. < 1326041572 544830 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :itidus21: I think you misinterpreted something < 1326041576 873035 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :elliott, erm, right. < 1326041600 111872 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :monqy: probably < 1326041603 641130 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :yeah.. < 1326041613 199722 :Zuu!zuu@unaffiliated/zuu JOIN :#esoteric < 1326041621 885434 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :If you replace code with while (c) {code; c-} and then put c+ outside the loop? < 1326041632 164811 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :And set c to 1 beforehand. < 1326041634 456968 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :itidus21: it's not that you can't write a SumaMoito compiler in a TC language; it's that you can't compile from a TC language to SumaMoito, or so the claim goes < 1326041638 164233 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :itidus21: if that clears anything up < 1326041647 605850 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :ohhh < 1326041651 338969 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :yes that helps < 1326041659 132074 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric ::( < 1326041676 213528 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :my misinterpretation was more exciting < 1326041689 136264 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: b+; while (a) { whentrue; while (a) { a- }; b- } while (b) { whenfalse } < 1326041691 100441 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :itidus21, you want something like Gravity < 1326041694 641809 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :don't worry there's still plenty of fun stuff you can't do < 1326041696 951252 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: The problem is that, with an MRM, you have to test whether it's zero /without clobbering it/. < 1326041705 887066 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Which is impossible, because you only have a while loop on a fixed variable. < 1326041708 306360 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :So you have to copy it elsewhere. < 1326041713 805923 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :no < 1326041716 788494 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Yes; where's the problem with that/ < 1326041723 35985 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: Because the operation is to decrement it. < 1326041735 532466 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :while a a- b+ c+ ??? < 1326041761 193075 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :copy < 1326041766 109649 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :Ngevd: i do not quite enjoy not being educated in maths... it takes a lot of the fun out of esolangs < 1326041775 43781 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :itidus21, :P < 1326041781 195773 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: Okay, b+; while (a) { dec+; tmp+; while (a) { a- }; b- }; while (tmp) { a+; tmp- }; while (dec) { a-; dec- } while (b) { ... } < 1326041790 39368 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :That's "if a>0, decrement a, else ...". < 1326041827 417112 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :it also means not very fun to browse wiki pages about math(s) < 1326041847 219973 :augur!~augur@c-75-74-128-170.hsd1.fl.comcast.net QUIT :Ping timeout: 240 seconds < 1326041850 391906 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :every time i hit a mathematical notation it is like a toll gate < 1326041859 261238 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :tmp = 0, c=1; while (a) { a-; tmp+; while(c) {code; c-}}; while(c){c-}; c+; while (tmp) {tmp-; a+; while(c){code; c-}}; while(c){c-}; c+? < 1326041860 54880 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :itidus21: Ignorance is bliss, they say. < 1326041864 242568 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: There's no =. < 1326041872 834602 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :they do. and in my experience.. it has proven true < 1326041876 115638 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Anyway, I'm not sure what that is meant to do. < 1326041878 333040 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :elliott, that's shorthand for initialisation, duh. < 1326041884 415692 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :itidus21: It generally rings true for the ignorant, yes. < 1326041891 574807 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :can be emulated, the = < 1326041892 209173 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: What's your thing meant to do that mine doesn't? < 1326041899 23904 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :That's meant to be a straight if-then-else. < 1326041903 428064 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Ah. < 1326041980 239896 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: isfalse+; while (cond) { istrue+; tmp+; while (cond) { cond- }; isfalse- }; while (tmp) { cond+; tmp- }; while (istrue) { WHENTRUE; istrue- }; while (isfalse) { WHENFALSE; isfalse- } < 1326041984 88618 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :There's my if/then/else. < 1326041999 535968 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: Now the main problem is: you need a set of declarations for each variable you condition on. < 1326042004 889465 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :But I think it /might/ be enough to do an MRM. < 1326042026 682645 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :elliott, there are no limits for variable declaration though, so that's OK, isn't it? < 1326042036 452283 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: Well... this thing can't nest. < 1326042039 117786 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :no limits < 1326042039 434316 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :if you guys saw my initial budding efforts at language design in the past it might be vomit inducing < 1326042047 744454 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :If you put an if/then/else inside an if/then/else, the outer loop's state gets fucked up. < 1326042051 160273 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :hehehehe < 1326042058 869927 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: That's problematic, because there's no other way to do control flow other than nesting in this thing. < 1326042065 572525 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :So you need to find a way to "unroll" everything at the top level. < 1326042070 648919 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I don't think that's possible. < 1326042083 264470 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :can nest < 1326042089 490647 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :atrapado: I know they can nest. < 1326042096 556758 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Can't you just assign a unique set of variables to each if construct? < 1326042099 122054 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I understand the language. < 1326042105 66674 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :ok < 1326042106 772213 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: Well, yes. < 1326042134 943115 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :I know how to implement unsafeCoerce# in pure Haskell! let x = x in x < 1326042137 89898 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :^^joke < 1326042140 264527 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :^^joke < 1326042143 499056 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :aplause < 1326042155 981134 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :cheers echo far and wide < 1326042158 482073 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :for sgeos < 1326042158 997038 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :joke < 1326042162 596121 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: a++; b++; if (a>0) { a--; } else { ... }; if (b>0) { b--; } else { ... } is a TC MRM, right? < 1326042162 913974 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :If I didn't say joke, some of you would think I was being serious < 1326042168 764845 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: Where ... is part of the instruction. < 1326042170 909351 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Er, let me rephrase that. < 1326042172 495891 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :atrapado, what happens if you do something like "a; a+; a;"? < 1326042176 98743 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :INC_A = a++ < 1326042179 298665 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :INC_B = b++ < 1326042181 996192 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :elliott, you expect me to know a thing like that?? < 1326042187 250859 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :A{...} = if (a>) { a-- } else { ... } < 1326042189 312835 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :argh < 1326042190 144510 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :*>) < 1326042191 294909 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :*>0 < 1326042194 149415 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :well it should not compile, ngevd < 1326042196 568583 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :B{...} = if (b>0) { b-- } else { ... } < 1326042207 422146 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: Well, just confirm whether my understanding of what http://esoteric.voxelperfect.net/wiki/Minsky_machine says is correct. :p < 1326042208 144158 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :I think we have enough for all the normal arithmetic tools, though, so BCT looks achievable. < 1326042224 171562 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: I'm just not convinced that a structural nested thing like that is enough to accomplish a "state transition". < 1326042256 309320 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: Structured programming languages require powerful enough control structures to not be sub-TC, after all. < 1326042262 443101 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :goto is significantly more flexible. < 1326042285 318634 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I suspect the standard presentation of an MRM program involves labelled statements where the decrement jump location is taken as a goto. < 1326042288 716257 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :elliott, 'state transition' meaning 'switching to a different set of code', essentially? < 1326042296 264522 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: Wait, obviously what I said wasn't enough. < 1326042300 853570 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Because there's no looping. < 1326042306 806868 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :So yeah, Phantom_Hoover: Okay, b+; while (a) { dec+; tmp+; while (a) { a- }; b- }; while (tmp) { a+; tmp- }; while (dec) { a-; dec- } while (b) { ... } < 1326042313 103105 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :just isn't enough on its own to accomplish the control. < 1326042332 635247 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :is there anything preventing a real easy reduction to balanced-loops bf < 1326042354 80162 :augur!~augur@c-75-74-128-170.hsd1.fl.comcast.net JOIN :#esoteric < 1326042370 711431 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :monqy, balanced loops infinite cell size, no < 1326042377 276600 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Didn't this whole thing start because balanced-loops is sub-TC? < 1326042388 271720 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :hence the mention < 1326042391 842798 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :Only if the cells are finite in size < 1326042675 785023 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :if (a) {code}; -> while (a) { code; while (a) a-; } < 1326042695 246758 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :We passed that point a long, long time ago. < 1326042710 925420 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :ok just remembering < 1326042741 439995 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :That's not sufficient in itself, because you can't do an else. < 1326042754 985985 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :else is if not a < 1326042791 409408 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :but you zeroed a at the end??? < 1326042793 5361 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :How do you implement not? < 1326042799 598462 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :that too < 1326042800 592043 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :And what monqy said. < 1326042801 264779 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :copy it < 1326042816 840765 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Copy what? < 1326042822 315223 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :a to b < 1326042822 949322 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Oh, right. < 1326042832 392818 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :This is kind of moot, because we've demonstrated that if-then-else is possible; see above. < 1326042849 582824 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :another formulation < 1326042860 366942 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :monqy: I think it's easy, yes, because you always know how far away you are from another variable. < 1326042868 831221 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :But I'm not *quite* sure. < 1326042887 703760 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I'm erring on the side of the control flow being too weak. < 1326042981 814870 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :a=1 while (b) { a = 0 ; B- } this is not < 1326043048 268691 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :I'm erring on the side of it being strong enough: you're able to have normal nested while and if statements, AFAICT. < 1326043095 170616 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: I'm not sure that's enough. < 1326043104 406961 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Balanced BF has that. < 1326043124 430068 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I think you need some "dynamicity" in the control flow, like you get with goto, or being able to change the conditioned variable (unbalanced BF). < 1326043186 464840 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :You can keep a variable called "check" in the while and just swap the value of check around < 1326043186 941454 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :you can do logical and of two variables, and other connectives < 1326043189 323468 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :I'm really not sure of that. < 1326043194 443754 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :Never mind < 1326043200 395714 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: Sure of what? < 1326043236 743531 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :OK, so wait, can we assume that it's possible to implement the appropriate arithmetic functions to manipulate (appropriately-framed) bitstreams? < 1326043354 826315 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :So I can write a=take(s) to remove the first bit in a stream and put it in a, and put(b,s) to stick a bit onto the end of a stream without needing to specify the exact implementation of all the relevant arithmetic? < 1326043411 504020 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :with add sub mult and div and loops maybe? < 1326043436 833715 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Yes; I'm confident that what we have is enough for those. < 1326043440 525994 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric : OK, so wait, can we assume that it's possible to implement the appropriate arithmetic functions to manipulate (appropriately-framed) bitstreams? < 1326043443 267965 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: I'm sceptical. < 1326043461 672910 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: Well, *2 is easy enough. < 1326043470 836209 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :%2 as well. < 1326043477 297688 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I guess +1 is too. < 1326043487 439231 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :/2? < 1326043495 630485 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Well, let's try it? < 1326043503 9157 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: Can it be put(s,b) btw. < 1326043512 431776 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Yes, OK. < 1326043531 440145 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :put(s,0) = { s'; while (s) { s'+; s'+; s- }; while (s') { s+; s'- } } < 1326043539 450190 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :put(s,1) = { put(s,0); s+ } < 1326043557 319101 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: Also take(s,b) to put it in b. < 1326043570 772051 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :OK. < 1326043574 906067 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :http://esolangs.org/wiki/Brainfuck_algorithms#x_.3D_x_.2F_y < 1326043581 15765 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :while(b != zero) {b-;} while(a != zero){a-; a-; b+;} < 1326043581 809510 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Shhh. < 1326043605 160988 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :Are we still talking about SumaMoito? < 1326043605 636334 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: OK, divmod is quite tricky. < 1326043609 482092 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Ngevd: Yes. < 1326043612 812949 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :-Z1. < 1326043621 603925 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: It relies on overflow behaviour. < 1326043626 250320 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: Actually, we could just do div and mod separately. < 1326043640 346605 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: /2 is tricky. < 1326043647 380353 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :while (s) { s-; s-; d+ } doesn't work. < 1326043653 225502 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Actually, it works in -Z2. < 1326043663 342307 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :But isn't -Z1 the one we're considering? < 1326043665 760926 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :The code I wrote there is the turns b into the ceiling of a/2 < 1326043666 753802 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :It's the simplest. < 1326043679 707394 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :-Z2 < 1326043686 414717 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :-n < 1326043697 129533 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Proving one of them TC would be good enough for now, surely? < 1326043711 686529 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :Could we do %2 in -z1? < 1326043719 295972 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: Well, OK. < 1326043736 190232 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :while (s) { s-; s-; d+ } < 1326043738 812341 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :That's /2. < 1326043746 124838 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :%2 is harder. < 1326043753 156060 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Well, we don't need d, actually. < 1326043757 293151 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :while (s) { s-; s- } # obvious < 1326043759 674607 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Wait. < 1326043763 777515 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :No, we do need d. < 1326043777 496752 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :while (s) { s'+; s-; s- }; while (s') { s+; s'- } < 1326043785 496928 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :The problem now is getting the remainder. < 1326043789 35508 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Ah, wait! < 1326043798 559031 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :while (s) {s -; if(d){d-}{d+}} < 1326043805 160152 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :while (s) { s'+; s-; if (s) { r+ } else { s- } }; while (s') { s+; s'- } < 1326043810 327855 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Ngevd: Ah, yes. < 1326043819 655009 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :while (s) { s'+; s-; if (s) { s'-; r+ } else { s- } }; while (s') { s+; s'- } < 1326043831 263822 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: OK, rewrite that with your if-then-else. < 1326043890 104977 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :Ngevd, elliott, Phantom_Hoover, the Turing-Completeness people. < 1326043913 748185 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :elliott, do I have to? < 1326043922 466295 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Can't we just say it's possible and leave it at that? < 1326043927 910169 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Wait, no, it's... < 1326043937 939928 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :take(s,b) = { while (s) { s'+; s-; if (s) { s'- } else { b+; s- } }; while (s') { s+; s'- } } < 1326043938 775570 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Right? < 1326043944 53144 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :As in, the remainder is on the other branch. < 1326043978 463206 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: OK, let's assume it's possible. < 1326043982 4045 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Continue, sir. < 1326044107 152695 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :So, we have +1, *2, /2, %2 < 1326044136 740066 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric ::t break < 1326044137 532526 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :forall a. (a -> Bool) -> [a] -> ([a], [a]) < 1326044143 469288 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> break (== '=') "a=b=c" < 1326044144 284817 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : ("a","=b=c") < 1326044173 460712 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric :one difficult but possible thing is abs(A-B) in 3 langs < 1326044193 206295 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> braek (== '=') "a" < 1326044194 366553 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Not in scope: `braek' < 1326044197 668744 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> break (== '=') "a" < 1326044198 701005 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : ("a","") < 1326044296 641159 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric ::t lookup < 1326044297 445070 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :forall a b. (Eq a) => a -> [(a, b)] -> Maybe b < 1326044389 894931 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Right then. p = ; d = ; while (1) { b; take(p,b); put(p,b); if(b) { take(p,b'); put(p,b'); d' = d; take(d,r); if(r) { put(d,b') } else { d = d' } } else { take(d,b') } < 1326044560 517544 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: Does that handle the "cyclic" part? < 1326044591 51519 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :You mean the "program string cycles" part? < 1326044600 79671 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :He does < 1326044632 525084 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :If so, take(p,b); put(p,b); reappends instructions. < 1326044640 295255 :Ngevd!~Taneb@host-2-99-86-84.as13285.net QUIT :Quit: Goodbye < 1326044699 774631 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Right. < 1326044709 147059 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :OK, I guess it's TC then. < 1326044731 5440 :atrapado!~rdrp@95.169.240.66 PRIVMSG #esoteric ::) < 1326044846 229377 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :another language? today is a good day < 1326044854 572330 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: Better question: What's the minimum number of variables for it to be TC? < 1326044874 40888 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: I can't tell from yours because you don't define most of your damn variables. < 1326044892 931850 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :"Generic is a WIP language made by Tailcalled in a way that makes many concepts from Category Theory easy to define." < 1326044911 884603 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :6? < 1326044917 662368 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Oh dear. < 1326044962 975553 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Although your algorithms might have some extra implicit ones, and the ifs have their variables. < 1326045185 821866 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :ACTION almost forgot about scanl < 1326045187 625000 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric ::( < 1326045212 431041 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Never forget about scanl, it's always waiting to jump on you when you least expect it. < 1326045212 589983 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: So should I read Mac Lane. < 1326045237 270513 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric ::t replicateM < 1326045238 64753 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :forall (m :: * -> *) a. (Monad m) => Int -> m a -> m [a] < 1326045250 811955 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric ::t scanl < 1326045251 604623 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :forall a b. (a -> b -> a) -> a -> [b] -> [a] < 1326045256 969119 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> replicateM 3 "abc" < 1326045257 763506 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : ["aaa","aab","aac","aba","abb","abc","aca","acb","acc","baa","bab","bac","b... < 1326045286 666978 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :> replicateM_ 3 "abc" < 1326045287 302170 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : [(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),()... < 1326045300 120923 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :@src replicateM < 1326045300 279709 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :replicateM n x = sequence (replicate n x) < 1326045327 494628 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :@replicateM_ < 1326045327 811340 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Unknown command, try @list < 1326045334 108958 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :@src replicateM_ < 1326045334 267498 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :replicateM_ n x = sequence_ (replicate n x) < 1326045514 742857 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :@src sequence < 1326045514 901520 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :sequence [] = return [] < 1326045515 60707 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :sequence (x:xs) = do v <- x; vs <- sequence xs; return (v:vs) < 1326045515 219236 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :-- OR: sequence = foldr (liftM2 (:)) (return []) < 1326045654 891245 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric : Phantom_Hoover: So should I read Mac Lane. < 1326045680 583872 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Well, if you don't get put off by the examples being pretty obscure. < 1326045685 769537 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Obscure howso? < 1326045705 68002 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Maths. < 1326045736 327001 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :They're generally either topological, set-theoretical or group-theoretical. < 1326045749 68027 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: They should use practical examples instead, like counting change. < 1326045800 153325 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Well no, it's just that I get annoyed when I have to skip bits because I don't understand the category in question. < 1326045932 838300 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION knows ~0 topology and group theory, and very basic set theory, so he's clearly in the target market. < 1326045944 412403 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Well, OK, more than ~0 group theory. < 1326045981 863300 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Like, he defines and explains natural transformations in half a page, and then gives examples for the next two. < 1326046037 512751 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: How far in did you get? < 1326046060 375323 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :We should READ MAC LANE TOGETHER (N.B. this would be the most harrowing experience of your entire life). < 1326046060 534272 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Right now, '5. Monics, Epis and Zeros'. < 1326046108 355966 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: Those are monomorphisms and epimorphisms! I know this because Wikipedia says so. < 1326046110 463915 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :*Epics, presumably. < 1326046118 480323 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :What chapter is that in? < 1326046120 547530 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Nope, it says Epis here. < 1326046125 379257 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :It's not one of the chapters on http://en.wikipedia.org/wiki/Categories_for_the_Working_Mathematician, at least. < 1326046132 104555 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: Heh, a typo I guess. < 1326046144 548145 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :1. < 1326046146 175122 :Ngevd!~Taneb@host-2-99-86-84.as13285.net JOIN :#esoteric < 1326046164 486761 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :('Mon' is obviously a popular syllable in category theory.) < 1326046176 252100 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: EXCELLENT THERE IS STILL TIME TO READ MAC LANE TOGETHER (N.B. you would not only lose the will to live but lose everyone else's will to live too somehow.) < 1326046187 61625 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :Hello < 1326046198 586619 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :Where are we up to? < 1326046210 79033 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Ngevd: Oh god. < 1326046214 204704 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Chapter 1, section 5. < 1326046225 429183 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: *Chapter 0 section 0 < 1326046234 68481 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :we can have a mac lane party < 1326046239 741784 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :elliott, you didn't even read the Amazon preview?? < 1326046244 602131 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :monqy, friendship mac lane < 1326046249 959463 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: I read the first few pages? Wait, did you actually BUY it? < 1326046254 41670 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :hahahaha < 1326046254 835324 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :no < 1326046255 469120 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Oh, pyrated. < 1326046263 122980 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :I resent the implication. < 1326046271 605642 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :im not cool enough for pyracy < 1326046277 299898 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :OK maybe a Mac Lane party wouldn't be such a completely terrible idea? < 1326046279 132152 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Wait, no, that's a pyrite. < 1326046291 871288 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION says this because he has absolutely no chance of getting anything out of it solo. :p < 1326046305 896640 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :BUT only cool people are invited (cool people are Phantom_Hoover and elliott). < 1326046306 214744 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :We can all be objects and when we talk to each other they'll be morphisms < 1326046310 498011 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :i need peer pressure for the mac lanes to sink in < 1326046312 402855 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :(monqy is instead coole) < 1326046318 339472 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :corollary: we're all insane < 1326046335 369300 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Or Sgeo, I suppose. < 1326046349 202417 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Sgeo what. < 1326046355 359045 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :What is the wolrd coming to? < 1326046359 148631 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :we're all sgeo < 1326046372 548269 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :ALSO: overly fond of Chinese whispers. < 1326046380 366830 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: I have no idea what you are saying. < 1326046413 973779 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :elliott, obviously we all talk to ourselves, thus we're all really lonely and pathetic, thus Sgeo (sorry Sgeo). < 1326046419 843663 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: Ah. < 1326046428 969229 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Where does Chinese whispers come into it. < 1326046452 821597 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Also, if I talk to you and you talk to monqy, I must talk to monqy, so obviously we talk to each other with Chinese whispers. < 1326046471 756997 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :It doesn't make sense otherwise. < 1326046583 328448 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :I still don't know what's going on < 1326046600 19502 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Ngevd: death. < 1326046615 146289 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :Death, the concept, the event, or the personification? < 1326046624 269695 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Every. < 1326046635 203806 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Ngevd, death, the category. < 1326046653 441016 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :terribly sorrey but i've lost your will to live < 1326046657 26904 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :(You're an object, if you kill someone it's an arrow.) < 1326046666 70489 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :(Suicide is rife.) < 1326046668 134385 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :I'm just going to stare into my working ( :-] ) Haskell program < 1326046686 191631 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :whats a :-] < 1326046692 446487 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Robot smile. < 1326046700 915865 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :also: stare into?? < 1326046704 562419 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :Yes < 1326046710 979897 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :does it stare back into you < 1326046713 358186 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :No < 1326046718 673672 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :I'm not that good a programmer < 1326046738 160491 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :put an eye or two in the comments < 1326046741 639420 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :you can be stare friends < 1326046772 357272 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :There's a function called "isElementHaha" < 1326046814 726848 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :put a mouth or two in the comments < 1326046819 227198 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :you can be laugh friends < 1326046873 862877 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :Dammit, monqy, now I'm thinking about AI < 1326046877 290758 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :Also, dinnertime < 1326046878 599787 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :Bye < 1326046879 552985 :Ngevd!~Taneb@host-2-99-86-84.as13285.net QUIT :Quit: Goodbye < 1326047574 214618 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`logs (?:test) < 1326047577 423931 :HackEgo!foobar@codu.org PRIVMSG #esoteric :​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: logs: not found < 1326047578 929768 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`log (?:test) < 1326047586 482792 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :is this PCRE or....? < 1326047600 31286 :HackEgo!foobar@codu.org PRIVMSG #esoteric :2010-12-13.txt:22:15:12: Anyone fancy thrashing this guy at his own programming contest? http://skybuck.org/BoxifyMe < 1326047619 497944 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :ah yes < 1326047872 724262 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :no < 1326047874 416818 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :grep -P < 1326048223 40494 :oklopol!~oklopol@dyn58-57.yok.fi PRIVMSG #esoteric :weidest smiley ever < 1326048227 540037 :Ngevd!~Taneb@host-2-99-86-84.as13285.net JOIN :#esoteric < 1326048230 282945 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :Hello! < 1326048239 347759 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :http://hpaste.org/56263 < 1326048303 210176 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :"both :: (a->b) -> (a,a) -> (b,b) < 1326048303 408178 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :" < 1326048319 171942 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: What of it? < 1326048321 53367 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Wait, the whitespace there is fine. < 1326048333 371541 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Well, there should be a space around the (->). < 1326048343 666116 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :I think I have that thing where my sense of scale goes mad < 1326048348 745931 :Ngevd!~Taneb@host-2-99-86-84.as13285.net PRIVMSG #esoteric :Compiles fine < 1326048435 511406 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: wat < 1326048442 844613 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :I'm joking. < 1326048459 223018 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :I thought there were two spaces somewhere. < 1326048606 179151 :Gregor!foobar@codu.org PRIVMSG #esoteric :"kallisti: Sounds RSIish." <-- here is something sitting in my input buffer. I have no idea what it means. < 1326048686 61318 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Sounds rsish. < 1326048695 651402 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Gregor: Probably kallisti complaining about his fatigue? < 1326048699 629307 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Is fatigue the word. < 1326048734 23667 :oklopol!~oklopol@dyn58-57.yok.fi PRIVMSG #esoteric :http://skybuck.org/BoxifyMe/ why aren't books written like this < 1326048805 106555 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :good writing < 1326048818 281968 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Hey, I recall the BoxifyMe thing from comp.lang.c. < 1326048857 515050 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :elliott: no complaining about muscle cramps in hands. < 1326048862 208741 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :WebSplat time! < 1326048866 458440 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :Gregor: you suggested that it may be repetitive strain injury < 1326048873 45123 :Gregor!foobar@codu.org PRIVMSG #esoteric :Oh yeah < 1326048880 519084 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kallisti: That's what I meant. < 1326048892 52069 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I already told kallisti it's probably either the beginnings of RSI and carpal tunnel and to consult a doctor :P < 1326049176 43300 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :elliott: indeed < 1326049185 905949 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :elliott: what's a good example of a comparison on CReals that doesn't terminate? < 1326049223 914741 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :x == x < 1326049233 207818 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :The loss of Havenworks is one of the great tragedies of our time. < 1326049250 297031 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :What're CReals? < 1326049258 161167 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :> 2 == 2 :: CReal < 1326049258 957096 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Couldn't match expected type `Data.Number.CReal.CReal' < 1326049259 272537 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : against infe... < 1326049263 72793 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :> 2 == (2 :: CReal) < 1326049263 945142 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : True < 1326049265 652615 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: Computable reals. < 1326049273 3618 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kallisti: That CReal just compares the first 200 digits or so. < 1326049280 77743 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :It's evil. < 1326049285 82908 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :gross < 1326049290 768292 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> pi :: CReal < 1326049291 562922 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : 3.1415926535897932384626433832795028841972 < 1326049292 674856 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Same as show. < 1326049308 201570 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> (pi :: CReal) == (pi :: CReal) + (1/100000000000000) < 1326049309 155300 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : False < 1326049312 50505 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> (pi :: CReal) == (pi :: CReal) + (1/10000000000000000) < 1326049313 2679 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : False < 1326049315 210653 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> (pi :: CReal) == (pi :: CReal) + (1/10000000000000000000000000000000) < 1326049315 846929 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : False < 1326049320 810716 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Okay, maybe it's doing something fancier. < 1326049322 559848 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :But I don't know what. < 1326049327 339027 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :@src pi < 1326049327 655714 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Source not found. Just try something else. < 1326049327 815083 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: I think someone saved Havenworks. < 1326049339 825887 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: Class method. < 1326049340 819293 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :@src Floating < 1326049340 977508 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :class (Fractional a) => Floating a where < 1326049341 294552 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : pi :: a < 1326049341 450983 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : exp, log, sqrt, sin, cos, tan :: a -> a < 1326049341 451181 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : asin, acos, atan, sinh, cosh, tanh, asinh, acosh, atanh :: a -> a < 1326049341 451289 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : (**), logBase :: a -> a -> a < 1326049346 45025 :oklofok!~oklopol@dyn58-57.yok.fi JOIN :#esoteric < 1326049354 552573 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :elliott, I know, but I couldn't think of a better place to look. < 1326049376 123518 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: Ugh; the Wayback Machine won't show Havenworks because the robots.txt request times out. < 1326049376 281448 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :> (pi :: CReal) == (pi :: CReal) + ((1 :: CReal)/(10**400)) < 1326049377 273767 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : True < 1326049387 263 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :...despite the fact that http://havenworks.com/robots.txt loads... < 1326049410 482080 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :instance Eq CReal where < 1326049410 641972 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric : x == y = s' (digitsToBits digits) == 0 where (CR s') = x-y < 1326049421 532774 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :digitsToBits :: Int -> Int < 1326049421 691496 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :digitsToBits d = ceiling (fromIntegral d * (logBase 2.0 10.0 :: Double)) + 4 < 1326049434 300019 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :digits :: Int < 1326049434 457926 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :digits = 40 < 1326049435 755515 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :Havenworks... is that the site with Computer Stupidities? < 1326049448 574086 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :No, it's not. < 1326049453 693360 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :That's Rinkworks. < 1326049502 553280 :oklopol!~oklopol@dyn58-57.yok.fi QUIT :Ping timeout: 255 seconds < 1326049541 408079 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Disturbed that fizzie knows this. < 1326049583 380481 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :How is that disturbing? < 1326049595 556598 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :@hoogle var < 1326049595 900507 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Language.Haskell.TH.Syntax VarE :: Name -> Exp < 1326049596 68532 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Language.Haskell.TH VarE :: Name -> Exp < 1326049596 233556 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Language.Haskell.TH.Lib varE :: Name -> ExpQ < 1326049659 65086 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :It's an old(ish) site, I think. < 1326049670 309049 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I've used their Fantasy Name Generator for my Diablo II characters. :p < 1326050195 960626 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :why does Complex a require a to be a RealFloat in order for it to be considered a Num. < 1326050215 458745 :anders!anders@unaffiliated/anders JOIN :#esoteric < 1326050334 869729 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :`welcome anders < 1326050339 197432 :HackEgo!foobar@codu.org PRIVMSG #esoteric :anders: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: http://esolangs.org/wiki/Main_Page < 1326050429 530974 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :> sqrt 50 < 1326050430 483308 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : 7.0710678118654755 < 1326050432 626930 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :ah I see < 1326050436 560150 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :I forgot num includes abs < 1326050461 372035 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :which requires sqrt for complex numbers. < 1326050524 725103 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :> signum (2 :+ 2) < 1326050525 496690 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : 0.7071067811865475 :+ 0.7071067811865475 < 1326050527 996793 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Hokay. < 1326050539 148707 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :fizzie: It's sort of positive! < 1326050592 985354 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :elliott: It's sqrt(2) positive and sqrt(2) ordered; see, there's the positive/negative line of signitude, and the order/chaos line too. < 1326050618 673788 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :oh wait everything requires real number stuff < 1326050643 10185 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :multiplication and division uses cosine. < 1326050655 991663 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :and sine < 1326050722 145240 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Huh? (a+bi)*(c+di) = (ac-bd) + (bc+ad)i. < 1326051261 441581 :oklofok!~oklopol@dyn58-57.yok.fi PRIVMSG #esoteric :fizzie: kallisti is a polar bear so obvious he won't use that representation. < 1326051356 999088 :Zwaarddijk!miekko@infa.abo.fi NICK :Systemzwang < 1326051377 164528 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :oklofok: While I, being such a square, obvious do. < 1326051506 926075 :oklofok!~oklopol@dyn58-57.yok.fi PRIVMSG #esoteric :i guess you could say these are complex issues XDXDXD < 1326051632 572931 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :fizzie: polar form is just cartesian stuff with more trig. < 1326051636 877134 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :ACTION mathematician < 1326051655 692817 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :it's an abstraction over sine and cosine. < 1326051657 321083 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :so.. < 1326051660 48451 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :yeah < 1326051677 321250 :oklofok!~oklopol@dyn58-57.yok.fi PRIVMSG #esoteric :okay you win < 1326051691 841508 :oklofok!~oklopol@dyn58-57.yok.fi PRIVMSG #esoteric :fizzie: are you in turku, wanna have a beer? < 1326051741 322384 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I don't beer :( :/ :\ and I don't Turku either. :( :/ :\ < 1326051790 481796 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :The first is a big social problem; we had a "let's have everyone bring here a poster" event the other day, and it was merged with a beer tastery thing. < 1326051797 995239 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :I don't touch that Turku stuff. < 1326051799 835731 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Not being in Turku hasn't been a big problem so far. < 1326051817 545838 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`fetch http://sprunge.us/iKNC < 1326051820 718712 :HackEgo!foobar@codu.org PRIVMSG #esoteric :2012-01-08 19:43:40 URL:http://sprunge.us/iKNC [395] -> "iKNC" [1] < 1326051837 601201 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :fizzie, but what about all the friends you could have in Turku? < 1326051841 712480 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run ghc -O2 -o bin/searchlog iKNC < 1326051848 587971 :HackEgo!foobar@codu.org PRIVMSG #esoteric :target `iKNC' is not a module name or a source file < 1326051869 883742 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run mv iKNC searchlog.hs; ghc -O2 -o bin/searchlog searchlog.hs; chmod +x bin/searchlog < 1326051885 2782 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :>_> < 1326051886 430740 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kallisti: that thing is useless < 1326051889 8800 :HackEgo!foobar@codu.org PRIVMSG #esoteric :​[1 of 1] Compiling Main ( searchlog.hs, searchlog.o ) \ Linking bin/searchlog ... < 1326051895 490243 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :elliott: it is? < 1326051908 132600 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :well, it could be. I haven't tested it yet. < 1326051921 549740 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Also, it's broken. < 1326051939 661775 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :> permutations ["some", "words"] < 1326051943 113202 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : [["some","words"],["words","some"]] < 1326051955 149242 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :elliott: it is? < 1326051960 467342 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Yes. < 1326051963 212720 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :oh indeed. < 1326051966 321608 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :one sec < 1326052071 46945 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`fetch http://sprunge.us/REKU < 1326052073 624375 :HackEgo!foobar@codu.org PRIVMSG #esoteric :2012-01-08 19:47:53 URL:http://sprunge.us/REKU [441] -> "REKU" [1] < 1326052087 909905 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run mv REKU searchlog.hs; ghc -O2 -o bin/searchlog searchlog.hs; chmod +x bin/searchlog < 1326052092 672305 :HackEgo!foobar@codu.org PRIVMSG #esoteric :No output. < 1326052112 798493 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`searchlog elliott dicks < 1326052120 174629 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric ::0 < 1326052133 242079 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :elliott: how is it broken? I doubt we saw the same brokenness < 1326052145 602872 :HackEgo!foobar@codu.org PRIVMSG #esoteric :No output. < 1326052161 397294 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :oh I see... < 1326052179 792870 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :it also doesn't pipe stdout correctly < 1326052183 130817 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric ::t join . map words < 1326052183 963718 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :[String] -> [String] < 1326052191 803880 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric ::t concatMap words < 1326052192 478703 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :[String] -> [String] < 1326052207 707966 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Does looking fondly upon m4 make me a deviant? < 1326052218 47429 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :Phantom_Hoover: Only slightly. < 1326052218 418536 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kallisti: < 1326052222 70356 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :I don't know enough about m4 to answer < 1326052222 865201 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric : createProcess (proc "/hackenv/bin/log" [r]) < 1326052226 715182 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: I love m4. < 1326052234 725765 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :It's the best! < 1326052240 395264 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :elliott: yeah this is my first time using System.Process. < 1326052240 575387 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric :monqy: Autotools has M4 as one of the major implementation languages. < 1326052261 939849 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :I now know enough about m4 to answer < 1326052268 146680 :pikhq!~pikhq@71-219-205-39.clsp.qwest.net PRIVMSG #esoteric ::) < 1326052271 178941 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :ah wait proc uses Inherit < 1326052289 265530 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :so that should be fine. < 1326052297 189084 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :monqy, listen not to pikhq, he knows not the awesome of m4. < 1326052313 236918 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :I guess I'll < 1326052313 918569 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :learn < 1326052314 899730 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :m4 < 1326052327 570521 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :or < 1326052331 864675 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :stare at it a bit and get bored < 1326052336 770897 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`which log < 1326052340 205200 :HackEgo!foobar@codu.org PRIVMSG #esoteric :​/hackenv/bin/log < 1326052366 236785 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :elliott: I can't spot the wrongness. < 1326052368 762164 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: The best part about m4 is that it has a command to redefine the core lexical syntax. < 1326052375 654939 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kallisti: You spawn a process and immediately terminate. < 1326052386 858567 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :I remember a lot of that kind of thing. < 1326052388 699556 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :ah < 1326052413 982139 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: http://www.gnu.org/software/m4/manual/m4.html#Changeword < 1326052414 299019 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :ah wait I should be using... rawSystem I think? < 1326052423 29717 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kallisti: No. < 1326052425 929397 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :You should be waiting for the process < 1326052435 20300 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :does rawSystem not do that? I guess not. < 1326052440 99159 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I think it's deprecated. < 1326052442 161064 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :elliott, sure that's not just a GNU extension? < 1326052457 454106 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: I think it is, but who cares? < 1326052483 502846 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :elliott: sorry perl < 1326052494 637720 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :changequote is there by default, I think. < 1326052535 298940 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kallisti: What? < 1326052577 729756 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :a perl which is sorry < 1326052583 817348 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :a sorry perl < 1326052601 36260 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :elliott: well I guess perl would do the same thing if I specified that I want a process in the equivalent way... < 1326052611 768028 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :since they're... equivalent < 1326052637 576846 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :but that's not really meant. I meat that from programming in perl I expect things I shouldn't when doing things in other languages. basically. < 1326052641 656827 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :+what I < 1326052648 949774 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Just think of it like subprocess. < 1326052653 351315 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :yes < 1326052663 431455 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :there's no confusion on what it means. now. < 1326052683 332511 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :monqy will enjoy this: < 1326052687 329416 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`fetch http://sprunge.us/WBad < 1326052689 474335 :HackEgo!foobar@codu.org PRIVMSG #esoteric :2012-01-08 19:58:09 URL:http://sprunge.us/WBad [510] -> "WBad" [1] < 1326052703 196018 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :hi < 1326052706 452150 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :wbad < 1326052712 833451 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run mv WBad searchlog.hs; ghc -O2 -o bin/searchlog searchlog.hs; chmod +x bin/searchlog < 1326052727 128302 :HackEgo!foobar@codu.org PRIVMSG #esoteric :Linking bin/searchlog ... < 1326052728 596178 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :is it an omen < 1326052734 706417 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`searchlog elliott penis #hurr hurr < 1326052751 64557 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :`searchlog poop fart < 1326052760 154632 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :`searchlog `searchlog < 1326052762 622327 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :elliott: but is the regex building logic accurate? < 1326052767 229221 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :I think it is but I'm not sure. < 1326052767 703739 :HackEgo!foobar@codu.org PRIVMSG #esoteric :No output. < 1326052771 947670 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :oopse < 1326052777 518803 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :"congrates" < 1326052781 600893 :HackEgo!foobar@codu.org PRIVMSG #esoteric :2012-01-08.txt:19:59:20: `searchlog `searchlog < 1326052781 757232 :HackEgo!foobar@codu.org PRIVMSG #esoteric :2012-01-08.txt:19:59:11: `searchlog poop fart < 1326052782 553710 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :"wbad" < 1326052787 832413 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :oh no,,, < 1326052791 229945 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kallisti: maybe try not search for comment < 1326052794 959016 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :`searchlog poop fart butt < 1326052795 752719 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :indeed < 1326052800 864222 :olsner!~salparot@c83-252-161-133.bredband.comhem.se PRIVMSG #esoteric :`searchlog poop < 1326052803 85747 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :it got the order scrombled < 1326052814 359527 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :anyway you can use (...|...|...) for or, and then spaces provides and < 1326052815 352139 :HackEgo!foobar@codu.org PRIVMSG #esoteric :2012-01-08.txt:19:59:54: `searchlog poop fart butt < 1326052815 510992 :HackEgo!foobar@codu.org PRIVMSG #esoteric :2011-05-01.txt:20:58:53: poop CH < 1326052819 106239 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :assuming it works. < 1326052856 549007 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :`searchlog kallisti moron < 1326052863 994851 :HackEgo!foobar@codu.org PRIVMSG #esoteric :2011-12-17.txt:01:58:51: kallisti: concatMap is recursive, you moron < 1326052876 725182 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :elliott: see? totally useful. < 1326052882 83213 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Yes. < 1326052890 297260 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :`searchlog kallisti moron < 1326052897 558083 :HackEgo!foobar@codu.org PRIVMSG #esoteric :2012-01-08.txt:20:00:56: `searchlog kallisti moron < 1326052899 302556 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :I guess if you want actual spaces you can use \s instead < 1326052899 937475 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :this is exciting < 1326052903 226028 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :`searchlog CakeProphet moron < 1326052910 490476 :HackEgo!foobar@codu.org PRIVMSG #esoteric :2012-01-08.txt:20:01:43: `searchlog CakeProphet moron < 1326052919 774099 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :tool of the year < 1326052919 932260 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :monqy: yes so exciting < 1326052933 444620 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :`searchlog kallisti nominated tool of the year < 1326052937 983812 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :but uh, does it actually work correctly? < 1326052941 80799 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :this is the thing that I want to know. < 1326052963 88400 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`searchlog moron kallisti < 1326052966 660803 :HackEgo!foobar@codu.org PRIVMSG #esoteric :No output. < 1326052971 55138 :HackEgo!foobar@codu.org PRIVMSG #esoteric :2012-01-08.txt:20:00:56: `searchlog kallisti moron < 1326052975 66090 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :appears to. < 1326053038 529646 :Ngevd!~Taneb@host-2-99-86-84.as13285.net QUIT :Ping timeout: 276 seconds < 1326053048 588997 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :`searchlog a b c d e f g h i j k l m combinatiorial explosion? < 1326053054 259528 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :fizzie: nooooooooo < 1326053057 861133 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :`searchlog hi < 1326053074 404568 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :fizzie: so many permutations... < 1326053085 167741 :HackEgo!foobar@codu.org PRIVMSG #esoteric :No output. < 1326053087 827497 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :`searchlog ) < 1326053093 855823 :HackEgo!foobar@codu.org PRIVMSG #esoteric :grep: unmatched parentheses < 1326053094 529995 :HackEgo!foobar@codu.org PRIVMSG #esoteric :No output. < 1326053095 482489 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :monqy: noooooooo < 1326053107 632955 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :continue thinking of the terms as regexes. < 1326053113 307622 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :`searchlog ( < 1326053114 100877 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :because they are. < 1326053116 844118 :HackEgo!foobar@codu.org PRIVMSG #esoteric :grep: missing ) < 1326053127 500794 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :grep excitement < 1326053133 305041 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I gotteded a "killed" when I tried the explosion in private, I was hoping for that now too. :/ < 1326053145 658934 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :fizzie: *a b c d e f g h i j k l m n big-O notation < 1326053160 136715 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :> permutations . words $ "a b c d e f g h i j k l m combinatorial explosion?" < 1326053161 644204 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : [["a","b","c","d","e","f","g","h","i","j","k","l","m","combinatorial","expl... < 1326053172 391211 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :well that part was reasonably fast actually. < 1326053182 391835 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :... < 1326053186 401213 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :because you only evaluated the first element < 1326053191 366009 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :oh, yes. < 1326053203 498869 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :yes, Haskell. right. < 1326053204 608757 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :`searchlog thanks kallisti < 1326053223 307781 :HackEgo!foobar@codu.org PRIVMSG #esoteric :2011-12-15.txt:18:36:22: thanks to emacs. < 1326053230 900268 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :elliott: is this another +1 towards "kallisti's bad algorithms" < 1326053233 988351 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :tool of the yesteryear < 1326053256 526202 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :you could write a book < 1326053262 599390 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :`searchlogs thallisti < 1326053266 171740 :HackEgo!foobar@codu.org PRIVMSG #esoteric :​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: searchlogs: not found < 1326053282 763788 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :> length . permutations . words $ "a b c d e f g h i j k l m combinatorial explosion?" < 1326053286 451813 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : mueval-core: Time limit exceeded < 1326053290 302501 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Bah, it's just 1307674368000 permutations. < 1326053299 874738 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :That's one big quitter-bot. < 1326053317 442121 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :`searchlogs core mueval exceeded limit time < 1326053320 460753 :HackEgo!foobar@codu.org PRIVMSG #esoteric :​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: searchlogs: not found < 1326053355 915463 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :hmmm I wonder if it would be faster if I switched out the "|" and ".*" < 1326053408 502339 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :who will write the wrapper over searchlog < 1326053415 91615 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :and what will it do < 1326053419 929605 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :2012 mysteries < 1326053434 223149 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :monqy: ...I guess I could just use grep directly... < 1326053454 55374 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :but why do that? < 1326053456 745486 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :nih grep < 1326053458 953729 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :when there's already logs < 1326053520 8078 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :guys I bet this is the same algorithm Google uses. < 1326053546 100594 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :they should hire me so I can make the big $$$ < 1326053559 596249 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`fetch http://sprunge.us/EEVG < 1326053559 913272 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :grep (a.*b.*c)|(a.*c.*b)|(b.*a.*c)|(b.*c.*a)|(c.*a.*b)|(c.*b.*a) \approx grep a | grep b | grep c. < 1326053562 57512 :HackEgo!foobar@codu.org PRIVMSG #esoteric :2012-01-08 20:12:41 URL:http://sprunge.us/EEVG [510] -> "EEVG" [1] < 1326053599 686529 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run mv EEVG searchlog.hs; ghc -O2 -o bin/searchlog searchlog.hs; chmod +x bin/searchlog < 1326053607 914541 :HackEgo!foobar@codu.org PRIVMSG #esoteric :No output. < 1326053610 617472 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kallisti: By the way, searchlog always gets exactly one (1) log. < 1326053617 327356 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Oh, you map words it. < 1326053620 227843 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Why not concatMap words? < 1326053626 895245 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :elliott: lazy < 1326053629 593802 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :I already wrote it < 1326053632 134145 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :didn't consider using that < 1326053640 907282 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :now it's SET IN STONE < 1326053705 766566 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`searchlog mueval time limit < 1326053718 609217 :HackEgo!foobar@codu.org PRIVMSG #esoteric :2011-02-03.txt:08:07:29: mueval-core: Time limit exceeded < 1326053726 87010 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :elliott: what do you mean. < 1326053750 382354 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :What? < 1326053753 492682 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run paste `which log` < 1326053757 131365 :HackEgo!foobar@codu.org PRIVMSG #esoteric :http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.2434 < 1326053772 897411 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :elliott: why does it always get exactly one log. < 1326053773 54595 :oerjan!oerjan@sprocket.nvg.ntnu.no JOIN :#esoteric < 1326053818 721695 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :`Uh? < 1326053821 330191 :HackEgo!foobar@codu.org PRIVMSG #esoteric :​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: Uh?: not found < 1326053822 123167 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Because that's how it works. < 1326053832 240205 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I don't know what you mean. < 1326053836 864838 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :`? Uh? < 1326053839 350071 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :oh, you mean like that. why is that important? that's obvious. < 1326053840 621405 :HackEgo!foobar@codu.org PRIVMSG #esoteric :Uh?? ¯\(°_o)/¯ < 1326053875 768974 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kallisti: I don't understand what you mean. < 1326053895 250686 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :oh you neverminded that. < 1326053901 166942 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :I promise I actually read this channel < 1326053908 915060 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :(with psychic powers) < 1326053914 713418 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :maybe my psychic is a little rusty. < 1326053925 231011 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :`? ¯\(o_°)/¯ < 1326053928 486104 :HackEgo!foobar@codu.org PRIVMSG #esoteric :​¯\(o_°)/¯? ¯\(°_o)/¯ < 1326053930 329394 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :psychic grammar is all weird with quantum < 1326054012 691474 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :elliott: at first I thought you meant what you actually meant. Then I thought you meant the obvious statement that searchlog grabs one log entry, just as log was. Then I read the nevermind and it all made sense. < 1326054025 474578 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :you cannot observe the subject and object simultaneously < 1326054053 126961 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Oh. < 1326054055 69346 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric : kallisti: By the way, searchlog always gets exactly one (1) log. < 1326054057 491717 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :s/log/search term/ < 1326054068 991231 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :ah okay. < 1326054071 371927 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :yes. < 1326054082 220768 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :(but no, as past elliott discovers) < 1326054108 655759 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :`ls bin/searchlog < 1326054112 34866 :HackEgo!foobar@codu.org PRIVMSG #esoteric :bin/searchlog < 1326054118 148482 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :searchlog should parallel for the future. < 1326054121 103278 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :`cat bin/searchlog < 1326054123 364357 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :also it should make goofy words. < 1326054124 315688 :HackEgo!foobar@codu.org PRIVMSG #esoteric :​ELF... < 1326054126 854849 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :eek < 1326054131 415821 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :monqy: oh, parallel, that's a good idea actually. < 1326054136 435145 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :I think? < 1326054142 266225 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :maybe that's slower than doing one traversal? < 1326054142 583417 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Not at HackEgo speeds. < 1326054149 705552 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Also, not for IO-bound tasks, duh. < 1326054156 794390 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :oh, right. < 1326054157 745164 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :`cat bin/log < 1326054159 213632 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: cat searchlog.hs < 1326054160 325561 :HackEgo!foobar@codu.org PRIVMSG #esoteric :​#!/bin/sh \ cd /var/irclogs/_esoteric \ if [ "$1" ]; then \ grep -P -i -- "$1" ????-??-??.txt | shuf -n 1 \ else \ file=$(shuf -en 1 ????-??-??.txt) \ echo "$file:$(shuf -n 1 $file)" \ fi \ < 1326054165 766875 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :parallel io < 1326054169 985805 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :`cat searchlog.hs < 1326054172 220661 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :"double the fun" < 1326054173 355740 :HackEgo!foobar@codu.org PRIVMSG #esoteric :import System.Environment \ import System.Process \ import System.Exit \ import Control.Monad \ import Control.Applicative \ import Data.List \ \ main = do \ r <- buildRegex . permuteArgs <$> getArgs \ (_, _, _, h) <- createProcess (proc "/hackenv/bin/log" [r]) \ exitWith <$> waitForProcess h \ where \ permuteArgs = permutations . join . map words \ buildRegex = oBrackets . intercalate ".*" < 1326054242 950141 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :wait searchlog calls log? < 1326054248 397335 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :yes < 1326054263 667638 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :it builds a regex from the permutations of the search terms, and then passes that to log because I'm lazy. < 1326054264 301278 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :but who calls searchlog < 1326054268 760172 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :who watches... < 1326054269 921156 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :the searcmen < 1326054272 73240 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :searchmen < 1326054287 639233 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :elliott: shouldn't that be "who searches the searchmen"? < 1326054336 184677 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :searchlog efficiency of the year < 1326054342 504913 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`searchlog (elliott|Gregor) :P < 1326054354 363022 :HackEgo!foobar@codu.org PRIVMSG #esoteric :2011-08-16.txt:12:52:57: (Though not many. :p) < 1326054365 243432 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kallisti: dude it's < 1326054365 898385 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :dude < 1326054373 250203 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :if only I had the creativity to think of search terms, then I could do all the searches < 1326054375 353004 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :yes dude is dude. < 1326054378 395983 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :if you think it should be that then you are totally not getting this whole < 1326054378 873572 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :thing < 1326054389 522949 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :elliott: woah man. maybe you're right < 1326054392 261441 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :maybe I don't get the thing. < 1326054393 967690 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :what is the thing? < 1326054394 126657 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :`searchlog beeswax endomorphism excursion < 1326054404 346978 :HackEgo!foobar@codu.org PRIVMSG #esoteric :2012-01-08.txt:20:26:34: `searchlog beeswax endomorphism excursion < 1326054408 345752 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :`searchlog poop poop poop poop poop poop poop ... poop < 1326054418 538521 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :monqy: what would be a more efficient way to do that... aside from "manually" < 1326054426 522134 :HackEgo!foobar@codu.org PRIVMSG #esoteric :Killed < 1326054448 928263 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :slaves < 1326054482 704399 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :slaves with grep < 1326054499 148117 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :I'm pretty swapping the | and .* made it faster but I really have no way to know that without understanding how regex is compiled. < 1326054503 951187 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :*pretty sure < 1326054543 62288 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :(a|b|c).*(b|c|a).* ... seems... simpler to execute < 1326054557 648444 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :it would probably be faster if log didn't use -P < 1326054558 124179 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :uuh waht < 1326054577 21723 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :elliott: but then I wouldn't have perl regex < 1326054580 126779 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric ::( < 1326054650 895040 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :what's the point of building (a|b|c).*(b|c|a).* ... < 1326054687 734853 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :as opposed to? < 1326054722 364790 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :that would seem to give also results like a.*a.* ... ? < 1326054738 448701 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :((a|b|c).*)+, or even better (a|b|c).*, or even better, (a|b|c) < 1326054773 63250 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :maybe I'm not getting the magical perl regex magic < 1326054774 847322 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :i.e. no guarantee there is any b or c in it... < 1326054779 732065 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :what are those funky things < 1326054797 87428 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :yeah there's no guarantee and all of the permuatations are identical < 1326054799 552177 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :oerjan: oh right. < 1326054809 682048 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :etc etc < 1326054855 203394 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :monqy: the purpose is to do an and search instead of or search < 1326054869 226107 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :yes but it doesn't < 1326054872 778527 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :well you did it wrong :( < 1326054873 95170 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :yes < 1326054892 329819 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :yes with the swapped version < 1326054895 674055 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :the other one works correctly < 1326054931 550174 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`fetch http://sprunge.us/ZLCT < 1326054935 476937 :HackEgo!foobar@codu.org PRIVMSG #esoteric :2012-01-08 20:35:35 URL:http://sprunge.us/ZLCT [510] -> "ZLCT" [1] < 1326054941 432739 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :not as cool as wbad < 1326054951 831712 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`run mv ZLCT searchlog.hs; ghc -O2 -o bin/searchlog searchlog.hs; chmod +x bin/searchlog < 1326054960 724856 :HackEgo!foobar@codu.org PRIVMSG #esoteric :No output. < 1326054972 769676 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :I forgot the case where it could be a.*a.*a and such < 1326055046 684532 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :`searchlog useful again < 1326055069 135474 :HackEgo!foobar@codu.org PRIVMSG #esoteric :2008-03-29.txt:20:06:49: W ('television antenna') pops a vector off the stack, then a value. If the cell at that vector (plus the storage offset) in Funge-Space (a la g) is equal to that value, nothing happens. If the cell in space is less than the value, it pushes the value and the vector (inverted) back onto the stack, and backs up the IP (subtracts the IP's delta from it's position, sort of a 'wait to < 1326055083 957471 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :success < 1326055089 270820 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :does it say < 1326055089 905885 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :useful < 1326055110 687111 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :its a mystery < 1326055137 199439 :oerjan!oerjan@sprocket.nvg.ntnu.no TOPIC #esoteric :Official revolting channel of the inverse femtobarn stupid topic change CP violation, the original Trilogy: A new PHP | http://codu.org/logs/_esoteric/ < 1326055157 340114 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :I don't see a useful < 1326055166 200501 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :perhaps it gets cut off? < 1326055188 828685 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`searchlog mueval limit core < 1326055200 640047 :HackEgo!foobar@codu.org PRIVMSG #esoteric :2011-08-07.txt:06:40:12: mueval-core: Time limit exceeded < 1326055202 755403 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :i don't see an again either so i'll look and see what the rest was < 1326055217 704143 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: good topic < 1326055234 90720 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :try again' condition, useful mainly in Concurrent Funge.) If the cell in s < 1326055240 391477 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :has both again and useful!!! success!!! < 1326055252 184480 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION is currently 192.322581 times better than kallisti. < 1326055258 621809 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :elliott: thx < 1326055420 135575 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :elliott: what's the name for that style of C variable naming where you append file names and data structure names to things? < 1326055451 929097 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :what < 1326055460 985225 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :like.... < 1326055467 887380 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :CPython_PyObject_blah_blah < 1326055480 809705 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :basically making up for a lack of namespaces by hardcoded them into variable names. < 1326055509 38321 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :it has a name. < 1326055540 297251 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :Hungarian notation < 1326055545 741456 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :That's not it. < 1326055570 304293 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kallisti: that's not appending. < 1326055711 633102 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Hungarian notation is responsible for the hInstance lpClassName dwStyle -like Windows API parameter/structure-member names. < 1326055751 950343 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :oh < 1326055754 172655 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :nevermind < 1326055833 183853 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :fizzie: Systems Hungarian, rather. :p < 1326055844 655201 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Not that Apps is any better. < 1326055954 707555 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric : Forcing myself to use a fold on a tricky thing makes me understand it better, I think < 1326055957 847519 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Sgeo: Have you considered using a fold... ON FOLDS THEMSELVES? < 1326056016 662163 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: Can you implement foldr as a foldr??? < 1326056041 322147 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :foldr f z = foldr (\a r -> f a (r ())) (\() -> z) < 1326056053 428734 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: Whoa, man. That is, like, so meta. < 1326056057 685625 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Using a fold ON FOLDS THEMSELVES => http://www.mspaintadventures.com/?s=4&p=000944 < 1326056106 773881 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :fizzie: I don't get it. < 1326056116 102572 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Probably because it's that awful comic. < 1326056150 169385 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :It's not that awful comic, actually. < 1326056159 423460 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :It's the other awful comic. < 1326056174 328048 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION helpful. < 1326056181 410434 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :the other awful comic that isn't either of those other two awful comics < 1326056182 402265 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Oh. < 1326056189 225823 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :That's that awful comic, then? < 1326056189 382147 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :keep it straight < 1326056204 401476 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: No! It's the other awful comic. < 1326056210 445873 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :monqy: Dude, don't be, like, so intolerant, man. < 1326056214 458555 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: s/That's/What's/ < 1326056235 356690 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: The comic you're thinking of is the one at mspaintadventures.com, but the one fizzie linked is the one at mspaintadventures.com. < 1326056237 818486 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :how can i tolerate awful comics being other awful comics < 1326056242 271911 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :how is that tolerable < 1326056242 748236 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :how < 1326056266 702589 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :monqy: keep it straight < 1326056273 66025 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :nothing is tolerable, really < 1326056291 619574 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :elliott: did i oops a word < 1326056294 159128 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric ::( < 1326056301 348244 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :everyone oopsedes a word < 1326056301 985219 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :sometimes < 1326056309 121421 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :sorry to any awful webcomics i may have offended < 1326056310 712980 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: not true i'm sitting right here tolerating < 1326056311 863792 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :oerjan: 0 is well within the tolerances. < 1326056313 132935 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :its ok < 1326056313 654862 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :monqy: station v3 < 1326056318 99542 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :is it really < 1326056318 418757 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :ok < 1326056319 687681 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :for station v3 < 1326056322 751386 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :is anything really < 1326056323 108369 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :ok < 1326056324 734863 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :for station v3 < 1326056349 538852 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :elliott: aum < 1326056452 209569 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :a special shame set aside for station v3 < 1326056470 163373 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :station v3 shame < 1326056508 522973 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shame station v3 < 1326056803 625909 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :> fix$('0':).tail.(<**>[id,chr.xor 1.ord]) < 1326056805 337977 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : "01101001100101101001011001101001100101100110100101101001100101101001011001... < 1326056889 517219 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :I don't like how you can't tell what the Applicative combinators do from their types. < 1326056923 870922 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :@ty (<*>) < 1326056924 703104 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :forall (f :: * -> *) a b. (Applicative f) => f (a -> b) -> f a -> f b < 1326056925 572736 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :@ty (<**>) < 1326056926 29196 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :"Programmers are limited by the hardware. Computers work by repeating certain steps over and over again. They can only follow certain instructions. With the sheer randomness of crumpled paper, there really is no way to come up with an algorithm that accounts for every crease, nook, and cranny. You could painstakingly program something that would evaluate a single unique piece of paper, but there's no way to make a general method." < 1326056926 364180 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :forall (f :: * -> *) a b. (Applicative f) => f a -> f (a -> b) -> f b < 1326056928 902861 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :...most of them do their actions left to right, no? < 1326056936 63910 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :But is (<**>) = flip (<*>)? No! < 1326056940 207886 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: *all < 1326056948 427349 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Right, but so what? < 1326056957 135414 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, is this for OCR or something? < 1326056963 280190 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: Consistent rule and the rest is left up to types? Gosh, how awful. < 1326056965 698254 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, and it doesn't make any sense < 1326056966 652021 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Anyway, left-to-right is racist. < 1326056970 368388 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: no, it's about crumpled paper, and that's why i quoted it < 1326056984 685042 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, what does crumpled paper have to do with computers? < 1326057003 335913 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Vorpal: They (computers) can't get over it (crumpled paper). < 1326057012 316720 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Vorpal: Or so I read it. < 1326057014 898824 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :fizzie, ah okay. Right < 1326057029 22704 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :shachaf: no, racist is the pun i briefly considered responding to that with < 1326057030 94697 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :It's just that they can't. Want to break a computer? Crumpled paper. < 1326057068 1506 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :also, is there a shorter way to write chr.xor 1.ord < 1326057080 54501 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :erm... < 1326057083 109485 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :instance Num Char < 1326057083 744008 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :what are you doing :P < 1326057085 491406 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :xor 1 < 1326057088 903275 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :@ty xor < 1326057089 697028 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :forall a. (Bits a) => a -> a -> a < 1326057090 848165 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :I made a list (good = unsafeCoerce good : good) then regretted it < 1326057093 305533 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :s/Num/Bits/ < 1326057098 944454 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :monqy: that's < 1326057100 943383 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :what is that < 1326057104 345707 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :good < 1326057108 209165 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric ::t xor.chr < 1326057109 3663 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : No instance for (Bits Char) < 1326057109 164014 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : arising from a use of `xor' at :1:0-2 < 1326057109 321181 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Possible fix: add an instance declaration for (Bits Char) < 1326057126 174011 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Prelude Unsafe.Coerce> let good = unsafeCoerce good : good :: [[[[()]]]] < 1326057126 490563 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Prelude Unsafe.Coerce> take 10 good < 1326057126 647141 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :[[[[(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),() < 1326057126 647343 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :,(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),() < 1326057130 737477 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :,(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),() < 1326057131 690475 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :No, there's no such instance. < 1326057135 733889 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :,(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),() < 1326057140 854071 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :,(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(), < 1326057143 756612 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :monqy: good < 1326057145 858765 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: are you playing anagolf :P < 1326057146 334643 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: Maybe in another couple of lines we'll understand. < 1326057151 19465 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Why did you stop pasting?! < 1326057158 380075 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: Because I don't want you to understand. < 1326057190 8219 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric ::-( < 1326057205 289535 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :elliott: just golfing some frequent one-liners a bit differently < 1326057221 865843 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: I wrote over 10 paragraphs about monads without a single analogy! < 1326057224 442002 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Do I get a medal? < 1326057267 741340 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: I think you get kicked out of #haskell for life. < 1326057282 911997 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Which is even better than a medal, as far as quality-of-life goes. < 1326057293 789695 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :What were you writing about monads? < 1326057323 976089 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :> show<=[id,(1-)]) < 1326057325 564879 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : "01101001100101101001011001101001100101100110100101101001100101101001011001... < 1326057327 672838 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: http://stackoverflow.com/questions/8777216/how-do-you-identify-monadic-design-patterns < 1326057334 41911 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: The worst-titled question ever. < 1326057338 236192 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :oerjan: (range ((minBound :: Char),(maxBound :: Char)) !!) . xor 1 . index ((minBound :: Char),(maxBound :: Char)) OH WAIT you said *shorter*. < 1326057358 36061 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :You don't need those ::Chars. < 1326057362 840224 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :ACTION swats fizzie -----### < 1326057364 785425 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: That URL doesn't make me want to click on it. < 1326057367 682165 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :@src Ix < 1326057368 54 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :class (Ord a) => Ix a where < 1326057368 158960 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : range :: (a,a) -> [a] < 1326057368 315236 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : index :: (a,a) -> a -> Int < 1326057368 315335 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : inRange :: (a,a) -> a -> Bool < 1326057368 315380 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : rangeSize :: (a,a) -> Int < 1326057379 809507 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :fizzie: How does (range x !!) differ from index x. < 1326057384 658330 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: It's not that bad. < 1326057401 941322 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :it got shorter by using integers and show<=<, anyhow < 1326057418 512553 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: pretty < 1326057426 845301 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> show<=[id,(1-)]) < 1326057428 314237 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : "00101100110100101101001100101100110100110010110100101100110100101101001100... < 1326057436 395632 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :hmph < 1326057442 32466 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :What's this supposed to be? < 1326057444 525371 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :there must be some way to eliminate that... < 1326057459 766317 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :I would read the source that generates it but I don't feel like it. < 1326057466 522675 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Too long. < 1326057473 817959 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :shachaf: thue-morse sequence < 1326057485 849997 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: How about look-and-say? < 1326057507 672765 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :elliott: Isn't it the other way around? I mean, < 1326057508 350204 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :@ty ((range ('a','b') !!), index ('a','b')) < 1326057509 462068 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :(Int -> Char, Char -> Int) < 1326057514 420305 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Oh, that. < 1326057537 142745 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :fizzie: Oh, yes. < 1326057571 594711 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> group "112333" < 1326057572 586138 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : ["11","2","333"] < 1326057575 640111 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :elliott: i dabbled with that yesterday and didn't get satisfied < 1326057587 668820 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :@hoogle (a -> b) -> a -> (a,b) < 1326057588 144790 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Control.Monad.Writer.Class listens :: MonadWriter w m => (w -> b) -> m a -> m (a, b) < 1326057588 300946 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Control.Monad.Writer.Lazy listens :: MonadWriter w m => (w -> b) -> m a -> m (a, b) < 1326057588 301139 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Control.Monad.Writer.Strict listens :: MonadWriter w m => (w -> b) -> m a -> m (a, b) < 1326057593 267750 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric ::t groupBy < 1326057594 378840 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :forall a. (a -> a -> Bool) -> [a] -> [[a]] < 1326057598 432432 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> group "112333" < 1326057599 266050 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : ["11","2","333"] < 1326057606 417075 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> (length &&& head) group "112333" < 1326057607 368684 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Couldn't match expected type `t1 -> t' < 1326057607 528590 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : against inferred type `(GHC.... < 1326057608 4335 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> (length &&& head) $ group "112333" < 1326057608 798497 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : (3,"11") < 1326057613 486331 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :wtf < 1326057613 963617 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oh < 1326057617 691365 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> (length &&& head) <$> group "112333" < 1326057618 526021 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : [(2,'1'),(1,'2'),(3,'3')] < 1326057638 916759 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> (\xs -> show (length x) ++ head x) <$> group "112333" < 1326057639 707878 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Couldn't match expected type `[a]' < 1326057639 866850 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : against inferred type `SimpleRef... < 1326057644 187329 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> (\xs -> show (length x) ++ [head x]) <$> group "112333" < 1326057644 980360 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Couldn't match expected type `[a]' < 1326057645 138559 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : against inferred type `SimpleRef... < 1326057646 962931 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :wtf < 1326057647 439379 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oh < 1326057650 135765 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> (\x -> show (length x) ++ [head x]) <$> group "112333" < 1326057651 604406 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : ["21","12","33"] < 1326057670 536197 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> liftA2 (++) (show . length) head <$> group "112333" < 1326057671 376262 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Couldn't match expected type `[GHC.Types.Char]' < 1326057671 534899 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : against inferred ty... < 1326057681 8671 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> liftA2 (++) (show . length) (take 1) <$> group "112333" < 1326057682 370996 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : ["21","12","33"] < 1326057706 811380 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> concatMap((++)<$>show.length<*>take 1).group$"112333" < 1326057708 277848 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : "211233" < 1326057710 873741 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> join.map((++)<$>show.length<*>take 1).group$"112333" < 1326057712 458585 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : "211233" < 1326057724 86262 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> iterate$join.map((++)<$>show.length<*>take 1).group < 1326057725 38225 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Overlapping instances for GHC.Show.Show < 1326057725 196841 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : ([GHC.... < 1326057726 667261 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric ::t iterate$join.map((++)<$>show.length<*>take 1).group < 1326057727 462044 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :[Char] -> [[Char]] < 1326057737 452982 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> (iterate$join.map((++)<$>show.length<*>take 1).group)"1" < 1326057739 38359 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : ["1","11","21","1211","111221","312211","13112221","1113213211","3113121113... < 1326057747 754775 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> (join.iterate$join.map((++)<$>show.length<*>take 1).group)"1" < 1326057748 550048 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Couldn't match expected type `a -> a' against inferred type `[a]' < 1326057756 758255 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> join.(iterate$join.map((++)<$>show.length<*>take 1).group)"1" < 1326057757 417808 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Couldn't match expected type `[a]' < 1326057757 735876 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : against inferred type `GHC.Types... < 1326057758 726225 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> join.(iterate$join.map((++)<$>show.length<*>take 1).group)$"1" < 1326057761 464325 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : "11121121111122131221113112221111321321131131211131221132113111231131122111... < 1326057764 317434 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> join$(iterate$join.map((++)<$>show.length<*>take 1).group)"1" < 1326057766 101260 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : "11121121111122131221113112221111321321131131211131221132113111231131122111... < 1326057769 907099 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :> (>>=liftA2(++)(show.length)(take 1)).group$"112333" < 1326057770 902536 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: that's not bad imo < 1326057771 419865 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : "211233" < 1326057777 323051 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: oh, very good < 1326057782 793768 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :elliott: look-and-say isn't usually joined together like that < 1326057787 975503 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: well ok < 1326057799 315175 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> iterate(>>=((++)<$>show.length<*>take 1).group))"1" < 1326057800 149638 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : : parse error on input `)' < 1326057802 335196 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> iterate(>>=((++)<$>show.length<*>take 1).group)"1" < 1326057803 128661 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Couldn't match expected type `GHC.Types.Char' < 1326057803 289145 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : against inferred type... < 1326057809 712326 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: i think liftA2 is longer < 1326057821 485241 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Probably. < 1326057833 304198 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> iterate((>>=(++)<$>show.length<*>take 1).group)"1" < 1326057834 731927 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : ["1","11","21","1211","111221","312211","13112221","1113213211","3113121113... < 1326057851 135467 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> iterate((>>=(show.length)++(take 1)).group)"1" < 1326057852 669455 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : ["1","11","21","1211","111221","312211","13112221","1113213211","3113121113... < 1326057853 461366 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :> iterate(join.:lift[show.length,take 1]<= *) -> * -> *' against `?? -> ? -> *' < 1326057859 443512 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :oops < 1326057865 472132 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :what was it i did yesterday < 1326057869 265584 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> iterate((>>=show.length++take 1).group)"1" < 1326057870 738853 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : ["1","11","21","1211","111221","312211","13112221","1113213211","3113121113... < 1326057873 119009 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :awesome < 1326057895 996852 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :duh caleskell ++ < 1326057903 945286 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :right < 1326057916 447681 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :oerjan: I THINK YOU MEAN caleskell++ < 1326057921 39186 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :@karma+ caleskell < 1326057921 357058 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :caleskell's karma raised to 2. < 1326057931 142573 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> iterate(group>=>show.length++take 1)"1" < 1326057932 570692 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : ["1","11","21","1211","111221","312211","13112221","1113213211","3113121113... < 1326057937 434098 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :i think i win < 1326057948 194625 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :darn i was going to do that :P < 1326057979 922202 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: we found another use of (>=>) < 1326057997 369995 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: the nice part is that it's still easy to understand < 1326058007 694864 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :in fact it's even in the right order for reading naturally and all that < 1326058024 739672 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: More like a reason (>=>) shouldn't be in the stdlib. < 1326058040 198476 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :And by stdlib I mean stdlib.h. < 1326058077 976524 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric ::t (>=>) < 1326058078 929741 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :forall a (m :: * -> *) b c. (Monad m) => (a -> m b) -> (b -> m c) -> a -> m c < 1326058084 801396 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :hm < 1326058114 236346 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kleisli composition < 1326058176 313279 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, ah < 1326058217 10652 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :That helped? < 1326058235 465721 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: i conjecture that iterate(group>=>show.length++take 1)"1" is the shortest caleskell look and say prorgam :P < 1326058238 161127 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :prorgam < 1326058242 878989 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, somewhat, I have read about that before at some point. I did have to look up on wikipedia to refresh the details though < 1326058261 768889 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :"SumaMoito-Z2 has been proven Turing complete by simulation of Bitwise Cyclic Tag. The details required to construct the interpreter can be found in the log of #esoteric for 8 January, 2012." < 1326058262 600236 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :llo < 1326058263 138618 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :night → < 1326058263 377440 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :lol < 1326058270 432607 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: it's just < 1326058275 10309 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :(f >=> g) x = f x >>= g < 1326058322 615626 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com JOIN :#esoteric < 1326058358 181670 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, not sure why they would add a special name for that. It doesn't really save that much typing < 1326058379 769920 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: it has nice theoretical properties < 1326058385 5561 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :e.g. the monad laws are just < 1326058386 470888 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :And it makes the monad laws so much nicer. < 1326058389 406368 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :"return is identity for kleisli composition" < 1326058390 444283 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :and < 1326058394 458398 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: CURSES < 1326058394 617140 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :"kleisli composition is associative" < 1326058401 949512 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, ah < 1326058422 580022 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :and also it saves so much typing??? < 1326058427 419763 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric : > iterate(group>=>show.length++take 1)"1" < 1326058428 371237 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :so much < 1326058441 19973 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: what other nice sequences are there... < 1326058458 748506 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, damn those mathematicians. We shouldn't let them design computer languages. They make crazy things like haskell. Leave it to engineers instead, then you get sensible things like VHDL, ADA and C < 1326058480 429791 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :@quote kmc mathematicians < 1326058480 589225 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :kmc says: Haskell isn't really designed by mathematicians. it's designed by people who programmers would consider to be mathematicians and mathematicians would consider to be programmers < 1326058491 298154 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :heh < 1326058517 491321 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :1echo a < 1326058518 958210 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :`echo a < 1326058523 44201 :HackEgo!foobar@codu.org PRIVMSG #esoteric :a < 1326058530 245957 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :@remember `echo blah blah blah < 1326058530 404394 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Good to know. < 1326058533 618786 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :@quote `echo < 1326058534 153638 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :`echo says: blah blah blah < 1326058537 524993 :HackEgo!foobar@codu.org PRIVMSG #esoteric :says: blah blah blah < 1326058537 681008 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :as a pascal,basic,c,asm bred coder(not saying i know any of them well or that i can use them properly), i am highly interested in what i can learn from the mathematical programmers < 1326058547 361239 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :@forget `echo blah blah blah < 1326058547 519778 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Done. < 1326058555 956241 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :hence why i keep ramming against the berlin wall of programming < 1326058574 466667 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :i shouldn't beg for quotation in that way < 1326058621 253738 :Klisz!~Klisz@c-67-162-128-110.hsd1.co.comcast.net JOIN :#esoteric < 1326058789 460928 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION decides to encourage non-begging behaviour by doing nothing. < 1326058817 787947 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :O, so the people who designed Haskell are almost programmers and almost mathematicians. < 1326058822 272617 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :ive been analyzing myself a bit < 1326058827 850006 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :@hoogle (a -> a) -> a -> [a] < 1326058828 167582 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Prelude iterate :: (a -> a) -> a -> [a] < 1326058828 326249 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Data.List iterate :: (a -> a) -> a -> [a] < 1326058828 484682 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Data.Generics.Schemes everywhere :: (forall a. Data a => a -> a) -> (forall a. Data a => a -> a) < 1326058851 436340 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: did you really need to hoogle that < 1326058857 866510 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :no. < 1326058864 686823 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :its a bit like bush writing a heartfelt essay on why he was president for so many terms < 1326058866 115020 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: You should be in #haskell. < 1326058869 356221 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :i was hoping for some almost-hits < 1326058869 831505 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :It makes one happier. < 1326058876 600110 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :@hoogle+ < 1326058876 797797 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Data.Generics.Schemes everywhere' :: (forall a. Data a => a -> a) -> (forall a. Data a => a -> a) < 1326058876 963795 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Prelude until :: (a -> Bool) -> (a -> a) -> a -> a < 1326058877 120035 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Prelude map :: (a -> b) -> [a] -> [b] < 1326058891 500331 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :i was thinking of until < 1326058900 509483 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: I was going to remind you of until. < 1326058901 304592 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :but i doubt that helps < 1326058907 194323 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION would have made 600 SO rep today if not for that pesky rep cap. < 1326058912 191982 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: FSVO happier? < 1326058918 452632 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :itidus21: 2 is so many now? :P < 1326058929 874487 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :it is < 1326058940 405973 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: Just imagine talking to people who "just want to convert an Integer to a ByteString"! < 1326058945 530197 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :@hoogle+ < 1326058945 689088 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Data.List map :: (a -> b) -> [a] -> [b] < 1326058945 848308 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Control.OldException mapException :: (Exception -> Exception) -> a -> a < 1326058946 5453 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Prelude ($) :: (a -> b) -> a -> b < 1326058947 438570 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: unsafeCoerce < 1326058959 48449 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Funny, that's the first answer that was given. < 1326058972 640394 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Followed by pack . return . fromInteger. < 1326058973 314342 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, why are SO rep useful? < 1326058975 809348 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :elliott: in this i am reminded of an einstein quote about having hand on a hot stove versus sitting next to a pretty girl < 1326058988 485355 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Vorpal: They aren't useful. However, they are SO useful. < 1326058991 340577 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: Why is life useful? < 1326058998 848504 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Why is humanity useful? < 1326058999 324257 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, it isn't < 1326059003 762322 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Why is chocolate useful? < 1326059011 720782 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :not at all, we just pollute and such < 1326059014 932928 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :So to answer your question, SO rep is useful because it's delicious and made of cocoa beans. < 1326059021 82785 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :FSVO "just". < 1326059022 865710 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :You have to answer all these questions with other questions: useful in what way? < 1326059034 284605 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, also chocolate isn't useful either < 1326059040 965326 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :so rep is useful because it pollutes and such < 1326059042 158074 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :itidus21: Yeah, girls just can't compare to the magic of a stove. < 1326059044 371355 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :> fix.("1":).map$group>=>show.length++take 1 --just a bit too long < 1326059045 204567 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Couldn't match expected type `a -> a' < 1326059045 363585 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : against inferred type `[[GHC.... < 1326059051 894771 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :and wrong besides :P < 1326059067 273898 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric ::t fix.("1":).map < 1326059068 226540 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Couldn't match expected type `a -> a' < 1326059068 386363 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : against inferred type `[[Char]]' < 1326059068 542538 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : In the first argument of `(.)', namely `("1" :)' < 1326059068 542740 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :"who's been a naughty stove?" < 1326059080 830189 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: ooh what about my favourite sequence < 1326059082 997841 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :can stoves be naughty < 1326059088 547430 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric ::t fix.("1":).:map < 1326059089 22864 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: the self-avoidant sequence < 1326059089 340535 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :([Char] -> [Char]) -> [[Char]] < 1326059092 717852 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :*avoiding i think < 1326059094 345373 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: By the way, is it bad that my reaction to a lot of questions in #haskell is "step 1: Learn how to, you know, think"? < 1326059096 794867 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :> fix.("1":).:map$group>=>show.length++take 1 --just a bit too long < 1326059098 222785 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : ["1","11","21","1211","111221","312211","13112221","1113213211","3113121113... < 1326059101 992904 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :monqy: during certain erotic fantasy < 1326059103 192015 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :I think that would solve so many problems. < 1326059125 105425 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: where you build a markov model of increasing order of your own output so far < 1326059133 357659 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :and output the least likely next bit < 1326059139 913119 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :elliott: okay < 1326059140 236693 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, what the self-avoidant sequence? < 1326059143 483715 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: ^ < 1326059146 919194 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :ah < 1326059156 242271 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: it /sounds/ like it should have a conceptually simple definition, but the one I implemented just did the obvious (reconstruct a markov model each step)... < 1326059157 579240 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, that sounds interesting < 1326059169 896913 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: it basically produces random-looking output < 1326059175 293654 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :i don't know if it's "really" (pseudo)random < 1326059177 78079 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :I figured out the Proxy monad first in the digraph category not in Haskell, but look in the document for Proxy type and found they defined the monad there too. But then, there can be Coproxy comonad, data Coproxy x; and everything has to be made undefined but that is OK since there will be no input value so there can be no output value either (it should be an empty case block, but Haskell doesn't support that!) < 1326059183 742958 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :in the process i thought up a game based on hoarding. < 1326059188 243470 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, probably isn't. < 1326059207 502925 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: well you can consider it a reasonable mathematical /definition/ of a random sequence < 1326059208 493276 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, anyway wouldn't it end up cycling a lot? < 1326059220 538497 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :you walk around a single screen maze collecting randomly timed icons which unlock new randomly generated maze levels which can be played by a menu... < 1326059220 694616 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :at least, it's a definition of a sequence that you can't predict locally < 1326059223 293416 :atrapado!~rdrp@95.169.240.66 NICK :atrapad < 1326059226 310242 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :well, you can predict it < 1326059229 302896 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :but not with a markov model :) < 1326059231 568140 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: nope < 1326059237 915901 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :that's why you increase the order each step < 1326059238 712546 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :the idea is that you have more fun collecting the levels than actually playing them < 1326059240 18905 :atrapado!~insekt@95.169.240.66 JOIN :#esoteric < 1326059243 710446 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, ah < 1326059252 244611 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :itidus21: :D < 1326059256 884314 :atrapad!~rdrp@95.169.240.66 QUIT :Quit: Bye < 1326059265 268167 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION just assumes oerjan is working on that sequence. < 1326059271 952737 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :argumentum ad naivety < 1326059286 754561 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :5 minutes in the player says to himself, dear god what am i doing? < 1326059287 70922 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :elliott: NOPE < 1326059295 399853 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: :( < 1326059310 684248 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :zzo38: agda supports empty pattern-matching :) < 1326059321 848725 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: what about the paper-folding sequence < 1326059332 711826 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, which one is that? < 1326059370 386764 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :00:28:30 In the book "Real World Haskell", I found the the following declaration: instance NFData BS.ByteString where rnf _ = () ! In my opinion, rnf does nothing! I don't understand how the argument of rnf will be reduced to "normal form". Any idea? < 1326059376 578932 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: Hey, a reason to dislike RWH more! < 1326059383 616027 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: http://en.wikipedia.org/wiki/Regular_paperfolding_sequence < 1326059395 865503 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :elliott: Well, I am glad they fixed that! But still, they should also fix GHC to support empty case blocks < 1326059396 499455 :atrapado!~insekt@95.169.240.66 PRIVMSG #esoteric :please can someone review my proof of that SumaMoito-N is Turing-complete? http://esolangs.org/wiki/SumaMoito#Computational_class < 1326059422 416818 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: Obviously that excalamation mark is just moved over by 7 characters. < 1326059426 903478 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :EXCALAMATION! < 1326059445 761027 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, nice < 1326059446 435707 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Anyway, if it was 7 characters to the left it would make sense. < 1326059470 766149 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, I wonder if there is an irregular paperfolding sequence < 1326059502 756987 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :atrapado: It's correct, yes. < 1326059507 549132 :atrapado!~insekt@95.169.240.66 PRIVMSG #esoteric :oh, good < 1326059512 326357 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :N is a pretty trivial extension of Z2. < 1326059535 692858 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Are you sure the decrements are the same though? < 1326059541 985737 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I thought N made the value the same when underflowing. < 1326059545 317446 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Oh, Z2 does to. < 1326059546 110882 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :too. < 1326059559 777189 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Oh, it doesn't have decrement. < 1326059561 715934 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I didn't notice that :) < 1326059582 67568 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Yes, assuming the decrement function is right, it's correct. I think you can make it simpler though. < 1326059583 654685 :atrapado!~insekt@95.169.240.66 PRIVMSG #esoteric :i am not ocmpletely sure that it is correct, elliott < 1326059585 558907 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :atrapado, what about Z1? < 1326059592 59950 :atrapado!~insekt@95.169.240.66 PRIVMSG #esoteric :Z1... < 1326059596 77079 :atrapado!~insekt@95.169.240.66 PRIVMSG #esoteric :more complicated < 1326059599 90618 :atrapado!~insekt@95.169.240.66 PRIVMSG #esoteric :negative values < 1326059601 905976 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :I see < 1326059627 334134 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :atrapado, also that mapping from Z2 to N seems trivial < 1326059628 926758 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :atrapado: tmp1; out; tmp1+; while (tmp1 != in) { out+; tmp1+ } < 1326059634 436402 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :That decrements out into in. < 1326059635 228292 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :why are there even two languages? < 1326059636 339131 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Er. < 1326059638 6443 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :In into out. < 1326059640 307514 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :out = in - 1 < 1326059649 833940 :atrapado!~insekt@95.169.240.66 PRIVMSG #esoteric :and if it is 0 ? < 1326059664 198365 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :atrapado: Oh, it doesn't halt. But that's easy... < 1326059682 13811 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :atrapado: tmp1; out; tmp1+; while (in != out) { while (tmp1 != in) { out+; tmp1+ } } < 1326059697 105581 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric ::t zap < 1326059698 97297 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Not in scope: `zap' < 1326059700 991016 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric ::t zapp < 1326059701 983700 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Not in scope: `zapp' < 1326059706 97574 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :wat < 1326059725 727096 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :zap? < 1326059737 924188 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :just zipWith id < 1326059752 944776 :atrapado!~insekt@95.169.240.66 PRIVMSG #esoteric :i do not understand fully your algorithm, elliott , but do not doubt of its correcness.... < 1326059761 717657 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :oerjan, why would you call that zap? < 1326059764 575435 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :atrapado: Well, it's basically < 1326059768 340824 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric ::t zipWith id < 1326059769 452409 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :forall b c. [b -> c] -> [b] -> [c] < 1326059771 237604 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :atrapado: for (int i = 1; i < in; i++) out++ < 1326059780 959467 :yiyus!1242712427@je.je.je QUIT :Ping timeout: 248 seconds < 1326059784 168525 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :atrapado: Since i starts at 1, the loop executes (in-1) times, rather than in as it would if it started at 0. < 1326059786 483383 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :Vorpal: because it's <*> for ZipList < 1326059800 32165 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :oerjan, I see. Not sure why it would be called zap still < 1326059802 18157 :atrapado!~insekt@95.169.240.66 PRIVMSG #esoteric :ok < 1326059806 382419 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :atrapado: The while (in != out) thing is just a trick: out starts as 0, so if in == 0, then the whole thing is skipped. If it's not, then we know that at the end of the inner loop, out = in - 1. < 1326059807 851143 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :So out != in. < 1326059817 292899 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :So it's equivalent to if (in != 0). < 1326059822 172277 :atrapado!~insekt@95.169.240.66 PRIVMSG #esoteric :ah < 1326059827 725766 :atrapado!~insekt@95.169.240.66 PRIVMSG #esoteric :more clear to me < 1326059836 379477 :atrapado!~insekt@95.169.240.66 PRIVMSG #esoteric :good < 1326059870 672373 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :(Disclaimer: Writing code like this is bad for your health.) < 1326059884 572160 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :Vorpal: because (<*>) = ap < 1326059889 874860 :atrapado!~insekt@95.169.240.66 PRIVMSG #esoteric :yes, it is itself obfuscated < 1326059894 519280 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :oerjan, oh, right < 1326059911 521642 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: APply < 1326059938 471795 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric ::t app < 1326059939 425546 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :forall (a :: * -> * -> *) b c. (ArrowApply a) => a (a b c, b) c < 1326059983 756817 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric ::t app loop < 1326059984 713637 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Couldn't match expected type `a (b, d) (c, d) -> a b c' < 1326059984 872910 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : against inferred type `(b1 -> c1, b1)' < 1326059985 29178 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Expected type: (a (b, d) (c, d) -> a b c) -> t < 1326059987 300670 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric ::t loop app < 1326059988 254914 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :forall (a :: * -> * -> *) d c. (ArrowApply a, ArrowLoop a) => a (a d (c, d)) c < 1326059996 926307 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: :D < 1326060008 654193 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> loop app (\x -> (42, x)) < 1326060009 490072 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : 42 < 1326060012 472845 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> loop app (\x -> (42, 1+x)) < 1326060013 265961 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : 42 < 1326060018 576441 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> loop app (\x -> (x, 1:x)) < 1326060019 354761 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,... < 1326060023 43498 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> loop app (\x -> (2:x, 1:x)) < 1326060023 877875 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : [2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,... < 1326060026 576271 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :that's awesome < 1326060033 226889 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :you get control over the final value, sort of < 1326060049 848896 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :> fix.interleave$cycle[1,0] < 1326060051 554182 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : [1,1,0,1,1,0,0,1,1,1,0,0,1,0,0,1,1,1,0,1,1,0,0,0,1,1,0,0,1,0,0,1,1,1,0,1,1,... < 1326060052 347620 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric ::t loop < 1326060053 166542 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :forall (a :: * -> * -> *) b d c. (ArrowLoop a) => a (b, d) (c, d) -> a b c < 1326060056 220154 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :oh < 1326060057 170231 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric ::t app < 1326060058 122484 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :forall (a :: * -> * -> *) b c. (ArrowApply a) => a (a b c, b) c < 1326060058 915031 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: well that was easy :P < 1326060061 978852 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: and elegant < 1326060067 400679 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :(haven't really used arrows) < 1326060083 458586 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric ::t loop arr < 1326060084 330406 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Couldn't match expected type `(b, d)' < 1326060084 489443 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : against inferred type `b1 -> c' < 1326060084 645914 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Expected type: (b, d) -> (c1, d) < 1326060086 78318 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :aww < 1326060089 569263 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric ::t arr loop < 1326060090 402868 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :forall (a :: * -> * -> *) b d c (a1 :: * -> * -> *). (ArrowLoop a, Arrow a1) => a1 (a (b, d) (c, d)) (a b c) < 1326060102 171534 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric ::t arr app < 1326060103 126229 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :forall b c (a :: * -> * -> *). (Arrow a) => a (b -> c, b) c < 1326060107 396133 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :heh < 1326060108 192045 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric ::t app < 1326060109 182919 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :forall (a :: * -> * -> *) b c. (ArrowApply a) => a (a b c, b) c < 1326060112 56192 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :right < 1326060121 694757 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :elliott: once i remembered interleave, yeah < 1326060142 301297 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric ::t arr < 1326060143 134480 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :forall b c (a :: * -> * -> *). (Arrow a) => (b -> c) -> a b c < 1326060153 763414 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, what are arrows for? < 1326060165 297302 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric ::t loop < 1326060166 97333 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :forall (a :: * -> * -> *) b d c. (ArrowLoop a) => a (b, d) (c, d) -> a b c < 1326060170 596714 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :(apart from pointing people and shooting them) < 1326060207 580230 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: arrows < 1326060214 992626 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :they're like monads, except not, and more static < 1326060215 674164 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, yes, what are they used for < 1326060219 293503 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :ah < 1326060220 880341 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :things < 1326060223 560687 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :they're not very nice < 1326060235 687754 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: do i have to build the self-avoiding sequence :( < 1326060236 481511 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, so why does haskell have them? < 1326060240 409471 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :if they are not very nice < 1326060284 172707 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric : they're like monads, except not, and more static < 1326060292 824979 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :I never did get arrows. < 1326060334 450346 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :I don't like much the Arrow class in Haskell so I made up my own class; there is two classes, one is the functor from one category to another, the other one is the other four things in the Arrow class. < 1326060371 242180 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: Well, they're not *all* that unnice. < 1326060371 736392 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :And you can also change to use a different type other than (,) type. Which makes ArrowChoice not needed since instead, it is the arrow for the dual category. < 1326060384 498884 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, right. So why should someone use them? < 1326060406 237237 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :If they want to. Or if someone else already did and they have to live with it. < 1326060425 97227 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :elliott, so there is really nothing they are better at than, for example, monads? < 1326060451 229659 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :They are different things! < 1326060459 302141 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Vorpal: There are arrows that are not (or should not be) monads. < 1326060464 588825 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :ah okay < 1326060482 428215 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :so that is the "except not" bit then < 1326060498 528279 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric ::t loop < 1326060499 519326 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :forall (a :: * -> * -> *) b d c. (ArrowLoop a) => a (b, d) (c, d) -> a b c < 1326060554 8303 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: I TAKE IT THAT'S A YES < 1326060556 627249 :Vorpal!~AnMaster@unaffiliated/anmaster PRIVMSG #esoteric :well, night → < 1326060556 825525 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :But, if the category is the Kleisli category of some monad of (->) then it should make the monad. And, also coKleisli categories to make comonad < 1326060581 867179 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> (init &&& last) . take 2 [False,False,True,True] < 1326060582 541982 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Couldn't match expected type `[a]' < 1326060582 700931 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : against inferred type `GHC.Bool.... < 1326060585 876838 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> (init &&& last) . take 3 $ [False,False,True,True] < 1326060587 403448 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : ([False,False],True) < 1326060658 30109 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> map ((init &&& last) . take 3) . inits $ [False,False,True,True] < 1326060659 458504 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : [(*Exception: Prelude.init: empty list < 1326060662 116841 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :o_O < 1326060662 559314 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oh < 1326060671 368387 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> map ((init &&& last) . take 3) . tails $ [False,False,True,True] < 1326060672 995541 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : [([False,False],True),([False,True],True),([True],True),([],True),(*Excepti... < 1326060699 61151 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> map (init &&& last) . takeWhile ((==3).length) . map (take 3) . tails $ [False,False,True,True] < 1326060700 647782 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : [([False,False],True),([False,True],True)] < 1326060710 716645 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: SEE I'VE LIKE HALF WRITTEN IT FOR YOU ALREADY < 1326060718 53577 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :elliott: i just cannot find much elegance in repeatedly building markov models. < 1326060732 869120 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: the idea was to come up with a more elegant expression of it than that :P < 1326060736 277969 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric ::t M.takeListWith < 1326060737 229316 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :Couldn't find qualified module. < 1326060741 710932 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric ::t M.fromListWith < 1326060742 591420 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric :forall a k. (Ord k) => (a -> a -> a) -> [(k, a)] -> M.Map k a < 1326060774 645900 :yiyus!1242712427@je.je.je JOIN :#esoteric < 1326060818 462590 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: ok how about chaitin's omega :P < 1326060823 577733 :MSleep!~fyrc@c-174-55-44-190.hsd1.pa.comcast.net NICK :MDude < 1326060825 646660 :Vorpal!~AnMaster@unaffiliated/anmaster QUIT :Ping timeout: 244 seconds < 1326060833 496476 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :should be a breeze < 1326060888 574086 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> iterate (id++map not . reverse) [False] < 1326060890 161038 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : [[False],[False,True],[False,True,False,True],[False,True,False,True,False,... < 1326060896 858167 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :WELL THAT'S NOT ANY FUN < 1326060909 582166 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> iterate (\xs -> interleave xs (map not (reverse xs))) [False] < 1326060910 414427 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : [[False],[False,True],[False,False,True,True],[False,False,False,False,True... < 1326060914 339044 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :sheesh < 1326060917 236001 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> iterate (\xs -> interleave xs (map not xs)) [False] < 1326060918 148802 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : [[False],[False,True],[False,True,True,False],[False,True,True,False,True,F... < 1326060922 70329 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I GIVE UP < 1326060969 7151 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :> show<=>=(!!)[[1],[0,1]]) < 1326060972 874368 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : mueval-core: Time limit exceeded < 1326060976 149139 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :argh < 1326060978 249964 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :oh < 1326060991 148600 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :> fix$(0:).tail.(>>=(!!)[[1],[0,1]]) < 1326060994 791182 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : mueval-core: Time limit exceeded < 1326061001 517510 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :hm something is wrong < 1326061010 227391 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :the tail consumes too much? < 1326061017 505996 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :oh hm < 1326061018 340399 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :for production < 1326061020 30637 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :maybe < 1326061025 828880 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :you might need more starter elements < 1326061025 986773 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :> fix$(0:).(>>=(!!)[[1],[0,1]]) < 1326061027 575131 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : [0,1,0,1,1,0,1,0,1,1,0,1,1,0,1,0,1,1,0,1,0,1,1,0,1,1,0,1,0,1,1,0,1,1,0,1,0,... < 1326061042 428584 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :> show<=>=(!!)[[1],[0,1]]) < 1326061044 22449 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : "01011010110110101101011011010110110101101011011010110101101101011011010110... < 1326061072 706306 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :that's a fairly general substitution sequence < 1326061075 928327 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :which one is that? < 1326061101 202263 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :fibonacci, unless i swapped the order < 1326061158 780962 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :ah < 1326061195 734522 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :04:50:34 makeDef text = [d|helloDefinition = $(litE . stringL $ text)|] < 1326061199 984805 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Sgeo: = $text i think < 1326061218 970828 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :05:10:44 * Sgeo has no idea if GHC is smart enough < 1326061219 168753 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :GHC is not allowed to turn a non-terminating program into a terminating one without printing <>. < 1326061240 275386 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :> show<=>=(!!)[[0,1],[0]]) --seems this is canonical according to http://en.wikipedia.org/wiki/Fibonacci_word < 1326061241 702744 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : "00101001001010010100100101001001010010100100101001010010010100100101001010... < 1326061256 368149 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :oh wait hm < 1326061262 203475 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :elliott, uh, what was the context of the smart enough comment? < 1326061265 969210 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :so i just had this cool idea.. using mouse scrollwheel+some button to change window focus < 1326061268 915475 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Sgeo: length xs< x < 1326061269 708241 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :> show<=>=(!!)[[0,1],[0]]) --seems this is canonical according to http://en.wikipedia.org/wiki/Fibonacci_word < 1326061271 137382 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : "01001010010010100101001001010010010100101001001010010100100101001001010010... < 1326061277 319952 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :that form needs tail < 1326061281 183540 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :itidus21: you can scroll on the taskbar in gnome 2 at least < 1326061283 722338 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :i used to do that a lot < 1326061285 466072 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :to switch windows < 1326061290 306488 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :Because the context that I'm thinking of is just an optimization, not ... oh, you only saw part of the context < 1326061296 236401 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Sgeo: i saw all context < 1326061301 792259 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :i think < 1326061342 27141 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :elliott: it occured to me on having 2 horizontally overlapping windows that the minimum distance to swap focus between them is the distance of the overlap < 1326061354 42012 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :if you use clicking on it to change focus < 1326061356 507046 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :Even the bit where I'm making my own Num that will let me write my own length that length xs < x terminates even for infinite xs? < 1326061417 908580 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Sgeo: "my own Num" < 1326061418 67256 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :aka < 1326061421 463879 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :the lazy peano numbers < 1326061423 423737 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :the oldest thing ever < 1326061447 354559 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :This is a bit more general than that, although I don't see any use cases that this covers that lazy peanos don't. < 1326061452 72457 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :also, that if there is one window hidden behind another window then the minimum distance to change focus by clicking is moving to the minimize button, and then moving to the hidden window < 1326061477 320925 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :clearly noone measures these vectors < 1326061497 117655 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :at least not on windows :P < 1326061510 368743 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :itidus21: fitts' law may interest you < 1326061519 902307 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Sgeo: how's it more general < 1326061570 345862 :atrapado!~insekt@95.169.240.66 QUIT :Quit: FIN < 1326061571 18190 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :> show<=>=(!!)[[1,0],[0]]) < 1326061572 764594 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : "01001010010010100101001001010010010100101001001010010100100101001001010010... < 1326061575 501632 :Patashu!~Patashu@c122-106-155-219.carlnfd1.nsw.optusnet.com.au JOIN :#esoteric < 1326061586 590943 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :Um, not sure how to describe it, but it's an infinite list of maybe upper and lower bounds < 1326061623 659832 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :So I can represent a number that I know is "less than x" and then that x keeps decreasing as I calculate < 1326061627 861367 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :Erm < 1326061649 836993 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :ah it seems my first try is called the rabbit sequence < 1326061728 896901 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Sgeo: i'd like to see the code < 1326061745 178635 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :Num instance is still being worked on < 1326061758 789990 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :yup someone told me about it once.. i forget exactly what it is < 1326061766 240773 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :http://hpaste.org/56271 < 1326061773 857504 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :but i do remember that the edge of the screen is more comfortable to scroll against < 1326061790 527961 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :something to do with the size of the mouse target < 1326061793 102506 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`logsearch function array indexing < 1326061796 435011 :HackEgo!foobar@codu.org PRIVMSG #esoteric :​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: logsearch: not found < 1326061804 844964 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`searchlog function array indexing < 1326061806 112161 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :and the edge of the screen is effectively an infinitely deep target < 1326061808 805883 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :itidus21: yep < 1326061837 806016 :HackEgo!foobar@codu.org PRIVMSG #esoteric :No output. < 1326061849 79230 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :`searchlog php index < 1326061863 409463 :HackEgo!foobar@codu.org PRIVMSG #esoteric :2006-08-24.txt:22:24:26: http://www.codu.org/plof/index.php?title=LongWords < 1326061869 796063 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :poor searchlog is ahead of its time < 1326061881 347645 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :or whatever the term is < 1326061884 247561 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :I do plan on factoring out the hard to read stuff in the Num instance < 1326061944 267382 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Sgeo: You could probably simplify it by realising that those Maybes are basically encoding a + -inf and a + inf. < 1326061950 272009 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Write appropriate instances, etc. < 1326062035 930807 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :I'm pretty sure Num, Ord does not have -inf or +inf. I mean, RealFloat or Floating or something probably does, but I don't < 1326062044 366581 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :What the fuck are you talking about? < 1326062044 558914 :Sgeo!~sgeo@ool-ad034d00.dyn.optonline.net PRIVMSG #esoteric :erm, want to restrict myself like that < 1326062065 558196 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :data WithNegInf a = NegInf | NotNegInf a deriving (Eq) < 1326062072 545465 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :instance (Num a) => Num (WithNegInf a) < 1326062081 403263 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Similarly for NegInf; write appropriate Ord instances. < 1326062095 765196 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Change the thing to [(WithNegInf a, WithPosInf a)] < 1326062175 708518 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric : Brainfuck with only balanced loops is *proven* sub-Turing-complete. <-- not with unbounded cells < 1326062197 929278 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: Hmm, really? < 1326062206 907177 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Oh, of course. < 1326062211 872769 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: Don't worry, we later prove it TC. < 1326062221 483348 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :With BCT. < 1326062238 279698 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :heh < 1326062339 167563 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :my 3-cell construction has balanced loops, of course (i couldn't _find_ any way to usefully use non-balanced ones) < 1326062432 96268 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: you might notice something interesting about http://esoteric.voxelperfect.net/wiki/Special:Recentchanges today < 1326062450 758713 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :ACTION makes a guess before visiting < 1326062507 669954 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :alas, no, there's still a little spam < 1326062552 976281 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :are my eyes malfunctioning? i dont see dozens of spam entries < 1326062570 502854 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: still a _little_ < 1326062572 567911 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :but vastly decreased < 1326062581 466017 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :no itidus21, your eyes are fully operational. < 1326062920 497025 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :rawSetCaption :: Maybe String -> Maybe String -> IO () < 1326062927 586520 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :Sets the window title and icon name. Use Nothing to unset. < 1326062932 425604 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :I don't really understand the purpose of this < 1326062938 585679 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :what is different about "" and Nothing here? < 1326063000 724759 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :presumably the system can distinguish them < 1326063001 909638 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :elliott: i don't see a proof for SumaMoito-Z1, but it seems obviously capable of handling my 3-cell balanced loops < 1326063011 145693 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :a window with no title is not a window with an empty title < 1326063025 115128 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :perhaps < 1326063032 745280 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: well it's easy to translate -z2 to -z1 < 1326063038 651880 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: just replace a- with < 1326063039 484468 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :it also has: < 1326063046 754347 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :setCaption :: String -> String -> IO () < 1326063053 704297 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :Sets the window title and icon name. < 1326063053 861165 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :er hm < 1326063056 741305 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :no it's not quite easy < 1326063058 844671 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :but all you need is a copy < 1326063065 864213 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kallisti: for simplicity, presumably < 1326063066 24547 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :The same difference with "" and NULL for SDL_WM_SetCaption is my guess. :p < 1326063073 558488 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :elliott: yes that's what I would think. < 1326063087 747787 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :OMG Darths & Droids is onto A New Hope. < 1326063162 604 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :fizzie: but wouldn't setting the caption to an empty string have the same basic effect as unsetting it? < 1326063167 349859 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :or is there a minute difference? < 1326063177 280458 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :I think, it should be designed (although I don't know how it actually works), "" for SDL set caption should make the caption blank and NULL to make it show the filename < 1326063196 219202 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :oh I see < 1326063201 494928 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :NULL could use some kind of default or something. < 1326063204 428379 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kallisti: you're confusing visual display for semantics < 1326063216 278948 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :window with no title rendered same way as window with empty title =/= same thing < 1326063217 388072 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :consider < 1326063220 501545 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :$ list-windows < 1326063224 271600 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :495345: (no caption) < 1326063226 849027 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :495345: caption: "" < 1326063231 734898 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :elliott: yes I'm asking what those semantics are... indirectly < 1326063234 193130 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :I do that a lot. < 1326063236 970883 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :depends on the system < 1326063243 603216 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :but there's one example < 1326063252 459932 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :OK, it could do that but there is different system such as Windows, UNIX, and Macintosh. < 1326063511 950916 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :05:24:44 when . not ? < 1326063512 902903 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Sgeo: unless < 1326063536 8062 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :05:31:17 erus`: There's an instance Error e => Monad (Either e) < 1326063536 165090 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :WROOONG! You're not in here so I can't yell at you but WROOOONG!!!! < 1326063650 893989 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :06:03:00 > let f a = const in f 1 2 < 1326063651 53198 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :06:03:00 Overlapping instances for GHC.Show.Show (b -> t) < 1326063651 209557 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :06:03:01 arising from a use of `... < 1326063651 209742 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :06:03:59 Which is a function, which doesn't have a Show instance < 1326063655 311800 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Sgeo: Yes it does. In fact, it has too many. < 1326063700 88864 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :They need to implement instance disambiguation!! < 1326063746 710177 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :08:00:04 Hmm < 1326063746 906310 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :08:00:08 What is State# ? < 1326063748 971730 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Sgeo: Nothing. < 1326063757 93056 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Sgeo: State# s is 0 bits big. < 1326063759 431245 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :It does not exist. < 1326063791 608042 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Sgeo: The reason IO uses it is so that GHC can't reorder IO expressions. < 1326063798 655817 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :The (->) being used is the impure function arrow. < 1326063807 141667 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :The State# is just used to introduce a fake evaluation dependency between computations. < 1326063837 229401 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :08:11:40 What would happen if I did try to do something like weird a = IO \s -> (s, a) < 1326063840 559328 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Sgeo: With (##), that's return. < 1326063893 801046 :kmc!~keegan@c-98-216-51-47.hsd1.ma.comcast.net PRIVMSG #esoteric :wait, so now we're shouting at #haskell from afar? < 1326063955 132312 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kmc: Yes! < 1326063961 403945 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :kmc: You can't get banned that way. < 1326063967 592449 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Also, you don't even have to *be* in #haskell. < 1326063967 752077 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :watching sgeo doing something stupid over there and shouting in his ear which is conveniently right here < 1326063981 966317 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :monqy: Better: He did it in THE PAST! < 1326064290 917653 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :10:00:17 i would like to plunge into haskell. i come from a c++/c/python background. can anyone suggest a strong text or set of lectures online that will give me a good foundation? < 1326064291 77055 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :10:00:24 @where lyah < 1326064291 233531 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :10:00:24 http://www.learnyouahaskell.com/ < 1326064291 233676 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :10:01:13 koeien:thanks! if i keep at this, would i be able to gain employment where haskell is used? < 1326064291 911214 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :10:01:22 at that site, i meant < 1326064293 923355 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :10:01:27 sorry for being ambiguois < 1326064296 317608 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I... I don't understand... < 1326064310 223026 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Oh, I misread. < 1326064391 646326 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :good channel < 1326064448 342215 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :inteq is fighting an uphill battle < 1326064468 997367 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :i don't envy him < 1326064766 90930 :nooga!~nooga@maverick.aircity.pl QUIT :Ping timeout: 252 seconds < 1326064777 796815 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :10:45:04 Sgeo : i think this is an interesting idea -- i saw some hand-written notes somewhere on the web about making such a lazy improving intervals type < 1326064781 519987 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Sgeo: likely referring to http://conal.net/blog/posts/exact-numeric-integration < 1326064794 42369 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Sgeo: which happens to do basically exactly what i proposed :) < 1326064804 286954 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :sort of < 1326064822 165774 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :see also http://www.reddit.com/r/haskell/comments/ajbso/conal_elliott_exact_numeric_integration/c0i391y < 1326064844 532430 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :itidus21: ah but the view on the top is glorious < 1326064984 211145 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :> [0..]>>- \_->cycle[1,0] < 1326064986 271938 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : [1,1,0,1,1,0,0,1,1,1,0,0,1,0,0,1,1,1,0,1,1,0,0,0,1,1,0,0,1,0,0,1,1,1,0,1,1,... < 1326065036 871845 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :ACTION cackles evilly < 1326065048 450411 :quintopia!~quintopia@unaffiliated/quintopia PRIVMSG #esoteric :oerjan: what is a good concise definition of "problem" in the computational sense < 1326065069 898013 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: lovely < 1326065080 430646 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> [0..]>>-cycle[1,0] < 1326065081 856742 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Couldn't match expected type `t -> [b]' < 1326065082 15471 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : against inferred type `[t1]' < 1326065087 567911 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION was hoping for function Num instance < 1326065103 14750 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> iterate(group>=>show.length++take 1)"1" < 1326065107 197750 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : mueval-core: Time limit exceeded < 1326065111 599281 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> iterate(group>=>show.length++take 1)"1" < 1326065112 787811 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : can't find file: L.hs < 1326065114 611775 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :... < 1326065115 604176 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :... < 1326065116 713794 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> iterate(group>=>show.length++take 1)"1" < 1326065119 649857 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : ["1","11","21","1211","111221","312211","13112221","1113213211","3113121113... < 1326065121 710940 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION has now committed that to memory < 1326065165 504145 :Madoka-Kaname!~moe@inportb/loli/cirno-chan PRIVMSG #esoteric :> iterate(group>=>show.length++take 1)"a" < 1326065167 129387 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : ["a","1a","111a","311a","13211a","111312211a","31131122211a","1321132132211... < 1326065170 364198 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :quintopia: a decision problem is simply the same thing as a language, mathematically < 1326065170 911872 :Madoka-Kaname!~moe@inportb/loli/cirno-chan PRIVMSG #esoteric :ACTION hides < 1326065174 195218 :Jafet!~Jafet@unaffiliated/jafet JOIN :#esoteric < 1326065179 169311 :Madoka-Kaname!~moe@inportb/loli/cirno-chan PRIVMSG #esoteric :> iterate(group>=>show.length++take 1)"0" < 1326065181 271213 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : ["0","10","1110","3110","132110","1113122110","311311222110","1321132132211... < 1326065208 163859 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :more general types of problems need their own definitions. < 1326065221 197721 :Madoka-Kaname!~moe@inportb/loli/cirno-chan PRIVMSG #esoteric :> head $ drop 300 $ iterate(group>=>show.length++take 1)"1" < 1326065222 903958 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : "13211321322113311213212312311211131122211213211331121321123123211231131122... < 1326065245 225757 :Madoka-Kaname!~moe@inportb/loli/cirno-chan PRIVMSG #esoteric :Somehow that doesn't seem right < 1326065264 796232 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :Madoka-Kaname: why not? < 1326065273 611789 :Madoka-Kaname!~moe@inportb/loli/cirno-chan PRIVMSG #esoteric :Eh. < 1326065274 783871 :Madoka-Kaname!~moe@inportb/loli/cirno-chan PRIVMSG #esoteric :Never mind < 1326065309 33477 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> iterate(group>=>show.length++take 1)"" < 1326065310 777211 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : ["","","","","","","","","","","","","","","","","","","","","","","","",""... < 1326065314 901727 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> iterate(group>=>show.length++take 1)"hi" < 1326065316 802753 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : ["hi","1h1i","111h111i","311h311i","13211h13211i","111312211h111312211i","3... < 1326065326 104351 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> iterate(group>=>show.length++take 1)$repeat 1 < 1326065327 55559 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : No instance for (GHC.Num.Num GHC.Types.Char) < 1326065327 214459 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : arising from the literal `1... < 1326065333 356883 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> iterate(group>=>show.length++take 1)$repeat '1' < 1326065335 40437 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : ["1111111111111111111111111111111111111111111111111111111111111111111111111... < 1326065338 410438 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> tail.iterate(group>=>show.length++take 1)$repeat '1' < 1326065340 443431 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : Terminated < 1326065342 504941 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :aww < 1326065379 512500 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> tail.iterate(group>=>show.length++take 1).concatMap show$[1..] < 1326065381 99035 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : ["1112131415161718191110311211131114111511161117111811191210121132131214121... < 1326065385 104056 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> tail.tail.iterate(group>=>show.length++take 1).concatMap show$[1..] < 1326065386 891694 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : ["3112111311141115111611171118111931101321123113311431153116311731183119111... < 1326065388 678557 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :> tail.tail.tail.iterate(group>=>show.length++take 1).concatMap show$[1..] < 1326065390 350663 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : ["1321123113311431153116311731183119132110111312211213212321141321151321161... < 1326065395 820924 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: pls explain patterns kthx < 1326065419 54054 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :its simple really < 1326065440 71241 :quintopia!~quintopia@unaffiliated/quintopia PRIVMSG #esoteric :oerjan: a language over the set of all possible mathematical symbols? < 1326065440 227719 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :1,111,311,13211,111312211 < 1326065462 861170 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :i mean like, duh < 1326065473 36845 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :am I a possible mathematical symbol < 1326065474 303449 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :are you < 1326065493 703917 :Madoka-Kaname!~moe@inportb/loli/cirno-chan PRIVMSG #esoteric :> head $ drop 300 $ iterate(group>=>show.length++take 1)"22" < 1326065495 172376 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : "22" < 1326065506 33789 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oh well the first step is just interleaving 1 everywhere < 1326065513 295844 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :except, no < 1326065516 539628 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :since digits can repeat there < 1326065517 585376 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :interesting < 1326065519 51751 :Madoka-Kaname!~moe@inportb/loli/cirno-chan PRIVMSG #esoteric :> iterate(group>=>show.length++take 1)"4444" < 1326065520 518346 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : ["4444","44","24","1214","11121114","31123114","132112132114","111312211211... < 1326065531 846430 :Madoka-Kaname!~moe@inportb/loli/cirno-chan PRIVMSG #esoteric :> iterate(group>=>show.length++take 1)"2222222222" < 1326065532 2873 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :monqy: i'm gonna go with no not really < 1326065533 445461 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : ["2222222222","102","111012","31101112","1321103112","1113122110132112","31... < 1326065543 774569 :Madoka-Kaname!~moe@inportb/loli/cirno-chan PRIVMSG #esoteric :> iterate(group>=>show.length++take 1)"222222222" < 1326065544 565825 :quintopia!~quintopia@unaffiliated/quintopia PRIVMSG #esoteric :monqy: i think its okay to define a symbol as a specific string of other symbols. so, yes, if you can produce an axiomatic description of us < 1326065545 369843 :lambdabot!~lambdabot@li85-105.members.linode.com PRIVMSG #esoteric : ["222222222","92","1912","11191112","31193112","132119132112","111312211911... < 1326065589 289235 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :quintopia: a language over some arbitrary (finite) alphabet < 1326065593 903874 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :`log information is < 1326065601 493181 :HackEgo!foobar@codu.org PRIVMSG #esoteric :2009-08-01.txt:15:08:18: because only that information is of the form to transmit itself into the future < 1326065686 720248 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :elliott: all digits > 3 eventually become isolated from each other. then it devolves into conway's atoms, which behave as a substitution rule. < 1326065695 330475 :quintopia!~quintopia@unaffiliated/quintopia PRIVMSG #esoteric :oerjan: but to mathematicians, the alphabet is not arbitrary, is it? there is a conventional set of symbols? < 1326065715 993680 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: yeah, i was just hoping somehow infinitely extending it would make it interesting :P < 1326065721 546520 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :it was a wild delusion! < 1326065752 939468 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :`log [i]nformation is < 1326065757 787262 :Jafet!~Jafet@unaffiliated/jafet PRIVMSG #esoteric :Breaking news, look'n'say isn't turing complete < 1326065759 727977 :HackEgo!foobar@codu.org PRIVMSG #esoteric :2010-01-10.txt:13:49:25: does anyone know if information is transferred faster by reading or by listening. Assume a skilled reader and native speaker. < 1326065805 258991 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :`searchlog itidus philisoph < 1326065813 28292 :HackEgo!foobar@codu.org PRIVMSG #esoteric :2012-01-08.txt:23:36:45: `searchlog itidus philisoph < 1326065818 884432 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :oop < 1326065823 882794 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :`searchlog itidus philosoph < 1326065832 719716 :HackEgo!foobar@codu.org PRIVMSG #esoteric :2011-08-14.txt:07:15:58: i don't have philosophical dilemmas about whether the opcodes of a rom are being emulated in a uniform way < 1326065840 64749 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :wow < 1326065844 662630 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Wow indeed. < 1326065863 185856 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :i cant even remember what that is supposed to mean < 1326065895 237288 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Fun fact: the person who invented coffee chocolates should be shot. < 1326065896 29232 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :`searchlog itidus philosoph < 1326065897 931701 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :probably referring to NES emulation < 1326065903 880132 :HackEgo!foobar@codu.org PRIVMSG #esoteric :2012-01-07.txt:12:36:21: fizzie: i don't understand why philosophy + retro gaming + symbols is so interesting < 1326065913 105554 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :quintopia: this is for theoretical purposes, so you only _need_ two symbols, such as 0 or 1. otherwise, mathematicians will use whatever they fancy. < 1326065989 685324 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :probably digits or letters from latin or greek alphabet, unless there's some reason to use something else (such as the problem coming from another part of math which uses specific symbols) < 1326066035 602995 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :that was in reference to the vic20 chess video < 1326066118 880766 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :also, that ever-popular "letter with number subscript" < 1326066161 198015 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :when you don't really _care_ what the actual letters are, so you just make them indexed variables. < 1326066175 206842 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :and the number may itself be a variable. < 1326066178 299479 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :`searchlog itidus21 information < 1326066186 361827 :HackEgo!foobar@codu.org PRIVMSG #esoteric :2012-01-06.txt:15:43:38: but.. in any normal human's life, the history of video games is useless information :D < 1326066193 654189 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :`searchlog itidus philosoph < 1326066203 357560 :HackEgo!foobar@codu.org PRIVMSG #esoteric :2011-11-26.txt:05:10:20: i love nothing more than to philosophize about these things < 1326066231 761922 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :i was once compared to a markov < 1326066282 204949 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :did it trigger an existential crisis < 1326066329 259372 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :`searchlog itidus existential < 1326066338 969862 :HackEgo!foobar@codu.org PRIVMSG #esoteric :2011-09-17.txt:08:13:16: all im saying is when i stagger into my brothers room laying down having a whiskey from him while my body is shaking.. which all seems caused by existential pondering < 1326066370 603048 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :OMFG < 1326066371 871179 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :OK < 1326066372 980018 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :stop < 1326066374 406401 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :everything < 1326066376 942753 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :i have worked < 1326066377 575384 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :out < 1326066383 888360 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric : < 1326066384 47939 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric : < 1326066384 681267 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :how to drag < 1326066387 768326 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :on my touchpad < 1326066394 105211 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :im stopinge < 1326066401 64010 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: how does it, work < 1326066401 381180 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :stop stop < 1326066401 858566 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :this < 1326066403 442845 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :omg < 1326066409 149797 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :does it work by < 1326066410 417169 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :buying a mouse < 1326066413 783454 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :no < 1326066416 195791 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :it works < 1326066420 683400 :monqy!~swell@pool-71-102-226-192.snloca.dsl-w.verizon.net PRIVMSG #esoteric :does it work by drageing < 1326066434 417531 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :by double clicking and then not taking your finger up on the second click < 1326066444 880040 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :there < 1326066448 724530 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :there is no limit < 1326066456 380152 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :for so long i have asked myself < 1326066463 596638 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :how do i drag without using the mouse buttons < 1326066468 112552 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :now i know < 1326066470 331842 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :dude < 1326066472 233715 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :how did you not like < 1326066473 660546 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :realise that earlier < 1326066500 891509 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Because who clicks and then immediately drags?? < 1326066552 977648 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Phantom_Hoover: It doesn't actually send a click. < 1326066571 627917 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :Yes, that also. < 1326066581 60566 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :What doesn't? < 1326066636 799751 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :monqy: i know how to resolve this.. i will upload a random .txt file of mine and you will need a lot of help < 1326066644 512162 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :13:59:00 roconnor: There's a Control.Monad.Error which provides a Monad instance for some Either's; and a fixed Monad class with a proper Either instance in the split of category-extras. < 1326066646 507157 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :NO STOP YOU'RE SO WRONG! < 1326066656 728434 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: WHY DOES NOBODY REALISE THAT EITHER'S FAIL IS ERROR THESE DAYS < 1326066660 839377 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric : Phantom_Hoover: OK, divmod is quite tricky. <-- oh dear, this is pikhq's bfm/pebbles all over again :P < 1326066667 95363 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: heh howso < 1326066674 496069 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: Hey, I was only half-paying attention in that conversation. < 1326066676 977313 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :i guess it's similar-looking < 1326066682 658493 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: DMWIT HAS SAID IT _TWICE_ IN THIS LOG, TWICE!!! < 1326066685 982596 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :ACTION cries. < 1326066687 790780 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Wait. < 1326066688 582883 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :I didn't even realise they were talking about MonadError until a long time later. < 1326066688 760738 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Wait no. < 1326066692 354417 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I want him to be ignorant. < 1326066696 632788 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :It means more SO questions for me to answer. < 1326066702 175510 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :"How come Either's fail isn't working?" < 1326066704 840893 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :SO many more questions. < 1326066710 12436 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Yes. < 1326066715 77888 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Delicious karma. < 1326066730 994278 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :You should take Joel Spolsky hostage and demand a billion karma points. < 1326066742 790673 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :14:02:51 > let { x :: Integer; x = fromIntegral (maxBound :: Int) } in x * x -- values of type Integer can be arbitrarily large. < 1326066742 969302 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :14:02:52 85070591730234615847396907784232501249 < 1326066747 687666 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Everyone knows 85070591730234615847396907784232501249 is the biggest number. < 1326066754 246137 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 PRIVMSG #esoteric :WHY DOES NOBODY REALISE THIS CHANGES EVERYTHING < 1326066761 102805 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :elliott: because pikhq basically implemented all of that stuff by compiling into balanced brainfuck. < 1326066765 857574 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Phantom_Hoover: It only changes you being dumb to being slightly less dumb. < 1326066767 229749 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Phantom_Hoover: Just wait until you hear what happens when you TRIPLE-CLICK. < 1326066768 503972 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :oerjan: heh < 1326066782 671995 :itidus21!~itidus21@120.148.51.249 PRIVMSG #esoteric :a few pieces of this are cut and pasted. most sadly.. is my original work. http://hpaste.org/56275 .. this is like concentrated essence of `searchlog itidus philosoph < 1326066814 893671 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :14:06:37 dmwit: anyhow It seems I shoudn't rely on fail to return Left < 1326066815 72951 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :14:06:47 dmwit: so I should probably use ErrorT rather than Either? < 1326066815 247457 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :14:07:27 roconnor: I doubt that behavior will change any time soon. It's relied on by many pieces of code other than yours. =P < 1326066822 352435 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: I think he's going for irony. < 1326066871 225153 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Why am I consuming 85% dark chocolate? < 1326066875 155739 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :I don't like dark chocolate. < 1326066882 650208 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com PRIVMSG #esoteric :Then don't. < 1326066897 252789 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Whoa. < 1326066900 299510 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :You can do that? < 1326066921 875988 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :No. < 1326066922 745525 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Continue. < 1326066923 620186 :quintopia!~quintopia@unaffiliated/quintopia PRIVMSG #esoteric :oerjan: diophantine equations are not decidable over N. therefore, such problems are not in PSPACE. therefore, they cannot be written in such a way that the tarski-kuratowski algorithm can be used on them. anything wrong with this logic? < 1326066941 140050 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :14:21:43 Making fail part of MonadZero rather than Monad seems more reasonable than the current situation. < 1326066952 745859 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :ACTION prepares for rebuke. < 1326066958 242000 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: You should really have proposed the mzero :: (forall a. a) -> m a solution. < 1326066964 854605 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :quintopia: probably not, but i lost you at tarski-kuratowski. < 1326066968 264318 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: Ew. < 1326066975 892679 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Actually, "mzero :: a -> m b" would work per parametricity, I think. < 1326066982 218288 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: Come on, it's so brilliant. < 1326066984 594015 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :That solution is a horrible joke. < 1326066998 910662 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: Well... yes, but is it really worse than taking a String which /changes based on column number/? < 1326067011 332653 :quintopia!~quintopia@unaffiliated/quintopia PRIVMSG #esoteric :oerjan: its the one that places problems on the arithmetic hierarchy < 1326067021 236593 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: I mean, at least the idea of stuffing meaningful information into _|_ and extracting it in a safe place is well-covered. < 1326067065 465254 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Hmm. I guess that's a point. < 1326067091 346732 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :The <- pattern-match failure thing is actually observable in the program, isn't it. < 1326067094 533344 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :That's kind of horrible. < 1326067095 687569 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :http://wiki.rpg.net/index.php/Worst_RPGs_ever < 1326067095 843369 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Yep. < 1326067103 541601 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Actually shouldn't it be exists a. a or something? < 1326067111 947661 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: AKA a. < 1326067115 591561 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Right. < 1326067116 925203 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: The problem is that you always want it to be _|_. < 1326067121 114942 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :(forall a. a) forces that. < 1326067131 760798 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Yes, but who cares if it's not? < 1326067136 329087 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :Racial Holy War (RaHoWa) < 1326067137 161894 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Well, true. < 1326067137 321069 :kallisti!~eris@h0.32.18.98.dynamic.ip.windstream.net PRIVMSG #esoteric :The PCs play “White Warriors”, fighting against the classic 'enemies' of racist groups: blacks, Jews, latrinos (the game uses that term), and basically everyone outside of the “Aryan ideal” < 1326067138 627564 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :shachaf: Anyway, I mean, the _|_ message is obseravble in the program too, but only in the sin-bin. < 1326067148 59531 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: I don't want my program to *depend* on _|_ existing. < 1326067156 79973 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :elliott: Right, but that's different. < 1326067159 727519 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :And that seems reasonable, since you can layer on error handling with it. < 1326067163 495895 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :Right. < 1326067178 669378 :shachaf!~shachaf@ip24.67-202-82.static.steadfastdns.net PRIVMSG #esoteric :Also, either you typed very quickly or you're making use of the copy-paste-bin. < 1326067190 3699 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :I cache lines with ctrl-x sometimes. < 1326067193 409812 :elliott!~elliott@unaffiliated/elliott PRIVMSG #esoteric :But I type very quickly too.