00:08:05 -!- epicmonkey has quit (Ping timeout: 260 seconds). 00:22:13 -!- myndzi\ has quit. 00:33:25 elliott: if the commit is never made when canary is removed, why would the modification date change... <-- it seems to be comitted when the content changes 00:33:34 dunno if u noticed that 00:33:53 but the date is still ..wrong 00:35:17 (i'm a canary noob) 00:35:33 of course i noticed 00:36:21 is that an old story or sth? 00:36:29 oklofok: you handed out drugs to underage youngsters!? 00:37:02 no, just poison 00:37:06 hth 00:37:16 oh, in that case, ok 00:37:43 `pastelog rm.*canary 00:38:14 No output. 00:39:01 `run pastelog rm.*canary 00:39:17 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.20862 00:40:01 `pastelog > canary 00:40:14 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.10517 01:21:13 -!- state has joined. 01:22:15 -!- state has quit (Client Quit). 01:28:13 `quote 01:28:15 139) Vonlebio: well, i'm only back in denmark because my work visa expired. please insert token to continue. 01:28:56 "Television Review: ‘Deadliest Space Weather’ on Weather Channel" 01:30:38 Uncategories are, like, crazy, man. 01:30:56 coid :: p x x -> ? 01:31:10 Where ? is either Void or p b a 01:31:21 mpose :: p t s -> Either (p t x) (p x s) 01:31:25 Examples: 01:31:29 Type inequality 01:31:41 -!- Phantom_Hoover has quit (Remote host closed the connection). 01:31:59 Also, "only one of b and a is inhabited" 01:32:02 huh, yes 01:32:05 < would be an example. 01:32:23 This is apparently called "cotransitivity" and "irreflexivity", when you talk about relations. 01:32:28 if t≠s, then for any x, either t≠x or x≠s 01:32:34 In http://www.fnds.cs.ru.nl/ccorn/documentation/doc008.html 01:33:01 http://ncatlab.org/nlab/show/linear+order calls it "comparison"? 01:33:31 I'm trying to think of other examples. 01:33:41 Ideally ones that you can express in Haskell. 01:33:50 Unfortunately you run into the ol' intuitionism barrier. 01:33:57 I.e. you don't know whether to pick "Left" or "Right". 01:35:41 what are the laws for coid and mpose? 01:38:28 Not sure. 01:38:55 The types came up naturally from trying to make Bizarre a Category. 01:39:13 I'm ending up with a lot of weird classes this way. 01:39:15 it's pretty cool how that can happen! 01:39:24 Yep. 01:39:26 (_u :: forall p x y a. p (x,y) a -> Either (p x a) (p y a)) 01:39:29 (_u :: forall p b x y. p b (Either x y) -> Either (p b x) (p b y)) 01:39:35 (_u :: forall p t s x. p t s -> Either (p t x) (p x s)) 01:39:42 Oh, that's mpose. 01:39:48 (_u :: forall p b b' a a'. p (b,b') (a,a') -> Either (p b a) (p b' a')) 01:39:57 (_u :: forall p a b x. (a -> b) -> p b x -> p a x) f 01:40:03 I don't know the names for any of these. 01:40:26 (Well, the last one is just the contravariant half of a profunctor, actually.) 01:42:00 On the one hand I never get things like that happening in most other programming languages. 01:42:17 On the other hand I never have a need to talk about this sort of thing in other languages. 01:43:07 coid = co-identity, yes? 01:43:19 Yep. 01:43:23 well you don't really have a *need* in Haskell either 01:43:23 Identity is () -> p a a 01:43:42 kmc: Well, sure. But this all came up from trying to actually do things. 01:43:43 Haskell facilitates thinking of things in a more structered way and with lots of powerful abstractions 01:43:48 ...And then generalizing them over and over. 01:43:55 yeah 01:44:10 in another language you would just not generalize, or generalize in a terribly ad-hoc way 01:44:31 although certainly Haskell has less support for terribly ad-hoc generalization than some languages 01:44:37 Bike: And mpose = co-compose. 01:44:58 kmc: That doesn't stop people from trying. :-) 01:45:42 it's strange that in each case we can think of, the momohorphisms or whatever are just proofs, and don't have interesting content 01:45:47 whereas for categories they are things like functions 01:46:17 you only need a single value of type NotEq s t, and you don't care what it is really 01:46:28 Well, p a a -> Void is a pretty unusual type when you're working with values. 01:46:46 unless you are working with continuations ;) 01:47:06 cmccann said it reminded him of his dual-intuitionistic logic experiments. 01:47:18 That's where you have ¬¬a -> a, but you don't have a -> ¬¬a 01:47:39 huh 01:48:31 Apparently you get all sorts of interesting behaviors, though I'm not sure what they are. 01:50:25 -!- Nisstyre has quit (Ping timeout: 248 seconds). 01:59:16 So maybe most Bizarro classes just aren't interesting in programs? 02:00:52 In the bizarro world, p a b -> p (Either b a) b turns into p b (Either b a) -> p b a 02:01:34 I guess that's not interesting from the perspective of p=inequality, or proofs, or whatever. 02:01:47 I suppose that only comes about from categories. With profunctors you get sane (but weird) things. 02:02:35 p a a -> Void intuitively means you _never_ have p's between equal types... 02:02:47 Right. 02:02:59 I think it might actually just be p x x -> p b a 02:06:34 p x x -> Either (p x a) (p b x) ... -> Either (Either (p x b) (p b a)) (Either (p b a) (p a x)) 02:08:29 wait what 02:09:04 p x x -> Either (p x a) (p a x) ... -> Either (Either (p x b) (p b a)) (Either (p a b) (p b x)) 02:15:50 -!- Nisstyre has joined. 02:20:27 what's Either? 02:22:12 http://blog.exodusintel.com/2013/01/07/who-was-phone/ nice exploit, taking advantage of an unbounded alloc() to collide the stacks of two threads 02:22:15 like half-nelson.c 02:22:16 @src Either 02:22:16 Source not found. You speak an infinite deal of nothing 02:22:26 * oerjan swats lambdabot -----### 02:22:42 Arc_Koen: data Either a b = Left a | Right b 02:23:09 Oh, newsham posted that link the other day. 02:23:12 * shachaf hasn't read it yet. 02:23:14 cool 02:23:42 oerjan: I actually don't know what that means 02:23:51 it's a tagged union of a and b. 02:23:55 what does the equal sign represent? the result of a function call? 02:23:59 and the pipe sign? 02:24:01 Arc_Koen: When using Either as a monad, the Left value would be like Maybe's Nothing but with added context 02:24:06 Arc_Koen: you're french you know ocaml right? 02:24:10 oh is this an in-joke 02:24:12 indeed 02:24:38 so it's like type ('a,'b) either = Left of 'a | Right of 'b 02:24:39 (but I don't know what a monad is, though I've seen this word used quite a lot around here) 02:24:46 oh, ok 02:24:48 thank you 02:25:02 :) 02:25:11 ignore FreeFull it's going to be way over your head if you don't understand basic data types yet :P 02:25:28 kmc: Now explain monads to him in terms of ocaml 02:28:24 sig type 'a t; val return : 'a -> 'a t; val bind : 'a t -> ('a -> 'b t) -> 'b t; 02:28:33 that's the signature of a monad t 02:28:41 i copied that out of some monad tutorial for ocaml 02:28:58 but i won't link to it because i don't want to endorse a monad tutorial i haven't read, because most things called "monad tutorial" are terrible 02:29:23 hmmmm ok 02:29:31 anyway so it's not a big deal what a monad is, mechanically 02:29:46 the trick is seeing why they are useful, and learning how to use various spceific monads 02:30:14 and i don't know of a way other than to learn one specific monad, then another, and so on until you kind of get the abstraction 02:31:27 since you know ocaml you could probably learn about monads in haskell without too many prerequisites 02:31:37 so for instance something like 'a t = 'a list , with return x -> [x] and bind [x1; ...; xn] f -> f x1 @ ... f xn would be a monad? 02:32:18 Yep. 02:32:22 is @ list concat? 02:32:30 yup 02:32:34 yeah, looks right then 02:33:13 in Haskell, bind is written infix as >>= 02:33:20 and there is some syntactic sugar as well 02:33:37 well that doesn't sound particularly uninteresting but why is there someone talking about monads *any and every day* here? 02:34:01 as an extension of someone talking about haskell any and every day here? 02:34:11 hmmm that would make sense 02:34:32 you can write "do { x <- a; b }" to mean "a >>= (\x -> b)" 02:34:34 but I'm pretty sure I overread ais523 talking about monads in brainfuck or something 02:34:35 though i don't think i've actually noticed a ton of monad talk. just jokes about comonads. 02:34:44 \ vars -> body is the lambda syntax in haskell 02:34:44 ERROR:Word not found 02:34:49 hi oonbotti 02:34:52 I was assuming it was some kind of algebraic structure 02:34:59 well it is that too 02:34:59 it is. 02:35:26 for that it is more convenient to ditch 'bind' and use 'join' instead 02:35:48 it's a monoid for endofunctors. which, assuming i'm not any stupider than usual, would make composition one 02:35:49 join : ('a t) t -> 'a t 02:36:00 so for lists, join concatenates together a list of lists 02:36:08 oonbotti: you are quiet. too quiet. 02:36:09 oerjan: Perhaps you would like me to be quiet. too quiet.. 02:36:26 you can write bind in terms of join, and vice versa, except for one detail 02:36:30 but i will let someone else take over now 02:36:40 wow, if i google "endofunctor" i get the joke. fuck 02:36:52 oonbotti: eliza is so common. couldn't you be parry instead? 02:36:52 Bike: Why do you ask that? 02:36:58 `? endofunctor 02:36:59 Endofunctors are just endomorphisms in the category of categories. 02:37:05 oonbotti: because it'd be cool. 02:37:06 Bike: What other reasons come to mind? 02:37:21 oonbotti: because i've written up eliza myself, therefore it must be boring. 02:37:22 Bike: Is that the real reason? 02:42:31 Arc_Koen: Monad doesn't seem that interesting mostly because it isn't that interesting, as an abstraction all on its own. 02:42:47 ok 02:43:17 But individual monads can be interesting, and the value of the abstraction is that there are a lot of operations that work on any monad at all. 02:43:28 And those operations get specific meanings for specific monads. 02:43:34 makes sense 02:44:26 Arc_Koen: In general you can vaguely think of "'a t" as being an "action" that "produces" 'as, along with having some arbitrary effects. 02:44:36 Tht description might not be that helpful without seeing some concrete cases, though. 02:44:45 no I think it is 02:44:49 In the case of lists, the effect is nondeterminism. 02:45:06 So in Haskell you say: do { x <- [1,2,3]; y <- [4,5,6]; ... } 02:45:11 And each combination of 02:45:33 > do { x <- [1,2,3]; y <- [4,5,6]; return (x,y) } 02:45:34 [(1,4),(1,5),(1,6),(2,4),(2,5),(2,6),(3,4),(3,5),(3,6)] 02:45:38 Will be given to the variables in turn. 02:45:43 I'm not sure what "bind" would mean for "actions" though 02:46:12 Well, take "'a t" to mean "something that either gives you an a, or throws an exception". 02:46:31 yes 02:46:43 Then bind gets an ('a t) and an ('a -> 'b t), and gives you 'b t 02:46:53 yes 02:47:00 Can you see what that might do? 02:47:19 some weird composition 02:47:29 Right. 02:47:41 In particular it'll try to run the ('a t), and if that throws an exception, it'll throw that exception. 02:47:49 yes 02:47:53 If that succeeds, it'll pass it to your function. 02:47:57 yes 02:48:00 You can use this to implement your own exception scheme. 02:48:09 hmmmm not sure I understand 02:48:21 Let's say we only care about success or failure. 02:48:27 ok 02:48:32 Does ocaml have Option? 02:48:35 indeed 02:48:39 That's also a monad. 02:48:43 type 'a option = Some of 'a | None 02:48:51 * shachaf doesn't know ocaml syntax at all. 02:48:53 @src Maybe 02:48:54 data Maybe a = Nothing | Just a 02:48:57 yay! 02:49:04 Option is a simple "exception" monad. 02:49:06 @botsnack 02:49:07 :) 02:49:10 well that's just a type; I guess you'd need two functions return and bind to make it a monad 02:49:24 Right. 02:49:31 Can you write those? 02:49:32 @src Maybe return 02:49:32 return = Just 02:49:35 sure 02:49:55 return x = Some x 02:50:15 -!- copumpkin has quit (Ping timeout: 260 seconds). 02:50:46 -!- copumpkin has joined. 02:51:22 bind x f = (if x = Some y then f y else None) 02:51:35 Looks reasonable. 02:51:50 So you can look at a value of type "'a option" as an "action" which will either give you an 'a or fail. 02:51:57 yes 02:52:17 So in Haskell, you might say: do { x <- foo; y <- bar; return (x + y) } 02:52:31 uhhhhhhhhm 02:52:31 Where foo :: int option, bar :: int option 02:52:37 That's the same as, uh... 02:52:41 ok 02:52:54 wait 02:52:57 bind foo (\x -> bind bar (\y -> return (x + y))) 02:53:08 return is supposed to take you one level higher 02:53:30 so return (x + y) would be Some (Some x + Some y) or something 02:53:35 which doesn't make much sense to me 02:53:55 No, x and y are ints. 02:54:05 foo and bar are int options 02:54:18 so <- is some syntactic suger I don't know about then 02:54:33 Right, sorry. I guess it was only glossed over before. 02:55:02 do { x <- foo; ... } means bind foo (fun x -> do { ... }) 02:55:38 Does that make sense? 02:56:02 it would probably, at any other time than 4am 02:56:26 yes it kind of makes sense 02:57:11 well thank you for your help 02:59:40 -!- copumpkin has quit (Ping timeout: 256 seconds). 03:00:11 -!- copumpkin has joined. 03:05:03 So wait 03:05:49 no waiting! 03:05:50 Is saying "A monad is just a monoid in the category of endofunctors" the same as saying "A monad is a monad" 03:06:03 -!- david_werecat has joined. 03:06:07 "the same" in what sense? 03:06:30 the first obviously has more information, like "just" denigrating the concept, and then the everything else 03:06:47 but maybe the latter is more useful to leibniz WHO KNOWS 03:07:13 this is how definitions commonly work in mathematics 03:07:25 you might define what monoid, category, and endofunctor are 03:07:45 then because it's a hassle to write "monoid in the category of endofunctors" over and over, you give a name to that concept 03:08:10 and before you know it, you're up on that mathematical ebonics 03:08:39 Well, id x = x but you could just as well write id x = fromJust (Just x) 03:08:48 -!- DHeadshot has quit (Read error: Connection reset by peer). 03:08:53 what does that have to do with anything? 03:09:07 obviously there are multiple possible definitions of what a monad is 03:09:10 i think this is some weird kind of trolling 03:09:12 useful in different contexts 03:09:19 http://en.wikipedia.org/wiki/Extensionality hth 03:09:20 The second one requires defining Maybe but the effect is the same 03:09:25 if i link tao's blog will everybody be stunned into silence? 03:09:42 the tao that can be linked is not the true tao 03:09:48 what oerjan said 03:10:23 * FreeFull has no idea who tao is 03:10:30 terence tao, a mathematician. 03:10:34 FreeFull: is there a difference between saying "a square is a rectangle with equal-length sides" and saying "a square is a square"? 03:10:36 a damn good one. 03:10:42 http://terrytao.wordpress.com/2009/10/19/grothendiecks-definition-of-a-group/ Here, FreeFull. 03:10:54 on proof and progress is well worth reading if you haven't 03:11:34 (also: a group is just a category with one object and a whole shitton of inverses~) 03:11:53 Bike: How about "a monoid is a category with one object"? 03:12:00 A group is a groupoid with one object. 03:12:11 -!- monqy has joined. 03:12:11 works for me 03:12:23 What is a groupoid? 03:13:10 a category with a whole shitton of inverses 03:13:30 So it's a cocococococococococococococategory? 03:13:39 no, but yes 03:13:48 It's a paradox? 03:13:53 it's like a group, but instead of being able to 'multiply' any two elements, you can only multiply elements whose 'types' match, in the manner of a category 03:13:59 that would be an antinomy 03:16:00 FreeFull: http://en.wikipedia.org/wiki/Intensional_statement#Examples_of_intensional_statements 03:17:11 in particular the second example is almost the same form 03:18:27 -!- WeThePeople has joined. 03:41:00 elliott, monqy Fiora 03:47:57 -!- DHeadshot has joined. 03:58:51 -!- aloril has quit (Ping timeout: 260 seconds). 04:05:58 -!- DHeadshot has quit (Ping timeout: 256 seconds). 04:11:28 -!- DHeadshot has joined. 04:11:58 -!- aloril has joined. 04:12:01 -!- Arc_Koen has quit (Quit: Arc_Koen). 05:01:46 The creator of ping died in 2000 05:02:27 I'm still not used to thinking of Internet pioneers as people who are alive, so to read what he wrote, think he is still alive... and then he was dead since 2000 05:03:29 i remember reading about a project to archive videos of lectures given by CS pioneers before they all die 05:03:53 since the entire field was created within living memory 05:04:17 I will never cease to be shocked by that 05:04:35 (Well, maybe I'll live long enough that it's no longer within living memory) 05:05:29 So linear orders, i.e. <, aren't equivalent to total orders, i.e. ≤, in constructivism. 05:05:59 And the former is "more fundamental" 05:06:45 Sgeo_: out of curiosity, how old are you? 05:06:53 if you don't mind me asking 05:06:53 23 05:06:56 oh 05:06:58 ok 05:07:05 presumably this is related to that whole uncomputability of equality businezzzzz 05:07:24 Bike: I don't think it really is? 05:07:26 Well, possibly. 05:07:47 you don't think it's related? 05:08:06 Normally I think of them as being equivalent because you can just use (not (y ≥ x)) as (x < y), or something. 05:08:33 But, like sailors, constructivists have to be careful with their nots, 05:08:39 s/.$/./ 05:08:40 and if there's anything intuitionists like, it's negation everywhere 05:08:47 *groan* 05:08:48 oh, your joke is better. 05:13:14 more seriously negation of those operations isn't very computable, is it 05:14:27 -!- aloril has quit (Ping timeout: 260 seconds). 05:22:55 -!- Nisstyre has quit (Ping timeout: 240 seconds). 05:25:29 so near the end of last year i learned to my surprise that groupoids are groups with types; i had somehow mixed them with magmas. 05:26:07 only problem is that like a year ago we published an article with a small thing about groupoids 05:26:11 which is about magmas 05:26:49 LIFE 05:26:50 OVER 05:26:56 -!- aloril has joined. 05:27:06 oh so you're the bastard confusing me about what everything means 05:28:38 oklofok: yeah the word "groupoid" is somewhat ambiguous 05:35:33 rails exploit is out: https://github.com/rapid7/metasploit-framework/blob/4c1e501ed09e1633fb57c0f2e30a946fa219f835/modules/exploits/multi/http/rails_xml_yaml_code_exec.rb 05:35:44 -!- Nisstyre has joined. 05:49:12 -!- Nisstyre has quit (Ping timeout: 256 seconds). 05:52:50 oerjan: it's used like that sometimes? 05:53:07 i've seen both meanings before, anyway 05:53:15 i can't actually open the officially published version so i don't remember if we had that portion in there 05:53:20 oh 05:53:22 kay 05:53:26 good 05:53:28 although the one we used was the category one 05:54:03 well i didn't even think it was worth checking that it means magma, so it would make sense that i have actually seen someone define groupoid that wa. 05:54:04 y 05:54:58 you will note that http://en.wikipedia.org/wiki/Groupoid contains a disambiguation link 05:55:40 "The term magma for this kind of structure was introduced by Nicolas Bourbaki. The term groupoid is an older, but still commonly used alternative which was introduced by Øystein Ore." 05:56:00 MUST BE GOOD IT'S NORWEGIAN 05:56:42 THE GUY WHO INVENTED THE OTHER DIDN'T EVEN EXIST 05:57:55 my guess would've been that the reason <= is a bad order is that unlike in real math, in constructivism you can't mod out the classes of equals 05:59:21 not that i know anything about anything 05:59:40 @quote farpotshket 05:59:40 andr00 says: Today's software engineering word is "farpotshket." This is a Yiddish word meaning, "broken, because someone tried to fix it." 05:59:47 useful word 06:00:10 (HWN is out!) 06:00:11 oh man, that is a quality word 06:00:28 maybe it should go groupoid, monoid, semigroup, semimonoid 06:00:31 erm 06:00:37 hemidemisemimonoid 06:00:40 group, monoid, semigroup, semimonoid 06:00:48 iss that like a hemidemisemiquaver 06:00:53 yes 06:00:59 excellent 06:01:16 sesquimonoid 06:01:16 it is a monoid but only 1/64 of the usual laws apply 06:01:27 how do you pronounce yiddish 06:01:32 me? poorly 06:01:54 no i mean is farpotshket pronounced as it is in english 06:02:20 so how can this be generalized to the reals kmc. how can we have only 1/euler's constant laws apply? 06:03:38 -!- Nisstyre has joined. 06:05:12 @tell elliott how come you get into HWN with borrowed quotes 06:05:12 Consider it noted. 06:05:28 @tell elliott *@ask 06:05:28 Consider it noted. 06:05:46 oerjan: Which quote? 06:06:00 I think that might've been my fault. 06:06:01 the half the things one 06:06:06 I don't think he said that. 06:06:26 oh. 06:06:31 i see. 06:06:38 oerjan: See, you shouldn't believe everything you read. 06:06:42 @tell elliott sorry it's all shachaf's fault 06:06:43 Consider it noted. 06:06:43 elliott didn't say half the things he said. 06:06:53 oerjan: Hey I'm not *sure* it was my fault!! 06:07:47 Content-Type: text/plain; charset=iso-8859-1 06:07:47 06:07:47 Arvoisa vastaanottaja, 06:07:47 K ytt oikeushakemuksenne roolille "10_L_HR__XX_XX_Yleisrooli (ERP300)" on hyv ksytty. 06:07:47 K ytt oikeus on voimassa 10.01.2013 - xx.xx.xxxx. 06:07:47 06:07:47 Certia IDM / SAP 06:07:54 waht is this 06:08:20 @quote schneier 06:08:21 mm_freak says: bruce schneier is an endofunctor that turns all automorphisms into identities 06:08:43 might be easier to answer if you knew what it says 06:08:47 i think that technically means bruce schneier skeletizes people 06:09:31 oklofok: MAYBE 06:10:25 dear recipient, your usage license for the role "10_L_HR__XX_XX_Yleisrooli (ERP300)" has been accepted. the license is valid 10.01.2013 - xx.xx.xxxx. 06:10:57 yleisrooli means general role, in hr, h probably comes from henkilöstö = staff 06:11:15 free ERP! 06:11:18 good forever! 06:11:34 @wn ERP 06:11:35 No match for "ERP". 06:11:37 i like that you included the content type 06:11:38 shachaf: are you to blame for the tac precipitate one too? 06:11:46 oerjan: ? 06:11:50 erp is enterprise resource planning 06:11:53 @quote precipitate 06:11:53 tac says: If you're not part of the solution, you're part of the precipitate 06:11:57 kmc: it's normal for people to write content type in the message? 06:12:00 also a borrowed quote 06:12:03 oerjan: No. 06:12:14 I don't approve of borrowed quotes in lambdabot. 06:12:24 Unless they're attributed to their original author. 06:12:26 @quote SimonPJ 06:12:26 No quotes match. Maybe you made a typo? 06:12:30 @quote simonpj 06:12:30 simonpj says: Maybe if I had an Oleg implant I could express all this in the type system 06:12:32 kmc: that was just the body of the message 06:12:50 huh 06:12:55 well you know 06:13:00 HTTP, SMTP, basically the same 06:13:44 @quote blame 06:13:44 OlinShivers says: My God, no one could blame me -- no one! -- if I went off the edge and just lost it completely one day. 06:13:47 @quote blame 06:13:47 quicksilver says: three new mersenne primes in the past couple of months I blame the financial crisis [...] out of work bankers have nothing better to do that calculate primes. 06:13:50 @quote blame 06:13:50 gwern says: believing in conspiracy theories means always being hopeful that at least there's someone to blame 06:13:52 @quote blame 06:13:52 quicksilver says: three new mersenne primes in the past couple of months I blame the financial crisis [...] out of work bankers have nothing better to do that calculate primes. 06:14:00 heh 06:14:24 @quote blame 06:14:24 lennart says: [August 1990] DON'T BLAME HASKELL WHEN THINGS GO WRONG 06:14:43 @quote augustss 06:14:43 augustss says: Haskell already has enterprise monads; there is a fail method. 06:14:45 @quote doing.blame 06:14:46 cmccann says: some people blame themselves, some people blame the language, but the people who really know what they're doing blame shachaf. 06:15:33 Racket is all about blame 06:15:49 mhmmmm 06:15:50 the blame paradigm of programming 06:16:50 that gives me a deja vu feeling but there's no such language on esolang 06:18:27 at least there is the blame calculus, although that's probably actually useful 06:19:19 "Threesomes, With and Without Blame" nice name for a paper 06:19:24 http://homepages.inf.ed.ac.uk/wadler/topics/blame.html 06:19:46 OKAY 06:20:07 helloerjan 06:20:20 When you're a logreader, everything is a quote. 06:22:15 `addquote When you're a logreader, everything is a quote. 06:22:21 905) When you're a logreader, everything is a quote. 06:27:46 Is Racket officially called "Racket (formerly PLT Scheme)" now? I don't think I've seen a paper that talks about Racket without noting that it used to be called PLT Scheme 06:28:16 `quoerjan 06:28:19 569) i am sorry to disappoint you, but my musical taste is on the side abba, verdi, and celine dion. i know this may not be popular and that you would have preferred me to be a satanist. \ 16) oerjan: are you a man, if there weren't evil in this kingdom to you! you shall find bekkler! executing program. please let me go... put me 06:28:33 fungot: 06:28:43 fungot.......................... 06:28:46 fizzie........................... 06:28:50 Whoops. 06:30:06 the fun got away 06:33:07 `quote 904 06:33:08 904) what is this set? sounds like shakespear Yes, that's what people often say about Chrono Trigger. 06:33:43 hi monqy 06:33:47 hi shachaf 06:33:54 Do you know anything about weird reverse categories? 06:34:08 what's so weird about them????? 06:34:19 where did fungot got to 06:34:27 I think it a split. 06:34:41 ↯ 06:35:02 Because I just restart-reconnected it, and it seemed to do just fine, but now I can not massage to it. 06:35:14 It is on morgan.freenode.net. 06:35:15 monqy: well they're backwards!! 06:35:22 whoa, weird 06:35:24 monqy: Also I don't think they make any sense in Haskell? 06:35:30 double weird 06:35:32 because, like, parametricity???? 06:36:49 -!- Bike has quit (Ping timeout: 248 seconds). 06:51:12 -!- oerjan has quit (Quit: leaving). 07:06:44 -!- WeThePeople has quit (Quit: Leaving). 07:12:58 -!- FreeFull has quit. 07:22:19 -!- Lumpio- has quit (Ping timeout: 260 seconds). 07:48:24 -!- Lumpio- has joined. 08:00:56 -!- david_werecat has quit (Ping timeout: 246 seconds). 08:05:27 -!- Taneb has joined. 08:06:28 monqy: http://25.media.tumblr.com/tumblr_lpa3ccigYU1qmqpiro1_1280.jpg 08:06:55 yes 08:07:43 shel 08:07:49 yes 08:07:59 i think i have a book with that one in it somewhere(where???) 08:08:13 i should find it. i like(remember liking) that book 08:18:13 -!- fungot has joined. 08:18:24 (I just went ahead and changed servers.) 08:18:51 fungot: welcome back 08:18:52 shachaf: are comments to code needed at any time. i don't know turt 08:18:57 ^style 08:18:57 Available: agora alice c64 ct darwin discworld europarl ff7 fisher fungot homestuck ic irc* iwcs jargon lovecraft nethack pa qwantz sms speeches ss wp youtube 08:19:16 ^style isn't persistent, so it's in the default onw. 08:19:17 Not found. 08:19:22 fungot: Not surprising. 08:19:22 fizzie: that's where we're going, we could be discussing who said what to whom all afternoon) 08:29:22 -!- impomatic has quit (Quit: http://corewar.co.uk). 08:37:51 -!- epicmonkey has joined. 08:55:57 Sgeo_: Why didn't you notify me of the pbfcomics.com update? 08:59:40 -!- GreyKnight has joined. 08:59:50 shachaf: pbf update 08:59:51 GreyKnight: You have 1 new message. '/msg lambdabot @messages' to read it. 09:07:29 related to earlier discussion about CRTs: http://www.bbc.co.uk/news/technology-20957218 09:13:28 You could totally optical-TEMPEST those and see what your neighbour is watching on their TV. 09:14:18 (Does UK still do non-digital over-the-air TV?) 09:15:17 I think it is all turned off now 09:15:53 There are units to decode digital signals into something you can plug into the aerial socket of an analogue TV though, so these B&W models will still be useful. 09:15:54 So you'll need a box for that B&W TV. 09:15:57 I don't think the switchover is over yet. 09:16:04 "In answers to questions about some of the comics being missing from the website: the web content has been decimated to make the book more special." 09:16:24 The digital switchover process involved discontinuing analogue terrestrial TV broadcasts, which in some areas allowed for greater signal strength and/or better coverage of digital multiplexes. The process concluded on 24 October 2012, when digital switchover completed in Northern Ireland (the same day as the Republic of Ireland also completed its digital switchover [13]). 09:16:31 Hmm, okay. 09:16:40 I haven't really been keeping track, I don't have a TV myself (wouldn't have time to watch one anyway) 09:16:43 GreyKnight: Or you can go and buy a new black-and-white TV with an integrated DVB receiver. (Good luck finding one.) 09:16:57 Sgeo_: yeah I saw that too :-( 09:19:19 Sgeo_: It occurred to me that Qoppa could be "simplified" by making vau only take 1 parameter. Curried operatives, tasty :-) 09:19:46 Our analogue terrestial TV shutdown was September 1st, 2007, and back then (IIRC) the DVB receivers were having quite a bit of software troubles, especially when it came to DVB "bitmap" style subtitles sent by YLE. 09:22:41 * Sgeo_ needs to thoroughly read the Qoppa post 09:25:31 Oh I forgot about (bind)'s destructuring capabilities, I guess it is still possible but a bit more complex 09:25:41 -!- ais523 has joined. 09:26:37 (Also the company providing cable TV in our company is pushing also the DVB-T signals via the cable, as a compatibility thing for people with DVB-T (as opposed to DVB-C) tuners. There are always rumours it's going to stop, but it was still going on the other day.) 09:31:00 http://www.youtube.com/watch?v=DCBOSO4KnyU this video seems to be 1 second long but plays for longer 09:31:07 I don't get how that's possible 09:31:37 time travel 09:31:56 Time dilation. 09:32:20 TIME COMPRESSION, as seen in Final Fantasy VIII. 09:32:27 (It's total nonsense.) 09:32:34 ^style ff7 09:32:34 Selected style: ff7 (Full script of the game Final Fantasy VII) 09:32:42 fungot: What do you know about TIME COMPRESSION? 09:32:43 fizzie: what's this...... then...... i have to live in that chair and drink your goddamn tea! 09:32:51 Not much, apparently. 09:34:11 http://images3.wikia.nocookie.net/__cb20070918012703/finalfantasy/images/4/4c/Time_Compression.jpg <- that's what it looks like, however. 09:34:37 no spoilers, I am playing FFVIII and haven't got that far :-( 09:35:09 Oh no. 09:35:15 I just spoiled it all. 09:35:23 Had you heard of TIME COMPRESSION, though? 09:35:30 NUUUUUUU 09:35:33 (yes) 09:35:48 Well, that's good, at least. 09:36:12 Sgeo_: I would like to revise my earlier report. Taking complex (bind) structures into account I don't think you can reduce vau below two parameters. 09:36:46 consider the difference between (vau (a (b c)) ...) and (vau ((a b) c) ...) for example 09:36:56 not to mention (vau (a b c) ...) of course! 09:37:19 hm maybe with some (let) jiggerypokery... 09:37:28 fi:vau == en:wow. 09:37:50 Oh Qoppa must be a really exciting language for Finns then! 09:41:43 GreyKnight, how does this sound? On the Racket side, using a macro like (from-qoppa) that would define it 09:42:12 which "it"? 09:42:22 e.g. (from-qoppa foo bar baz) expands into (begin (define foo (q 'foo)) (define bar (q 'bar)) (define baz (q 'baz))) 09:42:46 Where q is a function that calls the Qoppa interpreter with the purpose of retrieving the value named by the symbol 09:45:24 every time I try to type NIL today I type NUL instead 09:46:04 Sgeo_, how does it handle vaus? 09:46:51 When an operative is called as though it were a function, each value is wrapped in a quote form before calling the operative 09:47:04 This way, if the operative is a wrapped function, evaluation leads to the original value 09:49:17 Sgeo_ while loading it says 1:18 09:50:03 also another plugin I have that among other displays the % loaded, says: 196150% 09:50:44 it is also non-seekable :D 09:51:53 * c00kiemon5ter is out to hunt cookies 09:52:18 And the picture is black for me for the 360p and 480p quality levels, only appearing for 240p. 09:53:09 "A: 10.9 V: 0.0 A-V: 10.867 ct: 0.040 0/ 0 ??% ??% ??,?% 194870 0" mplayer is pretty confused about it too. 09:56:56 Sgeo_, hm does this solve the problem we had with higher-order functions? 09:58:07 (PS: I reckon that you can use (vau (x) ...) and a cons-matching (vau (a . b) ...) allows arbitrary destructuring in a curry-like manner. Not especially revolutionary though) 09:58:50 GreyKnight, yes, I think this is a sufficiently good solution 09:59:23 fizzie, the first time I played it, it was black until a certain point. When I replayed it, the image appeared 09:59:50 I'm still partly asleep but AIR the problem was trying to pass an operative to a HOF 10:00:53 Yes, and this gives what I think is a reasonable semantic to a Racket HOF attempting to call an operative 10:11:48 * GreyKnight tries to think. Suppose we have the Racket HOF (define (smap F L) (cond ((null? L) '() ) ((list? L) (cons (smap F (car L)) (smap F (cdr L)) )) (#T (F L)) ) ) 10:14:25 So it's a map that ... treat L like a tree? 10:14:40 Oh, I see 10:14:44 yeah pretty much 10:14:48 Don't see what the problem is though 10:15:04 (just a random function for me to think it through) 10:15:06 Also, maybe pair? instead of list? 10:15:15 oops 10:15:29 I don't know if there is a problem, I just wanted to work through an example and see how it would interact with qoppa 10:21:38 so if F is an operative, it receives one of '(car L) or '(cdr L) or 'L as its argument each time. Then it can eval those in the current environment and get the actual value 10:24:19 That wasn't the idea 10:24:42 of course that means the qoppa-operative needs to be able to understand what's in the environment passed from Racket but presumably you can introspect that okay 10:24:43 oh 10:24:54 * Sgeo_ wonders how that would work 10:25:32 what did you mean by quoting the arguments then? 10:26:30 If F is an operative, and I call it from racket like (F (car L)), if L is '(1 2), F sees (quote 1) 10:26:58 If F is in fact a function, when it goes to evaluate (quote 1), it gets 1 back, and thus does whatever it was going to do 10:32:04 ah so the value that we pass to smap as F isn't actually the operative directly, but something lambda-like that evaluates its arguments, quotes the resulting *value*, and passes that to the real operative 10:32:46 I am not sure how to write something that creates such a wrapper in Racket 10:33:52 ((lambda (x) (quote x)) 1) just gives 'x, of course; maybe some #%app magic can do it? 10:33:55 GreyKnight, yes. (Although in Racket, evaluating the arguments is automatic) 10:34:05 well yeah 10:34:27 I just don't know how to quote the value rather than the parameter 10:34:45 Well presumably, we just pass a list '(quote x) to the operative, since the operative will be be what's trying to evaluate it 10:35:05 (lambda (x) `(quote ,x)) 10:37:43 ...how did I forget how to quasiquote kill me now 10:40:07 (lambda (x) (list 'quote x)) would give the same result, if that helps 10:43:36 something like (define (qoper O) (lambda A (apply-qoppa-oper O `(,@A)) ) ) should pass down the values of the racket-expressions under quotation (assuming I've got enough levels there) 10:44:07 *sigh* time was I could do that in my sleep 10:44:22 Ah, sleep, I remember that stuff. Good times. 10:47:34 -!- Phantom_Hoover has joined. 10:48:37 heh, fizzie, Sgeo_ http://www.youtube.com/watch?v=DCBOSO4KnyU#t=1s 10:48:40 Phantom_Hoover, did you see the update 10:48:58 c00kiemon5ter, huh, interesting 10:49:00 how many damn times do i have to tell you that i fell behind 10:49:02 ie, skip the first second and everything is back to normal 10:49:25 Phantom_Hoover, unfall behind 10:49:49 i don't answer to you! 10:50:35 Phantom_Hoover: you're on the List 10:50:38 you don't have a choice 10:50:54 no 10:50:57 im busting the list 10:51:03 -!- Phantom_Hoover has changed nick to Phatnom_Hoover. 10:51:12 what now sgeo 10:51:16 what now 10:51:50 p sure phatnom hoover is on the list too 10:51:58 its not nicks on the list ph 10:51:59 its people 10:52:31 be no people, be no list 10:53:13 unbecome a human 10:53:39 this is all too much 10:53:39 -!- Phatnom_Hoover has quit (Quit: Leaving). 10:54:08 could not perform the ritual to forfeit his humanity. remains on the list forever. 10:54:09 @tell Phantom_Hoover escape through a fractal core, he can't follow you! 10:54:09 -!- sploknee has joined. 10:54:09 Consider it noted. 10:54:26 sploknee: hi Phantom_Hoover 10:54:40 who is phantom hoover ? 10:54:44 good question 10:54:49 i am sploknee 10:54:51 `welcome sploknee 10:54:54 welcome sploknee. 10:54:56 sploknee: 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. (For the other kind of esoterica, try #esoteric on irc.dal.net.) 10:55:01 -!- DH____ has joined. 10:55:01 welcome monqy 10:55:11 wow 10:55:15 -!- DHeadshot has quit (Read error: Connection reset by peer). 10:55:17 HackEgo sure can type fast 10:55:25 yeah he's like a wizard 10:55:28 at the keyboard 10:55:30 In a way, aren't we all Phantom_Hoover? 10:55:51 im not 10:56:07 im not nearly good-looking, charming or intelligent enough to be phantom hoover 10:56:11 GreyKnight, I assume that includes the creator of Ook? 10:56:29 includes the inventor of there once was a fish named fred 10:56:32 sploknee: agreed 10:56:50 Sgeo_, well he does have the same initials as-- as phantom hoover 10:56:52 i suppose 10:57:25 i like you sploknee 10:57:38 elliott: he's much better than PH that's for sure 10:57:45 * GreyKnight can't stand that guy 10:57:57 except not as good looking charming or intelligent 10:57:59 pfff 10:58:01 perhaps it's because of his cutting insights into how awful northern ireland is 10:58:12 he sounds like the sort of guy who'd make those 10:58:41 I'll give him some cutting insights if he comes here 10:59:17 see, this is why nobody likes northern ireland 10:59:52 @tell Phantom_Hoover elliott: he's much better than PH that's for sure * GreyKnight can't stand that guy 10:59:52 Consider it noted. 10:59:53 btw sploknee have you heard of sgeo's "list"? it's like a rite of passage here. really, most of us are here because of this list, so i wouldn't be surprised if you came here for it 11:00:21 sploknee: i confess i literally just realised you're ph 11:00:42 wh 11:00:49 i blame the lowercase?? 11:00:52 monqy, oh no i wouldn't be interested in that sort of thing 11:01:07 is that a yes or a no!!!!! 11:01:08 is a really confusing new person welcome going on right now? 11:01:15 Fiora: old person welcome 11:01:15 elliott, but i-- am sure phantom hoover speaks in lower case all the time 11:02:12 monqy: i don't think you can truly distinguish the list and the channel 11:02:27 `welcome sploknee 11:02:28 if entering the channel gets you on the list, and you cannot get off the list, does it not follow that you cannot leave the channel? 11:02:29 sploknee: 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. (For the other kind of esoterica, try #esoteric on irc.dal.net.) 11:02:38 GreyKnight: you can't just use the same `welcome multiple times 11:02:39 except if you're me 11:02:48 elliott, that assumes that leaving the channel would mean you leave the list 11:03:21 `emoclaw elliott 11:03:23 ​(.tan.lad.cri no ciratosa# yrt ,aciratosa fo dnik rahto aht roF) .agaP_niaM/ikiw/gro.sgnalosa//:ptth :ikiw ruo tuo kcahc ,noitamrofni arom roF !tnamyolpad dna ngisad agaugnal gnimmargorp ciratosa rof buh lanoitanratni aht ot amoclaW :ttoilla 11:03:35 * Sgeo_ is now addicted to That Mitchell and Webb Look 11:03:52 don't worry you'll run out soon enough 11:04:07 is this because of that number wang thing? I remember it was inspired by something with "Look" in its name 11:05:09 Sgeo_: do I get /msg updates if I leave the channel 11:05:29 whether or not your body gets updates, your spirit remains on the list eternally 11:05:35 monqy: numberwang is http://www.youtube.com/watch?v=AIxz6BDmTNU which is from that mitchell and webb look 11:05:41 yes ive seen numberwang 11:06:12 then ye 11:06:24 monqy: but have you seen "a history of numberwang"... 11:06:35 i dont think so....but i like numberwang........... 11:06:38 simon! 11:06:41 he's from space 11:06:46 https://www.youtube.com/watch?v=-r6NY4Kl8Ms "it's a history of numberwang" 11:07:13 I sort of watched all the Quiz Broadcast stuff and am now watching season 4, so I kind of already saw those sketches 11:07:15 :/ 11:08:03 -!- oonbotti has quit (Ping timeout: 245 seconds). 11:09:05 \ x -> we can talk about lambda calculus without oonbotti interrupting us now 11:09:17 you know what's criminally underappreciated? 11:09:22 the armando ianucci shows 11:09:35 i suspect it's due to prejudice against the scots 11:12:40 BARGAINS BARGAINS BARGAINS 11:12:47 aha 11:12:50 has Sgeo_ gone mad 11:12:59 can he continue the list in this state 11:16:37 bargains 11:16:52 fungot: bargains 11:16:52 GreyKnight: hojo has named me, and you mr. leader! get out. these things take time. 11:19:35 -!- Nisstyre has quit (Ping timeout: 240 seconds). 11:21:31 Hojo? Not Hinjo? 11:23:15 why would fungot lie 11:23:16 monqy: all right! don't be wastin' time. you understand, don't worry!! move, will be a guinea pig, if it's for justice or revenge, or them folks-- none of that explosion! 11:23:50 fungot is strongly against exploding guinea pigs 11:23:50 GreyKnight: oh yeah, well that ain't even started wit' you yet! 11:26:06 Hinjo is a character in OOTS. Hojo is not. 11:26:44 that doesn't answer my question.....sgeo........ 11:27:17 ^style 11:27:18 Available: agora alice c64 ct darwin discworld europarl ff7* fisher fungot homestuck ic irc iwcs jargon lovecraft nethack pa qwantz sms speeches ss wp youtube 11:28:14 fizzie: why no OotS style :< 11:28:35 I HATE MY CAT. Also, we need Homestuck styl 11:28:36 style 11:28:47 ^style homestuck 11:28:47 Selected style: homestuck (Homestuck pages 1901-4673) 11:28:50 Oh 11:28:51 derp 11:28:51 you realise theres 11:28:52 :-U 11:28:55 already 11:29:25 fungot: what's this homestuck carryon all about anyway? 11:29:26 GreyKnight: it just doesn't feel secure the matriorb and hatch a new mother has any shit they want to scrape off their bulge on to a particular type of three-way relationship of a black president 11:29:38 What. 11:33:24 fizzie: so is there like a script we can run over some corpus of text to produce a fungot style, or is it more involved? (I may have already asked this) 11:33:24 GreyKnight: what the hell 11:33:33 fungot: no u 11:33:33 GreyKnight: in a good way though. sounds more like " the one", a casual shrine to an amazing actor. the film. you're just a run of the mill little psycho girl, a troll caegar a dozen. adventure awaits prototyping. but unlike all eleven other players only get one extra. 11:34:18 -!- Nisstyre has joined. 11:34:25 ^style fungot 11:34:25 Selected style: fungot (What I've said myself) 11:35:05 (Y fungot) 11:35:32 imo there should be a style for dinosaur comics can someone make this happen 11:36:39 -!- sploknee has quit (Ping timeout: 260 seconds). 11:38:11 if SOMEBODY would tell us how to make styles... 11:39:09 the secret to making styles is for the styles to already be there 11:42:02 fungot: there's no point in us setting the style if you don't say anything 11:42:03 ais523: if it's ( syntactically) long underwear all ready. name ( in other parts, written in c, it's dlopen(). if it's computable, it's compilable 11:42:31 -!- Nisstyre has quit (Ping timeout: 276 seconds). 11:42:56 -!- sploknee has joined. 11:42:58 I HATE MY CAT. Also, we need Homestuck styl 11:43:07 maybe your cat hates you 11:43:15 have considered discussion your problems with your cat 11:43:20 sploknee: remember that time I didn't know you were PH 11:43:21 good times 11:43:36 who's PH 11:44:03 -!- Sgeo_ has changed nick to LowerMoreAcidic. 11:45:08 could've at least gone for HalfOfPKaMinusLogC 11:45:12 -!- Taneb_ has joined. 11:45:25 sploknee, I don't actually know that much detail about pH 11:45:34 `welcome Taneb 11:45:36 Taneb: 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. (For the other kind of esoterica, try #esoteric on irc.dal.net.) 11:45:37 `welcome Taneb_ 11:45:39 Taneb_: 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. (For the other kind of esoterica, try #esoteric on irc.dal.net.) 11:45:49 * GreyKnight breaks out the methyl orange 11:45:55 -!- Taneb has quit (Disconnected by services). 11:45:59 -!- Taneb_ has changed nick to Taneb. 11:46:22 -!- atriq has joined. 11:46:46 Okay, I've left my computer on at home 11:48:55 `emoclaw Taneb 11:48:57 ​(.tan.lad.cri no ciratosa# yrt ,aciratosa fo dnik rahto aht roF) .agaP_niaM/ikiw/gro.sgnalosa//:ptth :ikiw ruo tuo kcahc ,noitamrofni arom roF !tnamyolpad dna ngisad agaugnal gnimmargorp ciratosa rof buh lanoitanratni aht ot amoclaW :banaT 11:49:09 bananaT 11:49:12 Emoclaw's new 11:49:25 Yes, my secret is out 11:49:41 I'm actually a banana monad transformer 11:50:19 walcome? 11:50:52 Wait, Walcome, but it says Walcoma 11:51:00 Seems inconsistent 11:53:52 `rm bin/emoclaw 11:53:55 No output. 11:54:16 really we could do with a bunch of welcome filters that can be layered on each other 11:54:23 although, I don't get why we have this many welcome filters anyway 11:54:30 or any at all, for that matter 11:54:44 Composable welcome filters? 11:54:51 it could happen 11:54:54 Welcome filters are a category! 11:54:54 `emoclew elliott 11:54:56 ​(.ten.lad.cri no ciretose# yrt ,aciretose fo dnik rehto eht roF) .egaP_niaM/ikiw/gro.sgnalose//:ptth :ikiw ruo tuo kcehc ,noitamrofni erom roF !tnemyolped dna ngised egaugnal gnimmargorp ciretose rof buh lanoitanretni eht ot emocleW :ttoille 11:55:04 (well, I think they're just a monoid....) 11:55:16 -!- hagb4rd has quit (Ping timeout: 256 seconds). 11:55:21 category with one object is a category too 11:55:34 ais523: I had that thought too but couldn't be bothered implementing it :-) 11:56:30 IWBNI the filters could process the message and the person's nick separately 11:56:57 (for that matter preserving the URL would be nice too) 11:57:11 I feel a monad coming on...! 11:57:15 Why do I automatically think the filters should be written in Haskell 11:57:24 -!- Nisstyre has joined. 11:57:31 I can't just seem to say "Do it in Racket", my language of interest, pure functions like that make me think Haskell 11:57:44 GreyKnight: I don't think it's a Monad 11:58:43 Taneb: I think they're a semigroup, which is a special case of a category 11:59:07 ais523: the identity transformation makes it a monoid 11:59:28 Taneb, monads are like bananas!! 11:59:50 sploknee: in that analogies to explain either invariably suck? 12:00:09 Taneb: have /you/ seen a banana tutorial? 12:00:25 hmm, what apart from monads gets excessively many tutorials? 12:00:43 monads are like that 12:00:44 Drawing bodies? 12:00:52 Drawing people 12:01:14 Using Facebook 12:01:14 Monads are like drawing people, in that you learn them by doing, and the abundant tutorials all suck 12:01:25 There exists Facebook for Dummies 12:01:29 i've seen a banana tutorial 12:01:29 once 12:01:34 i forgot what was in it though 12:01:57 btw, I finally discovered what a burrito was, recently 12:02:02 they're kind of nice to eat 12:02:05 but don't really resemble monads 12:02:24 I prefer nachos 12:02:25 you didn't know what a burrito is?? I'm surprised 12:02:47 monqy: I'm British, they're not too common here 12:02:55 i ate burritos for years before knowing they were called that 12:02:56 ais523: a burritos kinda like a monad 12:03:12 In that you can put stuff in them and that makes them taste different 12:03:55 fizzie, can I transport fungot into another chatroom? 12:03:56 LowerMoreAcidic: " and this is a new game. there is no longer the wand the better part made mercie, i should think at least, that is expressions which have not been able, to assume responsibilities. he went on, " the conclusion is, then thou, the greatest soldier, de. she wanna be friends, his state vsurp'd, his realme a slaughter-house, his subjects, the european council decided at its meeting on 30 april, or even this very di 12:04:03 ^style 12:04:04 LowerMoreAcidic: ( that is, levinson went to kish, disappeared, had on your behalf of the commission is not allowed to use the crane, enter any two of these letters, a b y. 12:04:10 And you won't often find them in a crêperie. 12:04:20 ^styles 12:04:27 ^style 12:04:27 Available: agora alice c64 ct darwin discworld europarl ff7 fisher fungot* homestuck ic irc iwcs jargon lovecraft nethack pa qwantz sms speeches ss wp youtube 12:04:39 ^style ic 12:04:39 Selected style: ic (INTERCAL manual) 12:04:46 fungot, is this new? 12:04:47 Taneb: your code will cause this error, but you will have the same data as the funge-98 library::); however, it's worth putting a comment with some other intercal compiler maintainers may also want to test if a character, a choicepoint is also computed `create' statement a compile-time error, thus causing this to be used in the pair had different values ( that is supported ( apart from its use of the fingerprint is loaded.) 12:05:35 -!- Nisstyre has quit (Ping timeout: 260 seconds). 12:05:38 Depends on the chatroom? It kind of "supports" multiple channels, in the sense that it doesn't know anything about channels, it just replies to the channel where the message came from. 12:05:43 fungot: no it's been there for ages 12:05:43 ais523: intercal-72 c-intercal clc-intercal j-intercal yes all versions all versions 12:05:59 fungot: that's metadata, stop markoving it 12:06:00 ais523: the structure of an optimizer idiom ( in intercal-72, but it is not allowed to `stash' or similar behaviour with respect to your program. in base 2, 3, 4, 5, 6, 7 12:06:06 `addquote ais523: intercal-72 c-intercal clc-intercal j-intercal yes all versions all versions 12:06:06 fizzie: the main expression in place of the mechanisms available for writing comments. one common idiom is to make things confusing, refers to a onespot or twospot variables, as shown here, a program starts running. the complications that that array can also help pin down a bug. 12:06:09 906) ais523: intercal-72 c-intercal clc-intercal j-intercal yes all versions all versions 12:06:16 (I don't know, I just thought it looked funny.) 12:06:21 fizzie: that's one of the worst fungot quotes ever 12:06:21 ais523: 10 multithreading and backtracking extensions to intercal that is, there are various command line of the compiler will produce a `signature' for the full text of the distribution, information on how to fix this error. 12:06:28 that's basically at the top of every page in the manual 12:06:31 in a table 12:06:34 It was the "all versions all versions" bit. 12:06:42 oh, hmm 12:06:50 I guess if you interpret it as a sentence, not a table, it is kind-of funny 12:07:00 He just sounds so really enthusiastic about INTERCAL. 12:07:15 there's also a windows phone 7 impl 12:07:25 but it's very incomplete, it can only do hello world 12:08:30 fizzie, as in, if I took fungot's source, could I also take the Homestuck style? 12:08:30 LowerMoreAcidic: operand overloading. ( rather than the intercal-72 manual is: scalar variables, as used in the distribution called " build") match other things to be precise, anywhere after the statement, and gnu cpp and ld, for instance 12:08:35 And just run it somehow 12:08:46 ^source 12:08:47 http://git.zem.fi/fungot/blob/HEAD:/fungot.b98 12:10:01 LowerMoreAcidic: you on Sgeo's list? 12:10:30 LowerMoreAcidic: The style files sadly aren't publicly available as-is anywhere. But (one of) the tool(s) for making them are, so you can make your own Homestuck styles that would probably be just as good, if not better. 12:15:50 Taneb, who is this Sgeo who you speak of? 12:16:32 LowerMoreAcidic: I have no idea 12:16:34 Possibly me 12:18:13 we are all sgeo 12:19:09 -!- Nisstyre has joined. 12:38:55 the true secret of the list is that it has only one member 12:40:03 -!- oonbotti has joined. 12:40:27 -!- Taneb has quit. 12:41:46 -!- LowerMoreAcidic has changed nick to Sgeo. 12:45:38 -!- Nisstyre has quit (Ping timeout: 265 seconds). 12:49:26 -!- monqy has quit (Quit: hello). 12:57:41 -!- Nisstyre has joined. 13:00:34 ais523: feel free to improve my attempt at welcome filters: /hackenv/gktemp/welcome.hs 13:00:53 er http://sprunge.us/hiJM might be more readable 13:04:22 oh I can use case to deal with that reverseChar stuff 13:05:31 you realise ais523 doesn't know Haskell, right? 13:05:58 well 13:06:05 maybe he does know it 13:06:17 Does ais523 know about timed hits? 13:06:18 * Sgeo didn't realize 13:06:41 rewrite your program in OCaml and he might be able to help :P 13:08:23 elliott, iirc you said something about Racket's contract stuff being interesting 13:08:25 -!- david_werecat has joined. 13:09:26 i have no recollection of that 13:10:28 oh *well* 13:11:56 anyway the actual filters are just (String -> String), using the '@' character as a placeholder for the URL. So I guess I could break out to the shell and use a simple pipeline of scripts for filtering 13:12:02 (therefore you can write a filter in any language) 13:37:42 http://pastie.org/5661445 13:37:49 Really should be using for/fold 13:40:35 -!- DH____ has quit (Read error: Connection reset by peer). 13:40:40 -!- DHeadshot has joined. 14:03:17 `run gktemp/cwelcome | gktemp/target shachaf 14:03:19 shachaf: 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. (For the other kind of esoterica, try #esoteric on irc.dal.net.) 14:03:21 `run gktemp/cwelcome | tr a-zA-Z n-za-mN-ZA-M | gktemp/target shachaf 14:03:22 shachaf: Jrypbzr gb gur vagreangvbany uho sbe rfbgrevp cebtenzzvat ynathntr qrfvta naq qrcyblzrag! Sbe zber vasbezngvba, purpx bhg bhe jvxv: http://esolangs.org/wiki/Main_Page. (Sbe gur bgure xvaq bs rfbgrevpn, gel #rfbgrevp ba vep.qny.arg.) 14:03:27 yay filters 14:05:40 the filters are meant to process the URL too... 14:05:44 all the existing ones do 14:05:58 the name, also 14:06:11 also, target exists 14:06:14 `@ foo echo bar 14:06:15 foo: bar 14:08:46 elliott: I know a bit of Haskell, especially the semantics, I can't be bothered learning the syntax though :) 14:09:01 the existing ones *do* but IMAO they shouldn't, so there. 14:09:02 I've even written serious (if small) Haskell programs before 14:09:57 well your opinion sucks 14:10:01 no u 14:10:08 elliott: is that even an opinion? 14:10:31 Opinions are like categories: everything is one 14:10:31 ais523: unless IMAO means something completely different now, yes? 14:10:58 ais523: hmm, didn't we write that underload compiler in haskell? 14:11:09 I wonder if there are more innovations in Underload compilation to be made 14:11:12 elliott: oh, I thought that was directed at me 14:11:20 and yes, we did, but I thought it was entirely you writing it 14:11:27 and I had repo access for no obvious reason 14:12:01 ais523: hmm, maybe; I thought you wrote the initial version or something 14:12:09 no, you wrote the initial version 14:12:16 I mean, the initial non-Scheme version 14:12:18 so the... ditial 14:12:21 hmm 14:12:22 what's the word for the second thing? 14:12:26 btw, did anyone ever write a compiler that partially optimises integers? 14:12:42 elliott: I have an interpreter that partially optimises integers 14:12:46 but I can't remember what language it's for 14:12:50 it might be Overload or Underlambda 14:12:51 Underlambda, I think 14:12:57 but interpreters don't count 14:13:05 -!- Arc_Koen has joined. 14:14:15 Is there an Overlambda? 14:14:33 fizzie: no 14:14:51 it is possible that the name will eventually be used, given the direction Underlambda would be going in if I were working on it 14:15:36 ais523: hmm, I wonder if you can do partial type inference for Underload 14:15:40 to write an optimising compiler 14:16:01 that would let you eliminate lots of stack shuffling statically as well as tracking whether something stays a Smith integer 14:16:40 elliott: that's actually the test case I'm using for Anarchy :) 14:17:13 "Smith integer" you say 14:18:16 GreyKnight: elliott defined the term, not me 14:18:22 they're the concatenative versions of Church numerals 14:18:51 wasn't it actually oerjan 14:19:12 hmm, perhaps 14:19:15 I still think of them as Church numerals 14:19:17 but perhaps they aren't 14:19:40 btw, the Underlambda version of lists is much simpler than the Underload version, because I have a couple of extra primitives 14:19:49 one which just puts parens around the entire stack, effectively 14:20:09 and another one which can be used to test if the stack is empty 14:20:21 I think we agreed they differ from church numerals somehow 14:20:41 hmm, now I want to try writing an Underload type inferer 14:20:56 it sounds interesting 14:21:03 (inferrer?) 14:21:30 "concatenative" means it's based on Underload's * operator? 14:22:24 oh there's a section on [[Underload]] about it 14:23:00 GreyKnight: concatenativity is a property that some languages have 14:23:30 if P, Q are programs then PQ is a program? 14:23:34 it basically means that you can split a program at any point (except inside matched grouping operators like [] in BF) and get two separate programs, that can be composed (via the mathematical definition of composition) to form the original program 14:23:34 hmm, partially inferring Underload stack effects seems quite easy 14:23:37 ais523: have you done any work on this? 14:23:47 if P,Q are programs, then PQ is a program which means \x.Q(P(x)) 14:24:00 elliott: as I said, I'm using it as a test case for Anarchy 14:24:03 GreyKnight: concatenativity means that syntactic concatenation is semantic composition 14:24:10 ais523: oh, I didn't see 14:24:14 I also tried running it through OCaml's type inference machinery, but it's not tha good at it 14:24:17 ais523: so Anarchy, um, writes type inferers for you? 14:24:31 elliott: nah, I was compiling Underload into Anarchy 14:24:37 I don't mean inferring the types of the combinators, but rather inferring the stack effects of actual programs; obviously this will fail in some cases 14:24:43 (when there is a dynamic stack effect) 14:24:55 it's designed as a language in which to write type inferers, but this was to test its type inferer (which doesn't exist yet but I think I know how it will work) 14:24:55 but it seems like you could eliminate a lot of stuff statically like this 14:25:16 elliott: actually the motivating reason for Anarchy was that I've written something like three type inferers for work now and it's a lot of pain doing it in any existing language 14:25:24 OCaml's the least bad at the moment 14:25:32 it's alright in haskell :) 14:25:36 -!- hagb4rd has joined. 14:25:44 elliott: Haskell would have the same problems; actually slightly more because of no polymorphic variants 14:25:52 I don't think OCaml has the generic programming facilities Haskell does 14:26:10 probably Haskell is no better than OCaml for this kind of stuff for a novice though 14:26:16 here's an example: you have three similar type systems, most of the types are the same in all three systems but there are a few that differ 14:26:24 I know about OCaml's variants 14:26:29 and you want to automatically convert from one type to another 14:27:02 you can do similar stuff in other ways in Haskello jur st avoid the problem most of the time... of course it is an advantage but I don't believe it's comparable to the advantage of Haskell's generic programming facilities 14:27:08 in OCaml, whether or not you have polymorphic variants, you have to write a case statement on every constructor in your system, recursing into their fields, and writing the constructor on both the left or the right 14:28:12 yes 14:28:16 actually, the example I use in the Anarchy docs, in OCaml, it looks like this: let rec stringise_leaves = function | `Tree x y -> `Tree (stringise_leaves x) (stringise_leaves y) | `Leaf x -> `Leaf (string_of_int x) 14:28:17 that's the advantage Haskell has that I mentioned 14:28:21 you don't have to do that 14:28:24 how does that look in Haskell? 14:29:05 if you can't read the OCaml I'll explain it, but I think you can, it's pretty clear 14:29:32 btw, in Anarchy, it's stringise_leaves = | Leaf x -> string_of_int x | _ -> recurse 14:29:55 -!- sploknee has quit (Ping timeout: 240 seconds). 14:30:02 ais523: stringiseLeaves = everywhere $ mkT show 14:30:34 hmm, interesting 14:30:36 or, arguably, stringiseLeaves = everywhere . mkT $ \case { Leaf x -> Leaf (show x); x -> x } 14:30:50 or something of that form 14:30:55 everywhere presumably does magic similar to Anarchy's recurse? 14:31:06 more or less, though it's all just done with typeclasses 14:31:16 you can write your own instances of the Data typeclass it uses, but you probably don't want to 14:31:18 yeah, Anarchy's isn't very magical either, it just looks like it 14:31:28 that's the Scrap Your Boilerplate system; there are others, though, like Uniplate 14:31:54 (the lens package subsumes Uniplate and has an interface to Data.Data on which syb is built, also) 14:31:54 -!- sploknee has joined. 14:32:13 :t Node 14:32:14 a -> Forest a -> Tree a 14:32:19 The only difference I can see between Smith and Church integers is that the former's argument/return values go via a stack 14:32:32 > Node 123 [Node 456 [], Node 789 [Node 12345 []]] 14:32:33 Node {rootLabel = 123, subForest = [Node {rootLabel = 456, subForest = []},... 14:32:42 > Node 123 [Node 456 [], Node 789 [Node 12345 []]] & template %~ show 14:32:43 Node {rootLabel = 123, subForest = [Node {rootLabel = 456, subForest = []},... 14:32:48 er, right 14:32:52 > Node 123 [Node 456 [], Node 789 [Node 12345 []]] & template %~ (show :: Integer -> String) 14:32:54 Couldn't match expected type `GHC.Integer.Type.Integer' 14:32:54 with a... 14:32:59 er 14:33:05 what am I doing :) 14:33:28 GreyKnight: Smith integers don't respect typing the way Church integers do 14:33:35 ais523: right, my stringiseLeaves is actually wrong because it changes the type, I think 14:33:51 er, sort of 14:33:52 ^ul ((x))(:^:^:^)^SSSSSSSS 14:33:52 ...bad insn! 14:33:55 oh, never mind :) 14:33:56 err, hmm 14:34:06 ^ul ((x))(:^:^:^)^^SSSSSSSS 14:34:06 ...bad insn! 14:34:10 what am I doing wrong? 14:34:15 bad insn 14:34:24 yeah, but… 14:34:31 Hrm. 14:34:32 try using a better insn 14:34:36 ^ul ((x))(:*:*:*)^^SSSSSSSS 14:34:37 xxxxxxxx 14:34:38 ais523: you're running x I guess? 14:34:40 there we go 14:34:47 elliott: yeah, just trying to figure out what I'd typoed 14:35:09 can Haskell do the twice head thing? 14:35:09 fungot: Try being more helpful next time, please. 14:35:09 fizzie: intercal-72 c-intercal clc-intercal j-intercal no version 0.28+ no no 14:35:18 This one was much more negative. :/ 14:35:21 ais523: twice head? 14:35:25 fungot has gone off haskell :-( 14:35:26 GreyKnight: as an example of using `ick_create', that it's running as it doesn't matter where you need to insert shift codes; for information on the command rather than operating on it. 14:35:29 elliott: it's an example Reddit came up with 14:35:33 er intercal (easy to get them mixed up) 14:35:37 basically, "twice" is the church numeral for 2 14:35:44 ais523: you mean twice head :: [[a]] -> a? 14:35:46 for some twice 14:35:48 i.e. \f.\x.f(f x) 14:35:49 and yeah 14:36:11 ais523: I think any type system that can do that doesn't have decidable inference 14:36:19 or gives up some other important property anyway 14:36:25 the problem is trying to write the type of twice: it's (a -> b & b -> c) -> a -> c 14:36:28 err, I guess inference isn't the problem 14:36:31 ais523: yes, oerjan has written about this 14:36:43 it doesn't work :) 14:36:55 Anarchy does that, but it does indeed give up properties I think you'd consider important 14:37:13 actually, hmm 14:37:28 ais523: http://stackoverflow.com/questions/8296695/is-milner-let-polymorphism-a-rank-2-feature/8433852#8433852 14:37:35 in the absence of recursion, you could use SCC inference then linearization 14:37:43 you can't compute principle types, is the problem, I believe 14:37:47 so it's clearly recursion that makes it not work 14:37:54 elliott: yeah, I don't care about those at all in Anarchy :) 14:39:05 I decided to focus on the easier problem of "does this term have a type" at first order, rather than "what is the type of this term" 14:39:38 as in, work out if the term types or not, given all the arguments 14:39:45 this is all that's necessary to actually run a program 14:40:45 * elliott suspects your compiler is going to diverge a lot. 14:41:04 elliott: I hope not 14:41:16 I was planning to put some restrictions on recursion 14:41:22 and then the compiler would provably terminate 14:42:01 give language a maximum reduction depth of 65536 14:42:04 PROBLEM SOLVED 14:42:18 there are plausible reasons to want to recurse deeper than that 14:42:32 65537, just for a number that makes no sense whatsoever 14:42:33 thatsthejoke.gif 14:42:51 Sgeo: actually 65537 is one of the most easy-to-memorize largish primes 14:42:55 so it's quite frequently used 14:43:29 o.O 14:43:41 Use the first completely uninteresting integer 14:43:53 elliott: oh dear, I've got into an argument with my boss about whether "Hindley–Milner type inference" is a correct phrase or not 14:44:03 who is on what side? 14:44:23 I vaguely remembered that Hindley–Milner referred to the type system, rather than the inference alog 14:44:24 *algo 14:44:32 In type theory, Hindley–Milner (HM) (also known as Damas–Milner or Damas–Hindley–Milner) is a classical type inference method with parametric polymorphism for the lambda calculus, first described by J. Roger Hindley[1] and later rediscovered by Robin Milner.[2] Luis Damas contributed a close formal analysis and proof of the method in his PhD thesis.[3][4] 14:44:34 so wanted to rewrite it as "inference for Hindley–Milner types" 14:44:38 elliott: yeah, he just quoted that at me 14:44:48 Organizing their original paper, Damas and Milner[4] clearly separated two very different tasks. One is to describe what types an expression can have and another to present an algorithm actually computing a type. Keeping both aspects apart from each other allows to focus separately on the logic (i.e. meaning) behind the algorithm, as well as to establish a benchmark for the algorithm's properties. 14:45:01 looks like this is the kind of argument where one of the arguers is wrong 14:45:21 elliott: if you think it's fine, I'll be OK with it too 14:45:53 ais523: compromise: say Damas-Hindley-Milner, which is what neither of you are proposing 14:45:56 er 14:45:57 ais523: compromise: say Damas-Hindley-Milner type inference, which is what neither of you are proposing 14:46:14 (the idea of compromises is to pick something people aren't arguing over without actually resolving any objections, right?) 14:47:01 elliott: :) 14:47:17 "perfect" 14:49:54 ais523: btw, I am half-working on a language with variants like OCaml's 14:50:00 no guarantees it will become a thing though 14:50:10 polymorphic variants seem a bit like a band-aid, though 14:50:16 they don't seem to solve any problem except "having to declare what type something is" 14:50:32 well, they're fairly fundamental to my language 14:50:32 and they don't even solve that problem in some cases, e.g. ocamlyacc requires you to declare what type its output is 14:50:37 I don't really care what reason OCaml has them 14:50:42 from what I hear it does them badly 14:50:46 which means writing the type out by hand even when you have polymorphic variants 14:58:21 in particular, the same trick is useful for records 14:58:27 I forget how OCaml's record system works though, I think it has multiple 15:02:05 what, no lenses?? 15:15:04 ...if this code had any more boilerplate, it could be mistaken for an actual boiler 15:20:12 -!- impomatic has joined. 15:29:47 -!- augur_ has quit (Remote host closed the connection). 15:31:35 -!- sploknee has quit (Ping timeout: 240 seconds). 15:32:17 I wonder if any other languages have lens-like concepts 15:38:01 ais523: can we get some of the monad tutorial people to write lens tutorials maybe??? 15:38:11 I am eager to find out how to put some nuclear waste in a lens 15:39:23 `? lens 15:39:25 A lens is just a store comonad coalgebra. 15:40:25 -!- Nisstyre has quit (Ping timeout: 276 seconds). 15:50:56 -!- nooodl_ has joined. 15:53:22 -!- sploknee has joined. 15:55:07 -!- Nisstyre has joined. 15:56:52 -!- GreyKnight has quit (Quit: -->). 15:58:16 -!- mekeor has joined. 16:01:48 ahahah 16:01:51 http://www.gpo.gov/fdsys/pkg/GPO-HPREC-HINDS-V5/pdf/GPO-HPREC-HINDS-V5-11.pdf 16:01:54 wonderful 16:05:44 there are some truly brilliant moments in there 16:25:54 -!- GreyKnight has joined. 16:26:11 -!- Arc_Koen has quit (Quit: Arc_Koen). 16:26:16 coppro: hm is this from some nomic?? :^) 16:27:27 yes 16:29:44 I saw a few vaguely amusing bits but nothing really rib-tickling, maybe I missed them? 16:29:45 (Or maybe you need to be a Leftpondian to get them IDK) 16:35:14 -!- GreyKnight has quit (Ping timeout: 265 seconds). 16:36:05 Gregor: no 16:36:10 Gregor: it's from the US House of Representatives 16:37:55 -!- augur has joined. 16:46:15 -!- Arc_Koen has joined. 16:49:05 that is a nomic 16:51:52 this seems fun http://j.mp/ZwWCcX 16:52:44 Oops! Google Chrome could not find j.mp 16:56:47 fix your interwebz Sgeo! 16:57:23 Hmm, working now 16:57:45 -!- impomatic has quit (Quit: impomatic). 17:04:29 https://twitter.com/NRCC/status/289029749555212288 17:09:02 -!- Arc_Koen has quit (Quit: Arc_Koen). 17:11:18 -!- augur has quit (Remote host closed the connection). 17:16:42 -!- Zerker has joined. 17:16:46 -!- augur has joined. 17:17:50 -!- Zerker has quit (Remote host closed the connection). 17:18:04 -!- Zerker has joined. 17:25:10 -!- AnotherTest has joined. 17:25:16 Hello 17:26:35 -!- Frooxius has quit (Read error: Connection reset by peer). 17:27:53 -!- Frooxius has joined. 17:29:34 -!- Bike has joined. 17:29:45 -!- Zerker has quit (Read error: Connection reset by peer). 17:31:25 -!- Zerker has joined. 17:32:10 -!- augur has quit (Remote host closed the connection). 17:39:11 -!- FreeFull has joined. 17:39:20 -!- Zerker has quit (Quit: Colloquy for iPad - Timeout (10 minutes)). 17:39:32 -!- Zerker has joined. 17:41:53 Implementing STM isn't that difficult, is it? I mean, I can imagine implementing _efficient_ STM to be difficult, but STM in and of itself sounds simple enough 17:42:04 -!- carado has joined. 17:42:41 Sgeo: That's true for a lot of things 17:43:48 -!- carado has quit (Remote host closed the connection). 17:47:11 -!- Gracenotes has quit (Ping timeout: 246 seconds). 17:47:37 Sgeo, hey can phantom hoover come off the list please 17:47:59 Only if sploknee goes on it. 17:48:18 are people really seriously not allowed to get off the list 17:48:23 i am willing to accept this sacrifice 17:48:23 * Sgeo is joking 17:48:37 @djinn (Either (t -> s) (s -> t) -> Void) -> Not (Either (t -> x) (x -> t) -> Void) -> Not (Either (x -> s) (s -> x) -> Void) -> Void 17:48:37 f a b c = 17:48:38 void (c (\ d -> 17:48:38 case d of 17:48:38 Left e -> void (b (\ f -> 17:48:38 case f of 17:48:39 Left g -> void (a (Left (\ h -> void (a (Left (\ _ -> e (g h))))))) 17:48:40 Although I'll need to force myself to remember somehow 17:48:41 Right _ -> void (a (Right (\ i -> void (a (Left (\ _ -> i)))))))) 17:48:43 Right j -> void (b (\ k -> 17:48:45 case k of 17:48:47 Left _ -> void (a (Right (\ l -> void (a (Left (\ _ -> l)))))) 17:48:49 Right m -> void (a (Right (\ n -> 17:48:51 void (a (Right (\ _ -> m (j n))))))))))) 17:49:03 i love that function!! 17:51:15 The problem with people leaving the list is that I might forget that they're off the list 17:51:44 don't you only have like three people on the list. how hard is that 17:52:05 Sgeo so help me god if you don't remove me from that list i will call you names so nasty you will never want to hear a spoken word again 17:53:30 -!- Gracenotes has joined. 17:59:53 -!- atriq has changed nick to Taneb. 18:00:35 Taneb, make Sgeo take me off the list 18:00:36 please 18:01:14 Sgeo, keep sploknee on the list at all costs 18:01:14 sploknee, you are as off the list as it is possible to be 18:01:28 (i.e. within the limits of my memory) 18:01:45 (shachaf ends up on the list sometimes, and he absolutely hates homestuck) 18:02:00 -!- Lumpio- has quit (*.net *.split). 18:02:00 -!- oklofok has quit (*.net *.split). 18:02:00 -!- Sanky has quit (*.net *.split). 18:02:00 -!- elliott has quit (*.net *.split). 18:02:00 -!- myndzi has quit (*.net *.split). 18:02:04 you aren't going to notify me when i change my nick back to Phantom_Hoover, then? 18:02:14 -!- elliott has joined. 18:02:15 -!- Lumpio- has joined. 18:02:17 -!- oklofok has joined. 18:02:24 -!- myndzi has joined. 18:02:27 -!- Sanky has joined. 18:02:38 -!- elliott has changed nick to Guest87682. 18:03:30 sploknee, right 18:03:58 right, remove elliott from the list too and your crimes will be entirely attoned for 18:05:37 I have no reason to believe that Guest87682 want to be taken off the list 18:05:47 Oh god, some people are changing their nicks 18:05:56 This must be what everyone else feels like, all the time 18:06:14 -!- Guest87682 has changed nick to elliott. 18:06:20 -!- elliott has quit (Changing host). 18:06:20 -!- elliott has joined. 18:06:39 * Bike plays the fiddle as Taneb burns 18:08:02 Taneb already burnt the other night 18:08:13 you're talking to the cinder that was him 18:08:25 sploknee, eating did help 18:08:29 Then I went to bed 18:08:32 Sgeo: yes, you can implement inefficient STM with a single global lock 18:10:13 every transaction takes the global lock, problem solved 18:11:58 I nedd lspepe 18:12:01 Need leep 18:12:03 sleep 18:15:04 google calendar's favicon style has changed slightly 18:15:11 IS THIS THE BEGINNING OF THE END FOR THE SEARCH GIANT!?!?!? 18:16:54 http://www.reddit.com/r/funny/comments/11zrnm/to_be_fair_most_people_in_ancient_rome_hadnt_even/ 18:16:57 kmc is this you turning everything into a commentary on your pet peeves again 18:17:29 help is reading /r/friends considered creepy 18:17:50 is that like a subreddit for finding friends 18:18:11 i'm curious what corpus they use for english/latin with words like "nebraska" 18:18:52 It's a pseudo-subreddit that shows all the submissions your Reddit friends made 18:18:58 sploknee: yes 18:19:04 I love putting the pseudo prefix on stuff 18:19:17 you can have reddit friends? 18:19:19 i just 18:19:19 til 18:19:34 reddit stalkees 18:20:07 They're unidirectional 18:20:15 I can friend anyone without them knowing or needing to accept 18:20:33 yeah 18:20:34 so what Bike said 18:21:26 gotta love social networks. 18:21:42 Bike: google used to translate "quid pro quo" as "What happens in Vegas" 18:22:17 so close 18:22:21 i read an article this morning about how IBM accidentally taught Watson to swear profusely, but the article didn't have examples 18:23:33 but it does remind me of another Watson story 18:24:30 Q: "rhyming term in boxing for a below the belt attack" 18:24:34 actual answer: "low blow" 18:24:39 watson's answer: "wang bang" 18:24:57 Was it accepted 18:25:25 this was in practice 18:26:03 Is there a jeopardy rule that awards discretionary points for that 18:26:08 I don't know jeopardy 18:26:09 don't think so 18:26:22 i think you have to get essentially the answer they are looking for 18:26:28 even if others would fit the prompt 18:26:45 "lame game" 18:28:48 dick flick 18:29:41 cock sock? 18:29:46 -!- Zerker has quit (Remote host closed the connection). 18:30:31 oh that's nick 18:30:34 erm 18:30:35 nice 18:30:54 watson ain't got nuthin on me 18:30:57 i'm gonna sock your cock 18:31:10 i don't see a problem with this term. 18:31:37 Blow me low. 18:31:43 .hmm 18:31:45 good point 18:32:11 if anything, doubling as a marketable sex toy name is an advantage 18:33:42 You cock socker 18:34:49 Has the syntax of mathematical statements (consisting for all, there exists etc.) been formally specified (and maybe standardized)? 18:34:57 *consisting of 18:35:05 pretty much 18:35:10 prenex form? 18:35:28 there are many axiomatic systems for predicate logic 18:35:42 formal specification of syntax and semantics 18:36:02 the syntax is important for godelization and all, it was probably the first language to have its syntax formally described, if anything 18:36:35 ISO standardized set theory 18:37:15 Where could I find such a spec? 18:37:27 (my searches have been unsuccessful so far) 18:37:27 Our grothendieck constructors are professionally certified and ready to lay your new foundations today!! 18:38:16 why would they need a full spec? it's just quantification, predication, and a few things like implication or conjunction 18:38:16 -!- DHeadshot has quit (Read error: Connection reset by peer). 18:38:33 Sgeo: reddit has a weird definition of friend 18:39:00 Bike: not a full spec, just the formal syntax of a mathematical sentence 18:39:48 can't you just write it out yourself 18:40:19 But what would you write it in? 18:40:27 Bike: I don't think I know all existing notations 18:40:49 (all existing and if possible "standard" notations) 18:40:59 a sentence is either a variable, a sentence AND another sentence, a sentence OR another sentence, a sentence IMPLIES another sentence, a predicate(a sentence), forall variable sentence, exists variable sentence 18:41:06 "Just owned up 12k RoR apps. Does anyone want to buy the combined db dumps? Email addresses of 43 white males 19-23 yr old in SF area." 18:41:09 -!- GreyKnight has joined. 18:41:10 "Update on the Ruby on Rails vulns: very few servers have calc.exe installed, so you are probably safe. Patch over the weekend." 18:41:19 Bike: but there is also, there exists just one 18:41:44 AnotherTest: the actual syntax in use is 10%-90% natural language 18:41:44 and of course declarations 18:41:45 if you want to include every notation everyone's ever used for first-order logic you're going to be working on it for all time 18:41:56 the formalizations have been done for the sake of formalizing 18:42:00 logicians just make things up when they need it 18:43:07 I bet you've never heard of Jafet's homotopical subway turnstile notation 18:43:09 Well I think a formal definition would be useful just to make everyone use the same symbols 18:43:14 kmc: "43 white males 19-23 yr old" that is terrible and wonderful 18:43:16 hahahahah 18:43:52 right i bet if we just standardized a programming language we could get everyone using just the one too 18:44:14 AnotherTest: well the most universal mathematical language is english 18:44:25 both are from @thegrugq who is an infamous figure in infosec and a prolific twitterrerer 18:44:34 for your purpose 18:45:13 for now 18:45:37 it was latin, then german, then russian, and one day it will be chinese 18:45:41 oklofok: I agree, but what if you wanted to have a standard set of symbols such as the current ones in use (there exists, element of etc.), you would need a standard to allow universal understanding of those symbols? 18:45:48 what about french? 18:45:51 probably that too 18:45:59 french had its moment 18:46:01 and greek 18:46:06 greek had its moment 18:46:14 hm what did euler write in 18:46:16 probably latin? 18:46:22 and german probably 18:46:27 * Bike hasn't ready any original euler. THE SHAAAAAME 18:46:29 latin had... okay i'll shut up 18:47:09 AnotherTest: universal understanding comes from explaining stuff in natural language, usually 18:47:11 AnotherTest: commonly mathematicians just write something to the effect of "it'd be a PITA to write this out in english every time so here's a new symbol to designate [definition]" in their papers 18:47:23 -!- copumpkin has quit (Ping timeout: 252 seconds). 18:47:30 explain what you want to do and try not to assume too much previous knowledge 18:47:54 -!- copumpkin has joined. 18:48:04 Bike: oh well, I guess that works too 18:48:18 Although you do have to rewrite it every time again 18:48:41 of course sometimes you get someone like bourbaki to come along and say "let's use this notation", and some of it catches on (null set) and some of it doesn't 18:48:52 well that's the implicit meaning of we'll denote the property of ........blahblah........ by (1). 18:49:13 I guess if we could work out a "really basic" language for specifying mathematics in it would be handy for bootstrapping communication with aliens :-) 18:49:32 i don't think i've seen people actually state that that's the reason in math papers, but it happens in the more applied sort of cs papers 18:49:32 standardizing a language is sort of an impossible problem, look at french and they're using "weekend" in violation of the academie 18:49:40 *their using 18:49:43 GreyKnight: been done a few times 18:49:52 "This species, their math sucks." 18:50:11 Bike: well, that is sort of what AnotherTest wants I think 18:50:24 philosophical languages, lol. 18:51:15 by the way do you like http://us.metamath.org/index.html 18:51:52 i found that delightful a few years back but i haven't heard much about it 18:52:10 Sounds like fun 18:52:34 perhaps i like it because it's the only formal proof system i have learned to read 18:52:54 I wonder if it counts as an esolang 18:53:44 I guess if we had a standardized math syntax, we could use syntax-direct translation to Alien math 18:54:36 "Substitution consists of replacing the symbols for variables with expressions representing special cases of those variables. That's the only mathematical concept you need!" 18:54:43 Crank meter reading high 18:54:49 in metamath? 18:54:58 that's just lambda calculus, isn't it 18:55:09 "need" for what? 18:55:14 So yeah, I heard rewrite systems are universal 18:55:33 need to mechanically evaluate terms or need to understand wtf is going on 18:55:56 I saw a puzzle years ago which was a magic square created by aliens. You had to try and figure out which symbol meant what (of course you don't know what base their numbers are in) 18:56:30 why would you assume they even use a radix system 18:56:39 why would you assume the symbols mean something 18:56:49 i would just assume they like drawing random things 18:56:52 Well that was implicit in the puzzle, Bike 18:57:31 Hey, mexicans use radix systems. 18:57:34 oklofok: they might as well not be able to draw 18:57:35 not a very good representation of aliens, then! 18:57:52 AnotherTest: no, they have drawn a neat magic square 18:58:13 oklofok: maybe they kidnapped a human and forced him/her to do so 18:58:49 well i took the first sentence as fact and the rest as GreyKnight's interpretation. 18:59:07 although i suppose that can also be called creating something 18:59:07 Bike: it was a puzzle, not a research problem :-I 18:59:28 This anal probe is rather uncomfortable. I sense that they want me to draw a magic square 18:59:36 GreyKnight: not hardcore enough 18:59:47 DO BETTER 18:59:59 -!- sploknee has quit (Ping timeout: 260 seconds). 19:00:32 This figure is known to be a magic square drawn by aliens. Determine how to attack their home planet 19:01:22 Jafet: Time Out Of Joint? :-) 19:01:38 -!- sploknee has joined. 19:02:37 Plan 3² 19:04:12 I like some things from plan9 but not other things 19:04:24 are you zzo in disguise 19:04:24 19:04:42 Maybe 19:04:48 Content-type: application/zzo38 19:05:13 kmc: equivalent to text/plain surely? :-) 19:05:26 but what encoding is it eh 19:05:33 cp437? 19:05:35 ASCII 19:06:54 @tell zzo38 What are your thoughts on plan9? Inquiring minds want to know. 19:06:54 Consider it noted. 19:08:11 `welcome kmc 19:08:13 kmc: 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. (For the other kind of esoterica, try #esoteric on irc.dal.net.) 19:08:25 `welcome fungot 19:08:26 kmc: is: something special in canada called ' fourth'? if so, returns control to the fnord they tend to be news to me. calculus seems so much more interesting to have a .spec file, a file, then 19:08:27 fungot: 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. (For the other kind of esoterica, try #esoteric on irc.dal.net.) 19:09:06 fungot: I think canada's "fourth" is just the normal one (not sure though) 19:09:07 GreyKnight: ' not very'.) followed by the tanks. hadn't even bothered to confiscate across the universal security strip 19:09:40 Oh! I didn't realise "fourth" was considered a national secret in Canada O_O 19:09:57 well they number from zero in canada 19:10:02 so it would be the same as US "fifth" 19:10:17 (this might actually be true for buildings?!?) 19:10:20 I thought most of canada is below zero 19:10:59 We correctly number floors in the UK from ground level ("floor zero" if you like) 19:12:02 roar hero, in slang 19:12:23 wat 19:12:32 cockney! 19:13:19 Oh, rhyming slang. "Floor zero" isn't really a term, it doesn't have a rhyming-slangisation AFAIK 19:15:21 rhyming slang is more involved than that 19:17:01 sorry to be That Guy 19:17:41 you're only allowed to be That Guy if you explain how you'd refer to the zeroth floor properly 19:17:46 This is #esoteric, if you weren't being That Guy someone else would (possibly elliott) 19:18:15 Bike, well it'd be "ground floor" for one thing! 19:18:27 sucks 19:18:36 No u 19:18:55 well you need to find a well-known two word phrase where one word rhyms with "zeroth floor" and then you would say only the *other* word 19:19:21 stella! 19:19:53 more wat 19:20:28 stella by moor, it's a nice song 19:22:46 "moor" has a longer o than "floor" round here so I would never have gotten that even if I'd heard of the song :-P 19:23:11 impenetrable. the perfect slang 19:28:39 kmc: a friend of mine just tweeted the article about watson's swearing 19:32:23 -!- sploknee has quit (Quit: Leaving). 19:34:48 I Want To Be That Guy 19:35:02 ok 19:35:05 go ahead Sgeo 19:45:57 -!- oerjan has joined. 19:57:39 -!- GreyKnight has quit (Quit: You hit the grey light. It explodes!). 20:17:34 -!- AnotherTest has quit (Quit: Leaving.). 20:19:58 -!- augur has joined. 20:30:01 09:32:42: fungot: What do you know about TIME COMPRESSION? 20:30:01 09:32:43: fizzie: what's this...... then...... i have to live in that chair and drink your goddamn tea! 20:30:02 oerjan: could've learned the fnord esolang fnord is about the course. i chose not to.) know you've cycled through the entire recursion in one go 20:30:02 oerjan: if i use c ( and i'm not sure how well it works 20:30:11 let poor fungot out of the chair! 20:30:11 oerjan: neilv annotated 5600 with " a sentence". 20:30:38 fungot: stay in the goddamn chair! 20:30:38 olsner: you do evaluate the innermost first, then the final 6, 20:31:42 `quote evaluate 20:31:44 No output. 20:32:40 `quote something else 20:32:41 No output. 20:32:46 `quote anything 20:32:47 75) For those who don't know: INTERCAL is basically the I Wanna Be The Guy of programming languages. Not useful for anything serious, but pretty funny when viewed from the outside. \ 324) I can trust elliott_ to have an opinion on anything and everything Yes. And the best thing is: it is the correct op 20:44:13 -!- Vorpal has joined. 20:47:51 -!- sploknee has joined. 20:57:11 -!- carado has joined. 20:58:10 -!- augur has quit (Remote host closed the connection). 21:11:35 -!- sebbu has quit (Ping timeout: 255 seconds). 21:13:12 -!- sebbu has joined. 21:13:12 -!- sebbu has quit (Changing host). 21:13:12 -!- sebbu has joined. 21:15:09 -!- WeThePeople has joined. 21:15:32 I wanna be the guy isn't that difficult of a game 21:16:49 Hojo? Not Hinjo? <-- are you saying fungot needs an oots style 21:16:50 oerjan: emacs still runs on the server side these days, i could 21:17:19 FreeFull: neither is intercal that difficult of a language 21:17:55 oerjan: except when you're trying to do string handling 21:18:06 MAYBE 21:23:56 I'm somewhat disappointed Google Wave failed 21:24:01 It was actually pretty cool 21:24:30 Taneb: the problem is it wasn't clear on what its use case was 21:25:16 I'm currently in a long comment thread on Facebook, with multiple people trying to hold multiple, intertwining conversations 21:25:20 THAT was its use case 21:26:18 elliott, how far did you get with your text-diagrams thing 21:26:23 Composable welcome filters? 21:26:25 hm... 21:26:36 Taneb: yeah, on the other hand much simpler systems can handle that well 21:26:42 `cat bin/welcome 21:26:43 ​#!/usr/bin/perl -w \ if (defined($_=shift)) { s/ *$//; s/ +/ @ /g; exec "bin/@", $_ . " ? welcome"; } else { exec "bin/?", "welcome"; } 21:26:47 and it's easier to teach people a simpler system 21:26:49 kmc, such as? 21:26:56 `cat bin/emoclew 21:26:57 ​#!/bin/sh \ welcome "$@" | rev | tr \)\( \(\) 21:27:17 Taneb: IRC for example 21:27:37 Wouldn't quite work for this 21:28:09 Doesn't send out an alarm call to everyone, for instance 21:28:18 And multi-threaded convos can still get confused 21:28:31 confusion is fun 21:28:43 conFUNsion 21:29:06 well Zephyr is an interesting example 21:29:30 it is an obscure text-based chat protocol, used only at MIT and a little at a few other schools (and MIT-spawned startups) 21:29:57 kmc, I think the biggest problem would be convincing everyone to use it 21:30:08 every message is sent to a particular "class", which is like an IRC channel, and an "instance", which is something you come up with on the fly to describe a particular topic 21:30:10 And I actually managed to get someone to use Google Wave 21:30:23 for most people, the default view includes all messages, in time order 21:30:38 but you can narrow down to view only one class, or one class-instance pair 21:30:50 depending on whether you want context or focus, regarding these multiple intertwining conversations 21:31:13 also you have a specific point in that time ordered view which denotes how far you have read 21:31:33 and so you can expect that people will read everything, even if they aren't around right now 21:31:38 which makes it something of an email replacement as well 21:31:48 seamlessly transitioning between realtime and asynchronous communication 21:31:53 Biggest problem with Zephyr is convincing everyone to use it 21:32:06 well yes 21:32:16 they shouldn't, because the software and the protocol is all crazy and crufty and archaic 21:32:23 kmc: one thing I've noticed on IRC is that communities tend to spawn side-channels simply because of the multiple-conversations-at-once thing 21:32:28 and like, if I see two people talking about something in one place 21:32:31 I skip to the next channel >_>; 21:32:35 so I don't interrupt them 21:32:46 but as it happens I'm working for a company which is building a web-based chat system on a similar model 21:32:55 #esoteric-homestuck 21:33:15 with the idea that, in particular, this is a vastly better way for companies to communicate internally 21:33:21 based on our own experience at companies using zephyr 21:33:52 the swedish counterpart would be http://en.wikipedia.org/wiki/LysKOM 21:34:41 -!- mekeor has quit (Remote host closed the connection). 21:34:55 Taneb: Not very. 21:35:08 oerjan: Want to talk about UNDERLOAD? 21:35:47 `addquote btw, I finally discovered what a burrito was, recently < they're kind of nice to eat < but don't really resemble monads 21:35:49 argh 21:35:49 907) btw, I finally discovered what a burrito was, recently < they're kind of nice to eat < but don't really resemble monads 21:35:52 `revert 21:35:55 oerjan: that's a weird typo 21:35:55 Done. 21:35:58 `addquote btw, I finally discovered what a burrito was, recently < they're kind of nice to eat but don't really resemble monads 21:36:01 907) btw, I finally discovered what a burrito was, recently < they're kind of nice to eat but don't really resemble monads 21:36:04 elliott, because my thoughts have occasionally turned to it over the past couple of days 21:36:13 there's one extra < in there I think 21:36:30 Taneb: Did you think of a good solution to the problems I had? 21:36:34 ais523: it's what happens when i forget between windows whether i've remembered to copy the < or not 21:36:44 elliott: hm? 21:37:11 `revert 21:37:13 Done. 21:37:26 `addquote btw, I finally discovered what a burrito was, recently they're kind of nice to eat but don't really resemble monads 21:37:29 iirc, burrito means small donkey 21:37:29 907) btw, I finally discovered what a burrito was, recently they're kind of nice to eat but don't really resemble monads 21:37:34 sheesh 21:37:58 oerjan: I was thinking about Underload type inference to statically determine some subset of stack effects. 21:38:04 this lead to me linking one of your SO answers to ais523 :P 21:38:33 elliott, I was thinking if you limited it to rectangles 21:38:51 Chars can be 1x1, 1x2, or even 1x0 or 1x3 or whatever 21:39:04 So don't encode size at type level, that would be bad 21:39:08 OKAY 21:39:41 see: that kind of curiosity killed Cat 21:39:48 -!- carado has quit (Remote host closed the connection). 21:39:54 Combining monoidally, I was thinking "a <> b" means "line a's top-left corner with b's top-left corner and paste b over a" 21:40:05 Combining characters can possibly combine like that, IDK 21:40:47 -!- carado has joined. 21:40:52 -!- WeThePeople has quit (Quit: Leaving). 21:41:20 What were some of your specific problems? 21:42:04 Pasting b over a sounds kind of unuseful? 21:42:06 -!- carado has quit (Remote host closed the connection). 21:42:18 I guess you'd need a notion of there not being any character at a particular position... 21:42:21 elliott, whitespace in b could come in handy 21:42:41 My problems were with double-width characters. 21:42:45 -!- carado has joined. 21:43:17 I was thinking 0x20 is empty, NBSP is non-empty whitespace 21:43:34 double-width characters, you'd need some form of double width detector 21:43:54 Taneb: clearly you need INTERCAL overstrikes 21:44:02 V backspace - and all that 21:48:20 -!- atrapado has joined. 21:50:23 elliott, http://www.unicode.org/reports/tr11/ could be relevant 21:52:02 I mostly know how they work in general, but thanks 21:53:14 well, "sort of" 21:53:25 Well, that's the official version 21:53:37 -!- Vorpal has quit (Ping timeout: 248 seconds). 21:55:15 maybe they don't have burritos in europe?!?!? 21:55:24 kmc: they're not common 21:55:30 the university canteen started selling them this month 22:00:43 on the flip side you have shawarma / kebab / gyros / whatever you call it on every street 22:00:57 at least in most parts of europe i have been to 22:02:17 kmc: in the UK, fish and chip shops are really common, and they sell kebabs too 22:02:27 I think the closest north american equivalent is a pizza parlour, but it's not that close 22:03:26 yeah 22:03:31 Somewhere between a pizza parlour and a hot dog stand 22:04:11 in american cities it's fairly common to find a non-chain fast food place that has pizza, gyros, fried chicken, burgers, french fries, etc 22:04:31 but moreso in poorer areas 22:04:33 Heh, I'm rarely in British cities 22:04:45 The last time I was in a city that wasn't Newcastle was... 22:04:57 August? 22:05:10 out in suburbia / most of the country, you have huge chain fast food restaurants with drive thru etc 22:05:19 and those mostly stick to a single genre of food 22:05:26 We have those, too 22:05:27 kmc: that seems very similar to the UK too 22:05:30 * elliott 's line parsed that as a lyric until after the comma 22:05:31 though there are such as the Combination Pizza Hut And Taco Bell 22:05:33 v. confusing 22:05:34 except they'll do fish and chips in addition to all that 22:05:42 ... 22:05:43 elliott: i'm a poet and i don't even know it! 22:05:45 * elliott 's mind parsed that as a lyric until after the comma 22:05:49 at least, the chains don't 22:05:52 the non-chain places do, though 22:05:52 We have kebab places everywhere, but to get a burrito you'll pretty much have to choose one of the "Tex-Mex" themed restaurants, of which there's not really a shortage either, but they're not all *that* common. I can think of offhand about six in Helsinki centrum. 22:05:53 kmc: now you have to make a song out of it 22:05:56 hard to top that second line though 22:05:57 out of which? 22:06:05 22:05:10 out in suburbia / most of the country, you have huge chain fast food restaurants with drive thru etc 22:06:14 out in suburbia / most of the country, you have huge chain fast food restaurants with drive thru etc / something something something 22:06:17 just listen to this song instead http://www.youtube.com/watch?v=Vyfc10qDcR4 22:06:29 i think most songs don't use the word "et cetera" 22:06:38 radiohead used it though so it must be allright 22:06:38 a remix?! 22:06:58 We have a pretty great type going here. 22:06:59 newtype Un p a s = Un { unUn :: p s -> p a } 22:07:39 What does it take to make p an instance of things? 22:07:52 There are now only two Pizza Hut restaurant (and three "express" places, and two "take-away only" places) in Finland; there used to be many more. 22:08:04 what happened to them? 22:08:06 kmc: now you have me listening to this again :( 22:08:09 shit, the rap doesn't even fit the rhythm, i forgot about that 22:08:11 I shook it off!!! 22:08:20 I think they've just closed. 22:08:28 kmc: they died 22:08:34 elliott: Are you done? 22:08:38 * shachaf might go eat something. 22:08:45 shachaf: I'm confused. Also tired. 22:09:26 Taneb: Mentioning #esoteric in #haskell is banned. Gotta keep up the peanut gallery. 22:09:42 I referenced it, I did not mention it 22:09:45 Well 22:09:47 elliott: what about mentioning #haskell in #esoteric? 22:09:50 I mentioned it the day before yesterday 22:09:54 elliott: Banned by whom? 22:09:57 Anyway 22:10:00 I'm gonna sleep now 22:10:04 -!- Taneb has quit (Quit: Leaving). 22:10:16 shachaf: Um, imperial decree? 22:10:29 I've heard something about McDonald's not doing so well in Finland either. There isn't one really nearby here. And there are more instances of the local Finnish cheap clone (Hesburger). (As a rule of thumb, there's a Hesburger in every large shopping mall, but all McDonalds'ses are in their own separate buildings for some reason.) 22:10:38 elliott: Of which channel? 22:10:39 the McDonaldses in the UK suck 22:10:46 they're noticeably worse than those in Canada 22:10:49 and thus I assume the US too 22:11:00 yes 22:11:08 Canada and US are comparable 22:11:13 ah yes hesburger 22:11:19 or at least, the large sample of McDonaldses I've checked in the UK are all worse than one specific McDonalds in Ottawa that I have no reason to believe is not representative 22:11:20 though my preference is Canada 22:11:27 I think they use extra grease in the US 22:11:31 i always parsed it as a burger restaurant run by hesbollah 22:11:58 I think there's at least one Hesburger in Tallinn too, so they've branched out a bit. 22:12:05 in greece, Goody's seemed to be beating McD's by quite a bit 22:12:11 ais523: if it was unrepresentative, it was probably worse than usual 22:12:24 coppro: McDonalds in Canada have negative skew? 22:12:28 ais523: I've seen a couple of terrible McDonald's, but not exceptionally good ones 22:12:36 fair enough 22:12:41 Also they have a "HeseCafe" (since McDonald's has cafes too), and a "HesePasta" (which is this cardboard box full of macaroni-and-stuff) thing in a couple of places. 22:12:46 so it's unlikely you were above the mode 22:13:24 fizzie: they have them in vilnius as well 22:13:40 Also McDonald's-of-Finland started selling their wrap things quite recently, autumn last year or something. 22:13:58 I understand those have been available elsewhere for quite a lot longer. 22:15:08 -!- atrapado has quit (Quit: Bye). 22:15:28 hesburgers heslige burgere 22:16:03 According to Wikipedia, there was a Hesburger in Syria from 2004 to 2006. 22:16:16 in hungary the mcdonald's had a sign instructing you how to use the self serve soda fountain 22:16:55 There's also a Finnish pizza chain with one store in like China; it's amusing because it pops (or at least used to pop) up first when you went to their restaurant selector, since it wasn't in any of the "subdivisions of Finland" categories. 22:17:34 And the restaurant select-o-tron link was titled "nearest ". 22:18:06 why would they even have a store in like China 22:18:09 Apparently it no longer exists. :/ 22:18:19 "In addition to Finland, Kotipizza restaurants are found in Saint Petersburg, Estonia and in China in Suzhou, near Shanghai." 22:18:32 Saint Petersburg and Estonia make some amount of sense. 22:18:36 countries like australia, such as new zealand 22:18:40 -!- azaq23 has joined. 22:18:42 why does it say where the chinese and russian ones are, but not the estonian one 22:18:53 is the estonian one also in suzhou? 22:19:20 Bike: Because China and Russia are significantly bigger than Estonia, maybe? 22:19:53 still doesn't let you show up on the estonian border and ask "yo where the kotipizza at" 22:19:58 maybe they can open a restaurant in Formosa, Argentina and another in Formosa, Republic of China, directly opposite on the globe 22:20:18 Bike: dunno, the border guards might know 22:20:23 I suppose maybe one of the Kotipizza franchisees might have moved to Suzhou or something? 22:20:38 i'm at the kotipizza, i'm at the hesburger, i'm at the combination kotipizza hesburger 22:20:43 Bike: Also possibly there are several places in Estonia and they didn't want to list them. 22:21:02 \o/ somebody mentioned estonia! 22:21:10 There are two Kotipizzas and one Hesburger at the nearest shopping centre. 22:21:20 But I don't think I've heard of a combination one. 22:22:45 a pity there's no one here right from mongolia.. 22:23:22 any asian folk here? 22:23:59 where did that come from 22:24:49 http://www.youtube.com/watch?v=WDEI06J00nk anyway have some estonia 22:31:07 * hagb4rd thinks it's a pity the relevance of the results to search queries on google are influenced by region of the request source by default. think they could change world if they dropt this feature 22:32:04 hagb4rd: Google tries to give people what they want, not what they need 22:32:50 well you can change this.. but adjusting the default options still has an effect 22:33:03 -!- Bike has quit (Read error: Operation timed out). 22:33:03 no google doesn't do either 22:33:06 but good point 22:33:19 if you are not paying for a product then you are the product being sold 22:34:26 Google doesn't seem to give me as good results for some queries as it used to 22:34:53 kmc: Where can I buy kmc? 22:36:46 -!- GreyKnight has joined. 22:39:38 what i fear most is we might loose some diversity of knowledge (which imo somehow leads to creativity while interacting in mulitplayer mode) due to the synchronicity of the sources we use 22:39:51 hagb4rd: lifthrasiir is asian, at least 22:40:01 cool. hello lifthrasiir 22:40:08 good to have you here 22:40:33 dependent on your definition, i'm not sure about shachaf, i don't think he's currently _in_ asia 22:42:25 no i mean we use wikipedia or sth to check out facts for example (which has its advantages..by all means!).. 22:43:34 but in some way it's different than to wait until you get the right book or even make your own experience 22:43:48 (i'm not complaining) 22:44:08 just try to see the other side of the moon 22:45:32 oerjan: I tried playing with some pipelineable welcome filters stuff but elliott hated it because I preserved the URL from filtering >:-( 22:45:34 okay i don't know what schahaf is doing or how this was related to my statement oerjan 22:45:47 anyway 22:46:15 maybe it wasn't 0:) 22:46:24 a smoke? 22:46:38 GreyKnight: i'm afraid i'm with elliott on that one. 22:47:03 -!- GreyKnight has quit (Quit: Reconnecting…). 22:47:12 if you generate URLs people can actually click, is there even a point to life? 22:47:32 HEY I NEVER SAID THEY SHOULD BE UNCLICKABLE GET TO WORK ON THAT ELLIOTT 22:48:00 ALSO MAKE IT AUTOMATICALLY COMPATIBLE WITH FUTURE FILTERS THX 22:48:09 oerjan: I'm not in Asia but I was born in Asia. 22:48:19 oh thats better 22:48:20 shachaf: yay as i thought! 22:48:39 schahaf: have you been there for while? 22:48:44 *lived there 22:48:59 -!- GreyKnight has joined. 22:49:18 I lived in Asia for something like half my life. 22:49:28 elliot: i'm sure there is some sense in it. let's keep some patience ;) 22:49:33 ^rot13 schahaf 22:49:34 fpununs 22:49:51 or fuck do something about it! 22:50:03 sorry 22:50:34 * hagb4rd clears his throat 22:50:48 someone get hagb4rd an autocompleting client thx 22:50:57 -!- GreyKnight has quit (Client Quit). 22:51:09 -!- sebbu2 has joined. 22:51:09 -!- sebbu2 has quit (Changing host). 22:51:09 -!- sebbu2 has joined. 22:51:19 hoerjan 22:51:23 somehow it shows some respect when you type the name by hand 22:51:25 you know 22:51:51 hardb4g: OKAY 22:52:12 no progress withought the possibility of failure 22:52:18 -!- sebbu has quit (Ping timeout: 248 seconds). 22:52:25 maybe no progress at all 22:52:35 oerjan: Do you like this class: class Unapplicative p where unpure :: p Void; unstar :: p (a,b) -> Either (p a) (p b) 22:52:51 Or kmc. I think this is related to the category thing I was talking about yesterday. 22:53:04 -!- nooodl_ has quit (Ping timeout: 256 seconds). 22:53:20 -!- sebbu2 has changed nick to sebbu. 22:53:45 why (a,b) and not Either a b 22:53:47 It behaves a bit like a logarithm, as in log(a*b) = log(a)+log(b) 22:54:07 oerjan: I'm thinking of "P a" as meaning "a is uninhabited" for lack of anything better. 22:54:18 So Void is uninhabited, and if (a,b) is uninhabited then either a is or b is. 22:54:28 i just don't see how this class can be applied in any way 22:54:31 * oerjan runs away 22:54:40 I don't either! 22:55:01 aha 22:55:55 p a -> Either (p b) (p (b -> a)) 22:56:13 would be more the reverse of <*>, no? 22:56:29 Right, this is for the opposite of p (); p a -> p b -> p (a,b) 22:56:44 Or (p a,p b) -> p (a,b) 22:56:54 You know, "real" Applicatives. 22:56:57 that formulation zzo38 likes, although you need Functor as well 22:57:04 Sure. 22:57:11 you also get (a -> Void) -> p a, obviously 22:57:20 (given contramap for both what oerjan said and what I said) 22:58:07 shachaf: Do you have any instances of Not? 22:58:08 Er. 22:58:11 shachaf: Do you have any instances of Unapplicative? 22:58:19 I mean, not even Not is an instance. 22:58:25 I guess NotNotNot is? 22:58:27 I think Const Void is trivially an instance. 22:58:29 No, it isn't. 22:58:36 shachaf: Zomg so is Proxy!!!1 1 11 1 22:58:38 Otherwise you'll probably have to switch from Either to COr. 22:58:47 Oh, c'mon. 22:59:10 shachaf: What's a Contravariant that doesn't have a (->) in it? 22:59:17 But that isn't trivial like Const Void. 22:59:18 elliott: Nothing. 22:59:32 That's the way you get things to be contravariant. 22:59:37 shachaf: Oh, Unapplicative doesn't require Contravariant? 22:59:47 It should? 22:59:51 It didn't how you defined it. 22:59:55 I think maybe it shouldn't? 22:59:58 unpure :: [Void]; unstar :: [(a,b)] -> Either [a] [b] 23:00:02 That almost looks reasonable, after all. 23:00:03 elliott: Sure it should 23:00:10 Because Functor requires Contravariant. 23:00:16 Um. What? 23:00:17 And Applicative requires Functor. 23:00:22 Functor requires Contravariant? 23:00:23 I mean, instance Functor (Op p a) 23:00:28 Well, sure. 23:00:31 But if you want instances. 23:00:37 And I think this notion might be more general than that. 23:04:20 15:03 where is kmc? I miss him 23:06:46 playing basketball in the kitchen 23:07:13 whois monochrom 23:07:42 he isn't around here 23:07:43 aw 23:08:46 monochrom is kmc's #1 fan 23:08:54 no that was me! 23:08:56 Wasn't monochrom the one who said kmc's FAQ was good too? 23:08:57 Total fanboy. 23:09:00 Clearly. 23:09:02 absolutely 23:10:14 monochrom is a #haskell guy, at least was when i was 23:10:33 monochrom is great. 23:10:52 well invite him to join us. i love great people 23:11:11 `pastlog 23:11:42 2011-09-01.txt:01:58:46: ddarius wins! 23:11:52 i don't think that counts 23:11:52 `quonochrom 23:11:54 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: quonochrom: not found 23:11:56 `pastlog 23:12:03 2011-02-06.txt:21:11:32: for example "I'll pay you us$5 this is good money for you considering how poor you are!" is not pay well. it's insulting. make it us$500. 23:12:06 `pastelog 23:12:21 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.24396 23:12:21 it appears people just quote him here 23:13:19 have you change the mime type of the pastes? somehow chrome tries to download it 23:13:34 maybe it's just me 23:14:10 worked fine for me (not chrome) 23:14:39 ye dunno. nevermind thx 23:15:42 maybe it's that weird nick in the paste 23:15:47 -!- sivoais has quit (Ping timeout: 252 seconds). 23:16:05 hm.. too lazy too find out now 23:16:08 * 23:16:27 please porige cpo hot 23:16:57 -!- sivoais has joined. 23:17:16 or that + the Erdös 23:17:57 which i btw had to change encoding from us-ascii to get properly 23:20:32 today's http://www.mezzacotta.net/postcard/?comic=1466 makes me wonder about an IQ test which not only calibrates the _score_ according to the takers, but even what's considered the correct answer. (sounds like the internet...) 23:21:14 inb4 "the picture doesn't show up" 23:22:33 oerjan: that reminds me of this https://encyclopediadramatica.se/IQ_Test 23:23:09 the IQ test that shows you a high score, but shows other people a low score 23:29:13 HRRRRRRRRRRRRRRRNG 23:29:25 I sent an email inquiring about an accordion on Craigslist. 23:29:28 “Thanks for being interested in buying my VINTAGE PHILHARMONIC DOUBLE TONE CHAMBER ACCORDION W/ HARD CASE MADE. I will start my email by telling you that I'm currently out of country so pick up isn't an option. The item is as described, in perfect condition and will be delivered at your home address.” 23:29:38 Yaaaay scams >_< 23:32:06 Gregor: You should get a chromatic button accordion. 23:32:12 Not a "piano" accordion. 23:32:36 -!- GreyKnight has joined. 23:33:18 aw.. i'm planning to get an accordion too 23:33:38 or a sax 23:33:50 dunno.. difficult. maybe both in time 23:34:52 gregor: have you done some composing at last? 23:36:15 Wouldn't it be quite difficult to play both the accordian and the sax :-O 23:36:30 at the same time yes 23:37:22 but i'm not very out to become a professional.. so it doesn't matter as long as there is some fun doing it 23:38:31 -!- Arc_Koen has joined. 23:39:24 oerjan: FINE at least I got some Haskell practice out of it 23:39:34 an accordion has this warm, melancholic..yea...disaming sound 23:39:41 EXCELLENT 23:39:45 GreyKnight: yeah RIGHT 23:39:54 *diarming 23:40:04 *DISARMING 23:40:05 **disarming ? 23:40:14 yes thanks greyt 23:40:19 greyT 23:40:26 I was considering reading the logs so that I could actually pretend I knew what all those capital letters were about but I think that would be a waste of time 23:40:29 on second thought someone get hagb4rd a keyboard thx 23:40:44 pronounced like "great" B-) 23:40:54 oh yes.. i need the one which can be washed 23:41:02 *noted 23:41:09 and if that still doesn't help, a spell checker 23:41:10 those flexible japanese ones? 23:41:25 and if that still doesn't help, a new set of hands! 23:41:36 yea, i'm not good at typing. also you guys make me nervous 23:41:50 (i hope this word fits the case) 23:41:51 Arc_Koen: TLDR: I was experimenting with `welcome filters that transformed text while leaving the URL alone, everyone hates my idea ;_; 23:41:53 THERE'S NOTHING TO BE AFRAID OF 23:42:02 Gregor: You should get a chromatic button accordion. // I'd like to, but I don't have that kind of money. 23:42:07 It's type-correct though B-) 23:42:08 gregor: have you done some composing at last? // on the accordion, yes. 23:42:21 What kind of money is a chromatic button accordion? 23:42:23 GreyKnight: thank you (why waste my time when I can waste someone else's!) 23:42:32 hagb4rd: but we haven't even threatened you! Much. 23:42:39 I've looked around and apparently they;re not easy to get hold of in the US. 23:42:44 gregor: somthing i can listen to? let's give it a try 23:42:56 greyknight.. no not really 23:43:08 hagb4rd: Would be except that I don't have an accordion right now >: ( 23:43:09 aw of course you have! 23:43:14 they have this crazy idea in France to calculate how much the time of a volunteer is worth 23:43:16 shachaf: Well into the thousands. 23:43:30 I can say by experience that it's probably a negative amount :( 23:43:44 Why do we make you nervous, hagb4rd? 23:43:58 cmon greyknight. i was trying to make a compliment 23:44:03 how do you know you were included in the "you guys"?! 23:44:08 i failed 23:44:16 :< 23:44:26 but sometimes yes.. 23:44:31 Gregor: http://www.smythesaccordioncenter.com/Student_Chromatics.html has them for <$1000 23:44:39 I don't know if they're any good, though. 23:44:52 I suppose these are "learning accordions" or something? 23:44:53 shachaf: 60-bass = clearly shit 23:45:02 If it's not at least a 120 bass, it's not even worth consideration. 23:45:03 And 72? 23:45:06 OK. 23:45:19 Well, I say "at least", but they don't make more ^^ 23:45:25 72 is ALMOST worth consideration, 60 is simply not. 23:45:26 But piano accordions are horrible. :-( 23:45:36 Well, that page has 72 too. 23:45:38 Pianos are horrible. :-( 23:45:57 Plus, $1,000 for an accordion with no switches? Yeesh. 23:46:21 oerjan: so the point of http://www.mezzacotta.net/postcard/ is that there is a commentary but no actual comic? 23:46:53 Gregor: Should I learn to play the accordion? 23:47:07 How avant-garde 23:47:46 hagb4rd: now that I think of it, I'm pretty sure I said something along the lines of "you guys make me nervous" on this channel before 23:47:51 -!- augur has joined. 23:47:57 I think we're all nervous and someone is playing us 23:48:16 shachaf: I ♥ the accordion, but do what you want X-D 23:49:44 maybe it's elliott 23:50:08 -!- carado has quit (Ping timeout: 246 seconds). 23:50:08 no 23:50:28 shachaf: you probably shouldn't, but do what you want 23:50:45 Arc_Koen: playing you... like an accordian 23:50:56 elliott: please stop making people nervous thx 23:51:28 I doubt I'm that flexible 23:51:53 greyknight: it's not bad at all 23:52:05 no it's good! 23:52:16 at least sometimes 23:52:24 (I wanted to make a joke about how accordions can blow... a lot of... air... but the flexible thing is all that came to mind) 23:52:27 * hagb4rd is perfectly saying nothing 23:52:37 This must be some strange usage of the word "nervous" with which I was not previously familiar :-P 23:54:52 hm.. dict.leo.org served a few translations of which a few seem to fit that context 23:55:53 nervous / exited would be related 23:55:57 excited 23:56:30 exited 23:56:33 hm that would usually be associated with anticipation 23:56:33 as in... departed? 23:56:39 "you guys make me departed" 23:56:54 You guys made carado depart 23:57:31 -!- augur has quit (Remote host closed the connection). 23:57:40 hagb4rd: quite often it would be put as "nervous but excited" too; "nervous" by itself is usually negative 23:58:26 -!- augur has joined. 23:58:36 yea it|s amibivalente 23:58:41 -e 23:58:45 excitedly nervous? 23:59:05 oerjan: now is perfect time for PORTMANTEAUX 23:59:21 portmontage