00:01:02 toListOf (both.traverse) :: Traversable t => (t a, t a) -> [a] 00:02:12 what's :t both here again 00:02:30 Applicative f => (a -> f b) -> (a,a) -> f (b,b) 00:02:56 I charge 14 pence per ghci query from now on. 00:03:12 Do they still have pence in wherever-you-are? 00:03:59 Fourteen pants 00:05:00 elliott: Does a Lens (Either a a) a make sense? 00:05:26 Oh, yes. 00:05:29 It's called "chosen". 00:06:19 shachaf: Traversal (a, a) a also makes sense 00:06:27 Hmm, choosing :: Functor f => LensLike f a b c c -> LensLike f a' b' c c -> LensLike f (Either a a') (Either b b') c c 00:06:32 we still have pence yes 00:06:50 elliott: That's "both". 00:07:08 Except I wrote it out for some reason. 00:10:32 Oh, so it is. 00:11:29 elliott: Did you see my GHC bug report? 00:11:33 I guess you did. 00:14:41 -!- copumpkin has joined. 00:15:16 nope 00:15:17 link 00:16:55 http://hackage.haskell.org/trac/ghc/ticket/7364 00:17:48 shachaf: more reasons _|_ is bad 00:17:58 _|_ is terrible. That's why I use ⊥. 00:18:08 elliott: Anyway remember how I kept getting confused about semantics of that sort of thing? 00:18:14 "we have an explanation" 00:18:17 "thx" 00:19:01 shachaf: isn't cutting off compiler optimisations for bad semantic reasons great! 00:19:04 especially when nobody likes _|_s anyway! 00:19:30 what about ⊥s tho 00:33:42 -!- Nisstyre has joined. 00:40:37 -!- Phantom_Hoover has quit (Read error: Connection reset by peer). 00:46:18 -!- Nisstyre has quit (Ping timeout: 260 seconds). 00:50:31 17:48 λx.x is equivalent to λy.y up to alpha-conversion, in the same way that your startup is equivalent to a startup with a good name, up to alpha-conversion. 00:51:57 idgi 00:51:58 haha 00:52:09 is this about how all startups are the same and badly named 00:52:16 I'm not in the know!! 01:27:13 http://amoffat.github.com/sh/ is so cool 01:31:18 -!- elliott has quit (Ping timeout: 264 seconds). 01:35:12 monqy, arpderp 01:35:20 tswett, you too 01:39:34 i'm hoping this is the magic library that makes python actually pleasant for shell scripty things 01:42:06 -!- Nisstyre has joined. 01:59:36 -!- Nisstyre has quit (Ping timeout: 240 seconds). 02:04:31 kmc: Looks like it. 02:04:53 already hit a few snags 02:05:06 like apparently i can run foo-bar as sh.foo_bar(), but not git ls-files as git.ls_files() 02:05:19 even though subcommands like git.show() are supported generally 02:05:27 still, pretty nice 02:10:45 It's a freaking shell FFI. 02:14:17 -!- Nisstyre has joined. 02:16:23 it's like ctypes for shell 02:16:48 but more useful because "everything is a string" is a better universal type lie than "everything is a machine word" 02:18:26 but ctypes is useful too 02:18:46 sometimes i want to make nearly raw system calls, but do so from a language with real data types and abstractions 02:18:54 *cough* kernel exploits *cough* 02:24:14 :) 02:57:27 -!- Canaimero-f560 has joined. 02:59:06 -!- Canaimero-f560 has left. 03:16:11 -!- Nisstyre has quit (Read error: Operation timed out). 03:24:41 -!- Nisstyre has joined. 04:32:31 oh jesus, nested heredocs 04:45:30 * pikhq did not realize those "see no evil, hear no evil, speak no evil" monkeys were the result of a Japanese *pun*. 04:47:02 "See no, hear no, speak no" in moderately archaic Japanese is "mizaru, kikazaru, iwazaru". And "seeing monkey, hearing monkey, speaking monkey" can be "mizaru, kikazaru, iwazaru". 04:47:06 Just, huh. 04:48:40 I thought most everything in Japanese was a pun. 04:49:00 Not really. 04:49:15 Though wordplay isn't exactly unusual in Japanese. 05:11:27 -!- hagb4rd|afk has joined. 05:12:30 -!- hagb4rd|afk has changed nick to hagb4rd. 05:34:20 an astronaut on nasa tv: "th most important thing we have the discovered on the moon is the earth" 05:58:51 -!- FreeFull has quit. 06:23:53 Maybe the Common Lisp quine will help me understand quines 06:24:15 -!- oklopol has quit (Ping timeout: 256 seconds). 06:24:26 what's to understand? 06:24:52 How they work 06:25:03 > ap(++)show"ap(++)show" 06:25:07 mueval-core: Time limit exceeded 06:25:09 > ap(++)show"ap(++)show" 06:25:13 "ap(++)show\"ap(++)show\"" 06:25:23 backslashes. ruined 06:26:19 That one's actually more understandable 06:26:21 > text$ap(++)show"text$ap(++)show" 06:26:24 text$ap(++)show"text$ap(++)show" 06:26:29 Sgeo: Pretty much all quines work that way. 06:26:37 :t ap 06:26:39 forall (m :: * -> *) a b. (Monad m) => m (a -> b) -> m a -> m b 06:26:45 ap x y z = x z (y z) 06:26:56 «(#1=(lambda (x) `(,x ',x)) '#1#)» i hope this has been enlightening 06:28:50 hi 06:29:46 hi 07:01:11 -!- epicmonkey has joined. 07:20:29 -!- Bike has quit (Quit: there is no). 07:26:42 -!- epicmonkey has quit (Ping timeout: 260 seconds). 07:29:24 -!- Frooxius has joined. 07:37:01 -!- ais523 has quit. 07:45:10 -!- Phantom_Hoover has joined. 08:07:58 -!- carado has joined. 08:27:29 -!- carado has quit (Ping timeout: 244 seconds). 08:40:57 -!- carado has joined. 08:48:30 -!- epicmonkey has joined. 08:51:12 -!- ais523 has joined. 09:12:19 -!- sivoais has quit (Quit: Lost terminal). 09:53:27 -!- ais523 has quit (Read error: Connection reset by peer). 09:53:40 -!- ais523 has joined. 10:01:34 -!- ais523 has quit (Read error: Connection reset by peer). 10:01:38 -!- ais523_ has joined. 10:13:47 -!- monqy has quit (Quit: hello). 10:29:01 -!- epicmonkey has quit (Remote host closed the connection). 10:29:20 -!- epicmonkey has joined. 11:01:58 -!- ais523_ has quit (Ping timeout: 244 seconds). 11:16:40 -!- Arc_Koen has quit (Quit: that's dr. turing to you, punk). 11:45:36 -!- sivoais has joined. 12:53:30 -!- Arc_Koen has joined. 12:59:46 -!- boily has joined. 13:02:51 what's the opposite of verbose? 13:03:18 for instance how 'd you call a language where there are only symbols and no text at all 13:03:25 terse? 13:03:29 "Quiet" is quite often used in terms of command line arguments. 13:03:36 But a "quiet language" sounds a bit silly. 13:03:45 concise? 13:03:59 ion: TERSE is a trademark of JimNeiL, you can't use it. 13:04:15 laconic? 13:04:18 (Though possibly only when spelled uppercase like that.) 13:04:20 "terse" seems to imply you're using words, but no more than the right amount 13:04:43 (And I have to admit I couldn't actually find these trademark registrations in any databases.) 13:13:45 -!- carado has quit (Ping timeout: 268 seconds). 13:22:08 APL 13:24:54 Perhaps "APLy", to coin an adjective. 13:26:00 Better not use APL, Apple will sue you. 13:41:51 -!- copumpkin has quit (Quit: Computer has gone to sleep.). 13:42:08 -!- elliott has joined. 13:58:34 -!- Phantom__Hoover has joined. 13:58:59 -!- Phantom_Hoover has quit (Ping timeout: 265 seconds). 14:01:16 -!- copumpkin has joined. 14:20:30 -!- copumpkin has quit (Ping timeout: 264 seconds). 14:25:51 -!- copumpkin has joined. 14:29:01 -!- pumpkin has joined. 14:30:26 -!- copumpkin has quit (Ping timeout: 255 seconds). 14:30:26 -!- pumpkin has changed nick to copumpkin. 14:45:23 I just took a psychological survey. The question it asked was kind of amusing. 14:45:33 -!- epicmonkey has quit (Remote host closed the connection). 14:45:39 You see, there's this runaway trolley. 14:45:44 -!- epicmonkey has joined. 14:45:59 On the track in front of a trolley, there are five oak branches. If the trolley hits the oak branches, the branches will be destroyed. 14:46:38 However, there is a footbridge above the track that has one large oak branch on it. You can push the branch off the bridge and onto the track. 14:47:29 If you do, the one large oak branch will be destroyed, but it will stop the trolley, causing the other five oak branches to remain intact. 14:47:34 Is it morally acceptable to do this? 14:49:07 is the joke that the oak branches are people 14:49:23 It's not a joke. 14:49:28 it is 14:51:26 -!- augur has quit (Remote host closed the connection). 14:59:08 Fantastic :) 15:00:48 or not. 15:01:06 Why the fuck does burlesque have no binary shifts! 15:01:48 well 15:01:53 *2 should do the trick. 15:02:22 tswett: well that depends, aren't you concerned that stopping the trolley might be too big a side-effect? 15:02:46 I guess it may be, yeah. I didn't think about that. 15:04:23 well I'll let you think about it, see you later 15:04:37 -!- Arc_Koen has quit (Quit: that's dr. turing to you, punk). 15:10:13 -!- atriq has joined. 15:12:34 I need to say more stupid things in #haskell 15:12:56 Or be less of an attention seeker 15:12:59 One of the two 15:13:34 :) 15:16:25 trololol 15:16:46 I've had one quote on the Haskell Weekly Blog, ever 15:16:50 28th of June 15:17:36 i've had like 15 15:17:41 clearly i am a better person than you 15:18:20 I'm gonna find that list of stupid things I've said 15:20:11 Hmm 15:20:48 I can't find it 15:22:07 `pastlog atriq 15:22:35 Touché 15:22:45 2012-08-18.txt:16:48:55: The one in New York'd be my guess 15:22:51 http://www.youtube.com/watch?v=wnNWz7amCwE 15:23:05 why do things this beautiful exist :'( 15:25:46 (That thing actually has an onboard microprocessor to calibrate and alternate the engine voltage because that's very slightly lighter than mechanical alternatives.) 15:27:14 -!- augur has joined. 15:27:36 Having ice cream for lunch was either a very good or a very bad idea 15:28:37 > (0$0$) 15:28:38 The operator `GHC.Base.$' [infixr 0] of a section 15:28:38 must have lower prec... 15:31:32 ice cream for lunch, bonghits for dinner 15:36:43 what's bonghits? 15:43:22 -!- oerjan has joined. 15:48:42 whee, new Drive comic 15:50:08 yay? 15:52:55 it's been on a long hiatus 15:53:11 also, http://www.drivecomic.com/ 15:53:58 Aaaargh 15:54:06 TVTropes just used "whom" incorrectly 15:54:31 It's the case of the subjunctive clause, not the main cause, that decides whether it's "who" or "whom" 15:54:43 ...says the person who never ends a sentence with a full stop 15:55:39 -!- Phantom__Hoover has quit (Ping timeout: 260 seconds). 15:55:56 atriq: And in many idiolects, it's just "who". 15:56:23 pikhq, the fact that they're using the word "whom" implies they are not using one of those idolects 15:56:42 you're an idolect 15:56:49 *+i 15:57:53 shut up idolect 15:58:15 we should not tolerate whomsoever would do such a horrible thing 15:58:23 :P 15:58:47 oerjan: did you ever see my awful haskell horror 15:58:54 probably not 15:59:21 oerjan: http://hpaste.org/76553 16:01:54 i still think we should not tolerate whomsoever would do such a horrible thing 16:02:14 I've edited the article in question 16:02:39 (Must Have Caffeine, in the entry for the Big Bang Theory) 16:08:45 -!- mindlessDrone has joined. 16:09:18 ah i've been having an opportunity to watch tv recently, which has finally brought me in contact with that series. 16:09:40 Thoughts on it? 16:09:42 i have far too many similarities to Sheldon. not the lack of empathy, but otherwise... 16:09:53 So do we all 16:09:53 well i laughed. 16:10:51 does "all" refer to just this channel, or most people... 16:11:04 that show is so bad 16:12:24 kmc: sarcasm? 16:12:40 no 16:12:44 Big Bang Theory is really bad 16:13:17 kmc++ 16:14:09 hey let's make an unfunny laugh track multicamera sitcom except we base it around nerd stereotypes instead of racial stereotypes and gay people stereotypes and NOW NERDS LOVE US 16:14:26 basicaly yes 16:14:30 nerds don't act that way 16:14:32 people don't act that way 16:14:53 that type of sitcom is really just a vehicle for delivering one liner jokes 16:15:05 i could just watch standup comedy instead and be infinitely less annoyed 16:15:24 but are your reasons for hating it themselves nerdy? *ducks* 16:15:37 probably 16:15:38 kmc: it wouldn't even be so objectionable if it was, you know, actually funny 16:15:39 who gives a shit 16:16:26 i have watched a fair amount of BBT and also a fair amount of two and a half men (same creater) 16:16:34 and then one day i was just like "why?????" 16:16:36 next you'll tell me you also hate phineas & ferb, the other show i've just started watching 16:16:36 and quit 16:16:50 i've never seen phineas & ferb, and i have no opinion on it 16:17:00 i mean if you enjoy BBT, then go ahead and watch it, don't let me tell you not to like something 16:17:23 it's not like i didn't ever laugh while i was watching it 16:18:24 i did get a glimpse of two and a half men too, and i didn't like that 16:20:27 Trivia: Big Bang Theory doesn't actually have a laugh track 16:21:12 clearly we have differing definitions of laugh track. 16:21:13 or laugh. or track. 16:21:29 It's filmed in front of a live audience 16:21:35 yeah 16:21:43 these things are technically different, but you take my meaning 16:21:47 that's still a laugh track 16:21:59 it exists for the purpose of putting laughs in because that makes people laugh more 16:22:10 either way it completely changes the pacing of the show 16:22:14 and i suspect most "live audiences" are directed when to laugh, or at least mixed misleadingly 16:22:32 the characters will say something and then just stand there for 1-2 seconds while people laugh 16:22:36 there are good sitcoms with laugh tracks 16:22:46 IT Crowd, for example 16:22:54 it probably wouldn't lose much if it didn't have the laugh track though 16:23:00 but it isn't annoying imo 16:23:01 That Mitchell and Webb Look has a laugh track and is very good, but it's sketch comedy 16:23:27 i think Peep Show doesn't 16:23:31 can't recall 16:25:11 I don't think so 16:25:26 though it's amazing how little attention I pay to things like that 16:32:19 -!- FreeFull has joined. 16:37:44 ^ul (((1)S:^)(!(0)S:^)):^(^!^!^^!^^^!^)^ 16:37:44 01101001 16:38:30 ^ul (S:):((x)~^(y)~^(z)~^)^ 16:38:31 xyz 16:38:51 ^ul ((:a~*(x)):a~*(x))(~^S~:^):^ 16:38:51 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ...too much output! 16:39:12 ^ul (((x))(!(y))(!!(z)))^!^S 16:39:12 y 16:39:29 ^ul (((9)S)(!(8)S)(!!(7)S)(!!!(6)S)(!!!!(5)S)(!!!!!(4)S)(!!!!!!(3)S)(!!!!!!!(2)S)(!!!!!!!!(1)S)(!!!!!!!!!(0)S))^(!)(::*:**)^^^ 16:39:29 5 16:42:28 Excellent, the examples all work 16:43:29 -!- Vorpal has joined. 16:43:48 -!- oerjan has quit (Quit: Supper). 16:45:14 -!- atriq has quit (Quit: Leaving). 16:48:25 What is ul? unlambda? 16:48:35 underload 16:48:56 > print "01101001" 16:48:57 16:49:04 > "01101001" 16:49:06 "01101001" 16:49:11 > "xyz" 16:49:12 "xyz" 16:49:17 > repeat 'x' 16:49:19 "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx... 16:49:26 > 'y' 16:49:27 'y' 16:49:31 > 5 16:49:32 5 16:51:13 Which examples were those? 16:51:24 Oh, there isn't an oerjan any more. 16:53:49 RIP oerjan 16:58:19 -!- barts__ has joined. 17:01:38 -!- barts_ has quit (Ping timeout: 260 seconds). 17:10:11 -!- Phantom__Hoover has joined. 17:16:54 -!- epicmonkey has quit (Ping timeout: 264 seconds). 17:35:35 pikhq: How does Go implement interface method dispatch when interfaces are entirely implicit? PICs. 17:36:03 Straight from Rob Pike. 17:36:42 meaning what? 17:37:00 -!- lowtax has left ("Leaving"). 17:37:24 Polymorphic inline cache. It inlines particular addresses to dispatch to based on particular types. 17:40:34 Gregor: what's the context here 18:28:22 > let xs = 0 : zipWith (\x y -> 1 + x + 3*y) xs (concatMap (\x -> [x,x]) xs) 18:28:23 not an expression: `let xs = 0 : zipWith (\x y -> 1 + x + 3*y) xs (concatMa... 18:28:26 > let xs = 0 : zipWith (\x y -> 1 + x + 3*y) xs (concatMap (\x -> [x,x]) xs) in xs 18:28:27 [0,1,2,6,10,17,24,43,62,93,124,176,228,301,374,504,634,821,1008,1288,1568,1... 18:29:47 -!- epicmonkey has joined. 18:31:15 -!- Gregor has quit (Excess Flood). 18:31:23 -!- Gregor has joined. 18:37:10 -!- Nisstyre has quit (Read error: Operation timed out). 18:37:30 I'm pondering a notion of "bigness" of numbers. Let's define the number 3 has having a bigness of 1, 3 -> 3 as having a bigness of 2, 3 -> 3 -> 3 as having a bigness of 3, 3 -> 3 -> 3 -> 3 as having a bigness of 4, and so on. 18:37:53 Using conway's arrows? 18:37:56 Yep. 18:38:00 Graham's number must then have a bigness between 3 and 4. So what should its bigness be, exactly? 18:38:30 How big is A(6,3) 18:39:15 Well, that's the same as... 2 -> 6 -> 4, I think? So it looks like its bigness is around 3. 18:40:37 It's 2 ^^^^ 6, or 2 ^^^ 2 ^^^ 2 ^^^ 2 ^^^ 2 ^^^ 2. I'm reasonably sure its bigness is greater than 3, then, since 3 -> 3 -> 3 is only 3 ^^^ 3. 18:42:23 -!- mindlessDrone has left. 18:51:23 @tell ais523 tavern isn't run by the devs 18:51:24 Consider it noted. 18:51:28 TREE(3) could very well have a very large bigness. 18:53:17 what happened to oerjan? 18:54:35 A very long supper, based on the quit message. 18:54:53 Actually I suppose it's been only two hours so far, that's not so long. 19:00:24 Gregor: Huh. 19:16:22 * tswett ponders what's between 3 -> 3 -> 3 -> 2 and 3 -> 3 -> 3 -> 3. 19:16:54 What's a simple number that's subjectively midway between them? 19:17:02 * copumpkin wonders what the first decimal digit of TREE(3) is 19:17:12 The way that 3 -> 3 -> 3 -> 2 is subjectively midway between 3 -> 3 -> 3 -> 3 and 3 -> 3 -> 3 -> 1. 19:19:00 or even the first digit of graham's number 19:19:50 tsethat's a silly definition 19:19:59 *tswett: that's a silly definition 19:20:16 It's not a definition at all; it's an example. 19:20:20 of bigness 19:20:21 4 has bigness 2 and 1 by your def 19:20:39 Huh? 19:20:45 4 = 4 19:20:47 4 = 2 -> 2 19:21:21 You're overgeneralizing. This definition of bigness is only for numbers of the form 3 -> 3 -> ... -> 3 -> 3. 19:21:56 tswett: A(100,100)? 19:22:27 then Graham's number has no bigness 19:22:34 FreeFull: Wikipedia says that's (2 -> 103 -> 98) - 3. 19:22:39 Well, its bigness is, so far, undefined. 19:25:49 -!- augur has quit (Remote host closed the connection). 19:26:10 Lessee. If you define E(n) as 3 -> 3 -> (n) -> 2, then 3 -> 3 -> 3 -> 2 is E(3) whereas 3 -> 3 -> 3 -> 3 is... E(E(27)), I guess. And 27 = E(1). 19:26:29 What's subjectively midway between E(3) and E(E(E(1)))? I dunno. E(E(2))? 19:27:44 -!- augur has joined. 19:28:23 -!- Bike has joined. 19:31:26 If I could just think of a function that takes 3 to 3 -> 3, 3 -> 3 to 3 -> 3 -> 3, 3 -> 3 -> 3 to 3 -> 3 -> 3 -> 3, and so on... 19:31:45 -!- Nisstyre has joined. 19:36:44 f(x) = x -> 3 19:37:09 Unless you mean 3 -> 3 becomes 3 -> 3 -> 3 -> 3 -> 3 19:52:26 FreeFull: That's not how -> works. 19:53:24 See http://en.wikipedia.org/wiki/Conway_chained_arrow_notation#Interpretation 19:56:46 2 -> 3 -> 2 is not 2 -> (3 -> 2), nor is it (2 -> 3) -> 2. 19:59:08 fast growing function, then. 20:09:33 -!- augur has quit (Read error: Connection reset by peer). 20:09:59 -!- augur has joined. 20:21:10 -!- copumpkin has changed nick to john_smith. 20:23:17 -!- john_smith has changed nick to copumpkin. 20:29:38 -!- epicmonkey_ has joined. 20:29:47 -!- epicmonkey has quit (Ping timeout: 244 seconds). 21:17:49 -!- carado has joined. 21:24:07 -!- monqy has joined. 21:24:30 monqy: help 21:24:47 hello 21:24:57 monqy: awwww dammit 21:25:01 hi monqy, elliott, monqy, shachaf 21:25:07 shut up 21:25:14 hi shachaf 21:25:35 -!- carado has quit (Ping timeout: 244 seconds). 21:29:09 -!- boily has quit (Quit: Poulet!). 21:41:38 -!- epicmonkey_ has quit (Ping timeout: 260 seconds). 21:52:25 -!- Arc_Koen has joined. 21:53:33 -!- Vorpal has quit (Ping timeout: 276 seconds). 22:02:07 -!- FreeFull has quit (Quit: Sleeep? Sleep! ???). 22:02:22 -!- copumpkin has quit (Quit: Computer has gone to sleep.). 22:19:18 -!- augur has quit (Remote host closed the connection). 22:23:35 -!- copumpkin has joined. 22:41:10 Hm. Conway's chained arrow notation makes sense for ordinal numbers. 22:42:28 Let w = omega. Then w -> w is simply w^w. w -> w -> w is... I guess we have to say it's the limit of w -> w -> n for natural numbers n. 22:42:47 tswett: any extension of arithmetic does, pretty much 22:43:34 -!- Phantom__Hoover has quit (Ping timeout: 240 seconds). 22:44:50 Which... let's assume that it still corresponds to up-arrow notation; that means w -> w -> w is the limit of w ^(n) w for natural numbers n, where ^(n) is n up-arrows. 22:46:53 w ^(2) w is epsilon_0, isn't it? Then I have no idea what w ^(3) w is, and w ^(w) w must be really, really big. 22:47:27 -!- augur has joined. 22:49:22 -!- Phantom_Hoover has joined. 22:49:43 tswett: epsilon_0? 22:51:04 Yeah. http://en.wikipedia.org/wiki/Epsilon_nought 23:49:51 http://phpmanualmasterpieces.tumblr.com/ 23:54:01 Tex Wasabi Rock-N-Roll Sushi BBQ