00:00:57 -!- ais523 has quit (Remote host closed the connection). 00:25:51 -!- zzo38 has joined. 00:26:42 -!- calamari has quit (Quit: Leaving). 00:38:34 -!- derdon has quit (Remote host closed the connection). 00:39:59 -!- amca has joined. 00:45:16 -!- nooga has quit (Ping timeout: 248 seconds). 00:50:22 -!- amca has quit (Disconnected by services). 00:50:51 -!- amca_ has joined. 00:51:19 In the Icosahedral RPG default campaign setting, NPC alignment bias is not used except for Strong biases for creatures native to outer planes which are correspondingly aligned (angels and so on). 00:53:46 I have written a D&D 3.5e campaign setting with various changes, including different planes, a few different rules, and it too lacks alignment bias. 01:08:37 itidus22: Actually, more like starting a war to win the Nobel War Prize. 01:08:39 :) 01:09:11 -!- amca_ has quit (Quit: Farewell). 01:09:44 -!- amca has joined. 01:21:19 ? 01:29:07 I have read that Blu-Ray movies often include video files which are partially corrupted and a BD+ code to decrypt them? I never intend to buy a Blu-Ray player or any Blu-Ray disc, but I do have another question. Is there anywhere someone can download a file which is the XOR mask of the corrupted file and the correct data? 01:29:48 I don't think there is such a service. However, I do believe the BD+ VM is somewhat reverse-engineered. 01:30:56 -!- Nisstyre has joined. 01:31:58 Yes I know it is somewhat reverse-engineered. But BD+, as well as the large number of other complicated features of Blu-Ray, do various things, including Java and many other things designed in completely crazy ways. They still keep changing the programs and the player itself (BD+ has the ability to run native code) which makes it difficult. 01:32:00 -!- cheater_ has joined. 01:33:36 The entire spec is utterly insane. 01:33:37 Not just the DRM bits. 01:33:37 Has anyone been able to write their own BD+ codes that will run native codes on a Blu-Ray player? Perhaps someone make a disc that replaces the entire player with an open-source one and then disables ability of BD+ to run native codes....... 01:33:54 pikhq: Yes, I know. It is not only the DRM that is insane it is everything. 01:34:19 The good thing is, you get high quality video on it. The bad thing is, holy *crap* they overkilled everything. 01:34:33 40 *megabits* per second h.264? 01:35:03 One thing it says is that replicated (although not recorded) discs are *required* to include DRM software on them even if you are not going to use them, and therefore you must pay a license fee to include such softwares even if they will never be used. 01:35:05 That's a good 10 times higher than would be necessary. 01:35:35 Also, zzo38: though Bluray discs are required to include DRM, in practice all Bluray players will play discs without DRM. 01:36:14 -!- cheater has quit (Ping timeout: 272 seconds). 01:36:46 Also, most Bluray players will accept AVCHD (which is a format based on Bluray, with a lot of crap removed.) 01:36:50 pikhq: They probably will, but still, it means someone who wants to make a disc without DRM needs to make a recorded disc rather than a replicated disc, and recorded discs do not last as long 01:37:19 (AVCHD, incidentally, has no DRM in the spec.) 01:37:41 But does it have patent restrictions? 01:37:50 It uses h.264, so yes. 01:38:17 I don't think it has patent restrictions *beyond* h.264 and AC-3, though. 01:38:38 And AC-3 should be out of patent in a year or so. 01:40:24 But, still. Well, there is HD-DVD, which is not used much but lacks replication restrictions. Apparently Chinese Blu-Ray is not actually Blu-Ray but uses HD-DVD as its physical media format. 01:41:06 "Chinese Blu-Ray"? 01:41:22 Y'mean CBHD? 01:41:42 Probably. 01:43:05 Still there are various other formats, such as Lib-Ray. I don't really like Lib-Ray much either. I did try making up my own format, which uses Ogg-based formats for most things, and uses a relatively simple virtual machine (it only has a few instructions and a few registers, and the specification requires that the player allows the user to disable it). No physical media is specified. 01:44:02 I'd say the sanest format anymore would be just WebM with a few extra features. 01:44:19 (sure, h.264 is *better*, but if patents are among your considerations, VP8 is your best choice of codec.) 01:46:04 Theora is terribad. 01:47:51 Theora has been improving over time, and there is Dirac as well. 01:48:51 But it is still possible to have a few video and audio formats to choose from, I suppose. 01:54:33 Theora's still quite bad; the bitstream limits it to being, at best, about as good as MPEG-4. 01:54:52 Though, yes, it's at least stopped being a laughable example of that class of codecs. 01:56:43 kallisti_, was an update a bit ago 02:08:30 I found some Haskell package for dependent sum, and are there any more complicated examples than the one they give, possibly including ones with datatype families? 02:12:52 Or with more complicated GADTs? 02:15:35 It is defined as data DSum tag = forall a. !(tag a) :=> a 02:16:24 So in addition to the Tag GADT example, the tag could be any functor or contravariant functor or whatever else of kind (* -> *) that fits. 02:21:53 -!- amca has quit (Quit: Farewell). 02:38:02 -!- mroman has quit (Read error: Operation timed out). 02:51:28 pikhq: you make it sound almost like payment for use of blu ray is done more to have a codec chosen than to have a good codec chosen 02:52:36 kind of like paying to have images stored in .bmp when it would be possible to store them in .png 02:59:22 -!- mroman has joined. 03:09:31 There is dependent sum type but another idea would be to have a constrainted dependent sum type: data CDSum con tag = forall a. con a => !(tag a) :+> a; 03:10:20 I don't know if it is useful because there might be other ways to do it. 03:11:46 zzo38: hm if you are using constraint kinds, wouldn't data CDSum con = forall a. con a => CDSum a work more simply? 03:12:43 i'd imagine the whole ! and :+> business might be for managing it without constraint kinds 03:12:54 oerjan: I suppose it can but there is no tag 03:13:59 hm 03:15:56 Even in the (non-constrained) DSum, the tag does not necessarily have to be a GADT listing the possible types; it can also be a functor, a contrafunctor, or a datatype family. Although I suppose it could also be a GADT where its constructors have constraints. 03:17:54 itidus22: That is actually a significant factor. 03:18:42 itidus22: The committee members have chosen codecs that they own patents on. 03:18:59 itidus22: Though, h.264 is *also* the highest quality video encoding standard in existence right now. 03:33:25 -!- Nisstyre has quit (Quit: Leaving). 03:34:15 gah, deep top posting threads, my ocpd and my rsi don't go well together :( 03:35:02 (i keep pressing pgdn through it all just to check that there's no internal response breaks) 03:37:35 Feature suggestion idea for PuTTY or other terminal emulators, would be: If SCROLL LOCK is activated, then do two things: * It stops automatically setting the scroll position, so it can only be manually scrolled. * Now the up/down/pageup/pagedown/home/end keys to scroll the window instead of send to the program it is connected to 03:39:02 Would this be a useful feature to you? 03:39:11 I know, to me, it would be useful. 03:39:28 zzo38: btw you can scroll the window by holding down shift while using pgup pgdn 03:40:35 oerjan: O, yes, now I realized that works. But it still doesn't home/end/up/down keys, and has no quick way to disable automatic scrolling (you can change the option, but that is not the quick way) 03:47:23 -!- augur has quit (Remote host closed the connection). 03:49:37 -!- pikhq has quit (Ping timeout: 260 seconds). 03:50:29 What should I write under the Description field of my Hampp package? I am not very good to know what to write there 03:51:07 They didn't want changelogs, todo, features, so I commented those out but kept them in the .cabal file so that they can still be viewed without downloading the entire package 03:54:48 -!- pikhq has joined. 04:24:50 -!- augur has joined. 04:37:45 I am trying to make a Haskell program for extensible product type, using type families, so that you can add additional fields. But I cannot seem to make a function to update a value of a field. 04:40:46 It looks like it could be done if the DefaultInstances extension I proposed was implemented. 04:46:09 -!- NihilistDandy has joined. 04:55:35 Maybe not quite. 05:30:32 OK, I managed to do it, but it required unsafeCoerce to make it work. 05:38:38 -!- Nihilist_ has joined. 05:40:37 -!- NihilistDandy has quit (Ping timeout: 252 seconds). 05:44:06 This is the code I used, is it good? 05:44:13 bool :: x -> x -> Bool -> x; bool x _ False = x; bool _ x True = x; 05:44:19 typedEq :: (Typeable x, Eq x, Typeable y, Eq y) => x -> y -> Bool; typedEq x y = typeOf x == typeOf y && unsafeCoerce x == y; 05:44:30 newtype ExtProd p = ExtProd { getExtProd :: forall a. ExtProdC p a => a -> ExtProdF a }; 05:44:55 class (Eq a, Typeable a) => ExtProdC p a | a -> p where { type ExtProdF a :: *; defaultValue :: a -> ExtProdF a; putExtProd :: a -> ExtProdF a -> ExtProd p -> ExtProd p; putExtProd f v (ExtProd r) = ExtProd $ \x -> bool (r x) (unsafeCoerce v) (typedEq f x); }; 05:45:26 It seems to work OK. 05:51:32 But I don't know how many memory leaks it will cause. 05:57:28 -!- Nihilist_ has quit (Quit: Textual IRC Client: http://www.textualapp.com/). 05:57:35 Maybe a newtype wrapper around (Map TypeRep Any) is another way? But my computer doesn't have a Ord instance for TypeRep? 06:22:28 -!- MDude has changed nick to MSleep. 06:26:10 -!- MoALTz has quit (Read error: Connection timed out). 06:27:29 -!- MoALTz has joined. 06:34:26 -!- MoALTz has quit (Read error: Operation timed out). 06:45:24 -!- MoALTz_ has joined. 06:48:03 -!- clog has quit (*.net *.split). 06:50:19 -!- itidus22 has changed nick to itidus21. 06:52:25 -!- clog has joined. 06:55:42 -!- MoALTz_ has quit (Ping timeout: 248 seconds). 07:01:00 -!- oerjan has quit (Quit: Good night). 07:01:24 -!- MoALTz has joined. 07:45:14 -!- monqy has quit (Quit: leaving). 07:58:46 -!- hagb4rd has quit (Ping timeout: 252 seconds). 08:19:55 -!- zzo38 has quit (Remote host closed the connection). 08:20:58 -!- zzo38 has joined. 08:37:03 Does people in this channel know answer to my questions related to Haskell even though people in other channel don't know? 08:38:02 -!- hagb4rd has joined. 08:50:35 -!- nooga has joined. 08:54:54 -!- ais523 has joined. 09:13:13 -!- zzo38 has quit (Remote host closed the connection). 09:23:40 -!- ais523 has quit (Ping timeout: 248 seconds). 09:28:05 -!- ais523 has joined. 09:35:38 -!- MoALTz has quit (Read error: Connection reset by peer). 09:36:14 -!- MoALTz has joined. 09:49:48 -!- ais523 has quit (Ping timeout: 248 seconds). 09:51:17 -!- ais523 has joined. 10:12:56 -!- nooga has quit (Quit: Lost terminal). 10:41:24 -!- Taneb has joined. 10:42:35 Hello! 10:46:33 -!- derdon has joined. 10:56:36 -!- hagb4rd has quit (Ping timeout: 252 seconds). 11:07:58 -!- myndzi has quit (Read error: Connection reset by peer). 11:08:32 -!- myndzi has joined. 11:17:37 -!- ais523 has quit (Ping timeout: 276 seconds). 11:33:43 -!- derdon has quit (Remote host closed the connection). 11:48:41 -!- ais523 has joined. 13:09:08 -!- ais523 has quit (Ping timeout: 245 seconds). 13:09:46 -!- kallisti_ has changed nick to kallisti. 13:13:02 -!- ais523 has joined. 13:15:41 -!- MoALTz has quit (Ping timeout: 244 seconds). 13:31:50 -!- variable has quit (Excess Flood). 13:50:54 -!- variable has joined. 14:12:58 -!- MoALTz has joined. 14:22:51 -!- ais523 has quit (Read error: Operation timed out). 14:28:04 -!- kallisti has quit (Ping timeout: 276 seconds). 14:47:06 -!- Taneb has quit (Quit: SUDDEN POWER CUT). 14:47:32 -!- derdon has joined. 14:47:53 -!- clog has quit (Ping timeout: 252 seconds). 14:56:47 -!- kallisti has joined. 14:56:47 -!- kallisti has quit (Changing host). 14:56:47 -!- kallisti has joined. 15:08:43 -!- kallisti has quit (Ping timeout: 245 seconds). 15:56:42 -!- tzxn3 has joined. 15:57:05 Something really needs to be done about the spambots 16:06:12 -!- ais523 has joined. 16:11:39 -!- kallisti has joined. 16:11:40 -!- kallisti has quit (Changing host). 16:11:40 -!- kallisti has joined. 16:13:11 -!- tzxn3 has quit. 16:22:22 -!- MSleep has changed nick to MDude. 16:28:33 -!- tzxn3 has joined. 16:31:18 -!- Phantom_Hoover has joined. 16:39:51 `? Phantom_Hoover 16:40:07 Fastest ... bot ... ever. 16:40:15 Phantom_Hoover is a true Scotsman and hatheist. 16:40:40 Gregor: worst bot designer. 16:40:51 BEST IOCCC WINNER IN THIS CHANNEL 16:41:00 Oh looka how I turned that around. 16:41:02 *swoosh* 16:41:12 wait what wow 16:41:22 I know TWO celebrities now! 16:41:49 Glad to fulfill your tragically flawed definition of "celebrity" 16:42:38 The other one is a girl who was in a picture that ended up on the front page of /r/funny. I was exceptionally upset. 16:42:58 You're doing quite well, by comparison,. 16:54:35 -!- clog has joined. 16:58:40 -!- augur has quit (Remote host closed the connection). 16:58:45 -!- Taneb has joined. 16:58:48 Hello! 17:04:30 -!- Phantom__Hoover has joined. 17:09:16 -!- Phantom_Hoover has quit (Ping timeout: 276 seconds). 17:13:09 hello 17:13:37 Phantom__Hoover: don't forget ais523's game changer. 17:28:56 I'm the most unintentionally funny Northumbrian former member of Youth Parliament 17:32:42 -!- augur has joined. 17:35:04 -!- zzo38 has joined. 17:39:11 > 6/7 * 265.2125 17:39:12 227.32499999999996 17:39:15 > 6/7 * 365.2125 17:39:16 313.03928571428565 17:39:37 > 2175 - 88 17:39:38 2087 17:39:41 What are tyou trying to calculate? 17:39:46 > 2087 / 313 17:39:47 6.667731629392971 17:39:59 How many years until the IWC rerun gets to the boring but 17:40:02 *bit 17:40:14 Also, now I need to go for dinner 17:40:17 -!- Taneb has quit (Quit: Leaving). 17:58:30 Written here, I have, RIAA sues an attorney for successfully defending a woman they sued. 18:06:23 -!- Taneb has joined. 18:06:44 Hello! 18:07:36 Written here, I have, RIAA sues an attorney for successfully defending a woman they sued. <--- what!? 18:08:20 I know that doesn't make sense 18:10:05 I was referring to the subject of the post, rather than its grammar 18:14:35 so was zzo 18:14:45 zzo38: link? 18:14:47 Oh good 18:21:19 -!- ais523 has quit (Remote host closed the connection). 18:27:50 quintopia: I have no link, I just found it in the FORTUNE file printout 18:28:22 huh 18:38:05 http://www.wired.com/threatlevel/2008/09/riaa-decries-at/ 18:51:17 -!- hagb4rd has joined. 18:58:43 -!- vrais_bako has joined. 19:00:35 `@ vrais_bako ? welcome 19:00:39 vrais_bako: 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 19:01:34 (Unless you're a longtime idler whose name I don't recognize X-D ) 19:14:21 What, you actually recognize all the other 56 names here? 19:14:58 I couldn't recall half of them. For example this "Gregor" guy, don't recall seeing that sort of name ever. What a silly name. Greeee-gor. 19:15:15 -!- ais523 has joined. 19:15:33 -!- Gregor has changed nick to Flim. 19:16:18 @ping 19:16:18 pong 19:16:32 Oh thank god 19:16:59 fizzie: That's why you have to be optimistic. Over-welcoming is better than under-welcoming. 19:17:09 PS I had to /nickserv ghost Flim X-D 19:17:16 So, apologies to whoever was on as MY ponynick. 19:24:12 And... 19:24:12 -!- Pietbot has joined. 19:24:22 Still exactly the same! 19:24:35 -!- vrais_bako has quit (Ping timeout: 245 seconds). 19:25:54 -!- Pietbot has quit (Remote host closed the connection). 19:27:51 Haven't worked out the problem yet.. 19:31:15 -!- Deewiant has quit (Ping timeout: 245 seconds). 19:31:48 And because the code to identify the nick is working, I don't want to share the source 19:35:31 Taneb: I was going to say "just redact the password", but I guess that's nontrivial in Piet 19:35:31 ais523: You have 1 new message. '/msg lambdabot @messages' to read it. 19:37:14 -!- Deewiant has joined. 19:37:26 @ping 19:37:27 pong 19:37:36 I get so nervouse 19:44:11 ........................ 19:44:44 Damn it, Flim is seriously worst pony. 19:44:45 -!- Flim has changed nick to Gregor. 19:58:41 -!- Phantom__Hoover has quit (Ping timeout: 244 seconds). 20:03:54 -!- pikhq has quit (Read error: Operation timed out). 20:06:18 -!- pikhq has joined. 20:10:23 Chef isn't very good for writing IRC bots 20:13:16 Neither is Cher. 20:14:55 Haifu seems to be 20:28:08 -!- monqy has joined. 20:28:44 Taneb's rating for the usefulness of esolangs: 20:29:03 It must have the ability to input and output characters interactively 20:29:39 Some other stuff, too 20:32:03 -!- oerjan has joined. 20:39:46 Does people in this channel know answer to my questions related to Haskell even though people in other channel don't know? <-- sadly i think elliott was the one who knew the corners of haskell best 20:40:18 > const 'x' (const 'x') 20:40:20 'x' 20:40:25 i know basic haskell and have a vague idea of many extensions, but i've never experimented much with them in practice 20:40:26 > join id (const 'x') 20:40:27 Occurs check: cannot construct the infinite type: m = (->) (m a) 20:40:40 > ap id id (const 'x') 20:40:41 Occurs check: cannot construct the infinite type: a = a -> b 20:41:03 join id doesn't type, because id id needs the two id's to have different types 20:41:11 er 20:41:16 oerjan: I had many questions involving extensible product types too 20:41:30 actually, s/id/x/ in all but the first one 20:42:21 This is the only part of Haskell preventing MIBBLLII from compiling into it 20:42:30 Trivially 20:42:32 I made one but it might be inefficient. I entered let z = iterate (putExtProd Field3 "Who?") x !! 1000000 and then getExtProd z Field3 was slightly slow the first time and then faster, but then I typed getExtProd z Field1 and it just seem to run forever and never stop. 20:42:48 Taneb: there's a trick with recursive types to get things that are effectively infinite types 20:43:38 ais523, go on... 20:43:41 ENLIGHTEN 20:44:03 Taneb: newtype SelfApply b = SelfApply (SelfApply b -> b) 20:44:05 Taneb: I can't remember what it is 20:44:11 but I was hoping someone else would fill it in 20:44:31 Thing is, I want to be able to say: 20:44:32 I did think of other ways including hash tables but that requires IO 20:44:54 or possibly newtype SelfApply = SelfApply (SelfApply -> SelfApply) 20:44:56 > join fmap (+1) 0 20:44:57 2 20:45:11 > join fmap . join fmap $ (+1) 0 20:45:12 Overlapping instances for GHC.Show.Show (a -> a) 20:45:12 arising from a use of `... 20:45:22 > (join fmap . join fmap) (+1) 0 20:45:24 4 20:45:55 Taneb: sadly whenever you want a function type to be able to use itself as argument or result, you need a newtype or data wrapper 20:46:04 > (join (flip id) (join fmap)) (+1) 0 20:46:06 Occurs check: cannot construct the infinite type: 20:46:06 a = a -> t -> t1 -> t2 20:46:11 :t flip id 20:46:13 forall a b. a -> (a -> b) -> b 20:46:21 :t join (flip id) 20:46:22 Occurs check: cannot construct the infinite type: a = a -> a1 20:46:22 Expected type: (a -> a1) -> (a -> a1) -> a1 20:46:22 Inferred type: a -> (a -> a1) -> a1 20:46:36 > flip id (join fmap) (join fmap)) (+1) 0 20:46:37 : parse error on input `)' 20:46:46 > (flip id (join fmap) (join fmap)) (+1) 0 20:46:48 4 20:47:01 > (flip id (join fmap) (ap fmap (join fmap))) (+1) 0 20:47:03 8 20:47:12 > (flip id (ap fmap (join fmap)) (ap fmap (join fmap))) (+1) 0 20:47:14 27 20:47:28 > (flip id (ap fmap (join fmap)) (ap fmap (ap fmap (join fmap)))) (+1) 0 20:47:30 81 20:48:03 > (flip id (ap fmap (join fmap)) (ap fmap (ap fmap (join fmap)))) succ (fromEnum False) 20:48:05 81 20:49:24 > (flip id (ap fmap (ap fmap (join fmap))) (ap fmap (ap fmap (join fmap)))) (+1) 0 20:49:26 256 20:50:31 zzo38: i read (but don't post) at the haskell-cafe mailing list, you might have better luck with such questions there; also stackexchange/stackoverflow are places to ask questions (and elliott is there a lot still, too) 20:50:47 i'm not quite clear on the difference between them, though 20:52:56 Stack Exchange is the overarching metasite for Stack Overflow, Super User, Server Fault, and 79 other such sites. 20:53:00 i think on stackexchange/stackoverflow one is supposed to check if someone has asked similar questions before. 20:53:49 fizzie: oh, my impression was stackexchange was the more introduction level part, while stackoverflow is for research level stuff 20:53:58 How do functional languages other than Haskell and Lazy K do IO? 20:54:11 or maybe it's just the math part that works that way 20:54:14 "Stack Exchange is a fast-growing network of 82 question and answer sites -- In 2008, Jeff Atwood and Joel Spolsky created a site called Stack Overflow and brought together millions of computer programmers from around the world to help each other with detailed technical questions. That site was a phenomenal success, so, after securing a $6 million investment from Union Square Ventures, they created the Stack Exchange Network and started launching ... 20:54:20 ... new sites in August of 2010." 20:54:35 In case you could do something with it, this is it: http://sprunge.us/HBYJ Would you know how to make it efficient? 20:55:25 Taneb: well Clean uses uniqueness types and passing an explicit real world token. impure functional languages just do it with imperative functions. 20:56:11 Mercury (combined pure functional/logical) also uses a real world token, iirc 20:57:37 Mercury also uses a Prolog convention for passing them implicitly, which seems a little like a State monad but i'm not sure if it is (Mercury being based on relations, not functions, so the basic category for the monads would be different) 20:58:53 Taneb: definite clause grammars, the convention is called, and i think it was invented for parsing, as the name suggests 20:59:08 but it also works to do Mercury's IO 20:59:16 oerjan: Do you know if there is some ways to do what I am trying to do? 21:00:01 zzo38: i half-expect that if it is possible, oleg kiselyov must have done it :P 21:00:10 This gives me an idea for an esolang 21:00:18 An imperative language with functional IO 21:00:29 oerjan: Who are they and where is the such file? 21:01:03 Can you understand from the file I have pasted? 21:01:03 his site is http://okmij.org/ftp/ 21:02:39 zzo38: among other things, he invented iteratees 21:02:49 Taneb: using each paradigm for something it's bad at? 21:06:45 ais523, PRECISELY 21:08:01 zzo38: http://okmij.org/ftp/Haskell/generics.html#PolyVariant seems sort of dual, being about extensible coproducts 21:08:42 I could probably to extensible sums easier and more efficient way I think I have ideas about it 21:08:58 But I am trying extensible products at this time 21:09:44 Right, the thing about imperative IO is that IO can be anywhere 21:10:12 Whereas in functional programming languages, IO has to be in a certain place or god knows what'll happen 21:11:48 Functional program languages' functions are the main kaboodle 21:11:57 Everything is in little functions 21:12:10 Whereas imperative programming languages use a lot more statements 21:18:27 it's imperative to make a statement 21:20:30 Taneb: I was going to say "just redact the password", but I guess that's nontrivial in Piet 21:21:15 is the piet written by hand, or autogenerated from something else? 21:21:41 The latter, 'm afraid 21:21:46 if by hand, maybe it would be possible to put the password in some recognizable region 21:22:04 * oerjan doesn't actually know how piet works 21:24:47 oerjan: I look at that file; that is not quite right at all; you have to tell the previous label to make up a new one, and you have to explicitly define the extensions of existing functions, and so on. I did think of other way of extensible sums, in a way related to dependent sums and to type families. 21:25:04 And anyways, that is only extensible sums, not extensible products. 21:25:19 ok 21:25:46 -!- Phantom__Hoover has joined. 21:25:55 One last test 21:26:00 -!- Pietbot has joined. 21:26:08 )df iiisso 21:26:35 GRAAAAH 21:26:41 -!- Pietbot has quit (Remote host closed the connection). 21:30:44 http://sprunge.us/WMEO 21:30:53 That's the piet assembler source 21:32:11 With the password cunningly hidden 21:35:37 http://www.toothycat.net/wiki/wiki.pl?MoonShadow/Piet 21:35:46 There's the documentation for the piet assembler 21:37:00 I did think of a kind of extensible product types with (Map TypeRep) but the Data.Typeable differs with old version and with new version, so it won't work 21:39:44 Anyone gonna take a look/ 21:39:47 Anyone gonna take a look? 21:40:14 I'm converting from pnm to ppm using Gimp, then running with npiet 21:43:42 `? Taneb 21:43:45 Taneb is not actually Ngevd, no matter what you may have heard. 21:44:59 `? ngevd 21:45:02 ​@+挞j.k%BZ..j'!g(D(N.nFთ.2s.J}>G..Yg΀Lag)T+.o..D.'v- \ .m8=@+8w7RqvI׭9,EkOi..jrt19.K-.bT.R_.E.`..:..O 21:47:37 `? monqy 21:47:41 The friendship monqy is an ancient Chinese mystery; ask itidus21 for details. 21:47:48 `? itidus21 21:47:52 itidus21 just made some instant coffee. 21:47:58 `? coffee 21:48:03 coffee? ¯\(°_o)/¯ 21:48:19 `? instant_coffee 21:48:23 instant_coffee? ¯\(°_o)/¯ 21:49:01 `learn Coffee is a strange hot brown liquid, often consumed, sometimes with milk and sugar. It contains chemicals considered stimulants. 21:49:04 I knew that. 21:49:09 `? coffee 21:49:12 Coffee is a strange hot brown liquid, often consumed, sometimes with milk and sugar. It contains chemicals considered stimulants. 21:49:29 Oh, I'm not as funny delibrately as I can be accidentally 21:49:55 hj 21:50:05 `? hj 21:50:08 hj? ¯\(°_o)/¯ 21:59:54 `? hi 21:59:58 hi? ¯\(°_o)/¯ 22:00:31 -!- Nisstyre has joined. 22:03:34 `? ../../../../../../../bin/bash 22:03:37 ​ELF... 22:07:39 fancy. 22:10:40 `? /bin/bash 22:10:43 ​/bin/bash? ¯\(°_o)/¯ 22:10:59 It appens it to the existing path. 22:11:09 So that's ....../wisdom//bin/bash 22:14:18 -!- calamari has joined. 22:16:10 `ls 22:16:14 bin \ canary \ karma \ lib \ main \ paste \ quotes \ share \ wisdom 22:16:23 `? ../bin/bash 22:16:26 ​../bin/bash? ¯\(°_o)/¯ 22:16:39 `ls /wisdom 22:16:43 ls: cannot access /wisdom: No such file or directory 22:16:47 `ls wisdom 22:16:51 ​? \ ais523 \ augur \ banach-tarski \ c \ cakeprophet \ category \ coffee \ comonad \ coppro \ egobot \ elliott \ endofunctor \ esoteric \ everyone \ finland \ finns \ fizzie \ flower \ friendship \ functor \ fungot \ glogbot \ gregor \ hackego \ haskell \ ievan \ intercal \ itidus20 \ itidus21 \ kallisti \ lens \ lifthrasiir \ mad \ misspellings of croissant \ monad \ monads \ monoid \ monqy \ ngevd \ nooga \ oerjan 22:17:01 `? everyone 22:17:04 `? lens 22:17:04 Everyone in here is mad. 22:17:06 `? functor 22:17:08 A lens is a monoidal natural transformation between higher-order coalgebra functors 22:17:11 `? coffee 22:17:15 `? c 22:17:15 Coffee is a strange hot brown liquid, often consumed, sometimes with milk and sugar. It contains chemicals considered stimulants. 22:17:17 `? flower 22:17:21 C is the language of��V�>WIד�.��Segmentation fault 22:17:22 flower. what IS a flower? 22:17:24 `? glogbot 22:17:28 glogbot is a snitch, don't trust it. 22:17:38 `? functor 22:17:42 Functors are just morphisms in the category of small categories 22:17:53 `? finns 22:17:57 "in the category of small categories" lol 22:17:59 Finns are helpful, albeit grossly overpopulated (cf. 'Finland'). 22:18:05 `? finland 22:18:09 Finland is a European country. There are two people in Finland, and at least five of them are in this channel. Corun drives the bus. 22:18:11 Gregor: what's so funny? 22:18:13 Functors are just morphisms in the category of small categories 22:18:18 do you find the truth funny? 22:18:25 `? mad 22:18:29 ​"But I don't want to go among mad people," Alice remarked. "Oh, you can't help that," said the Cat: "we're all mad here. I'm mad. You're mad." "How do you know I'm mad?" said Alice. "You must be," said the Cat, "or you wouldn't have come here." 22:18:42 `? misspellings of croissant 22:18:45 misspellings of crosant? ¯\(°_o)/¯ 22:18:54 `? oerjan 22:18:58 Your evil overlord oerjan is a lazy expert in future computation. 22:19:09 `? category 22:19:13 Categories are just categories. 22:19:21 `? ievan 22:19:25 ievan is basically http://www.youtube.com/watch?v=4om1rQKPijI 22:19:26 hm someone from the future must have changed that. 22:21:06 oerjan: yes I am a firm believer in the existence of evidence of the future. 22:21:52 -!- tzxn3 has quit (Quit: Leaving). 22:21:57 otherwise I would have to become a future agnostic. 22:22:29 `ls 22:22:33 bin \ canary \ karma \ lib \ main \ paste \ quotes \ share \ wisdom 22:22:45 `rm 22:22:50 rm: missing operand \ Try `rm --help' for more information. 22:22:52 I suppose I could find inductive evidence of the future 22:22:58 based on the occurence of the future in the past. 22:23:04 `ls .* 22:23:26 `touch abc 22:23:29 No output. 22:23:36 `ls 22:23:39 abc \ bin \ canary \ karma \ lib \ main \ paste \ quotes \ share \ wisdom 22:23:48 `rm abc 22:23:52 No output. 22:23:57 (It does respond to PM ... ) 22:24:03 ls: cannot access .*: No such file or directory 22:24:13 Gregor: well, obviously. 22:24:20 so I'm guessing I wouldn't want to do rm -rf / 22:24:21 calamari just send plenty of PRIVMSGs 22:24:23 *sent 22:24:23 kallisti: ah but "I would have to become" assumes the future exists, you see! 22:24:35 `run rm -rf / 22:24:39 rm: it is dangerous to operate recursively on `/' \ rm: use --no-preserve-root to override this failsafe 22:24:43 Pff 22:24:44 `run rm -rf /* 22:24:47 rm: cannot remove `/bin/bash': Read-only file system \ rm: cannot remove `/bin/rbash': Read-only file system \ rm: cannot remove `/bin/sh': Read-only file system \ rm: cannot remove `/bin/ln': Read-only file system \ rm: cannot remove `/bin/uname': Read-only file system \ rm: cannot remove `/bin/stty': Read-only file system \ rm: cannot remove `/bin/cat': Read-only file system \ rm: cannot remove `/bin/touch': Read-only 22:24:54 That worked well. 22:25:03 `ls 22:25:07 bin \ canary \ karma \ lib \ main \ paste \ quotes \ share \ wisdom 22:25:39 `run find / -delete 22:25:42 `ls main 22:25:42 find: cannot delete `/sys/fs': Permission denied \ find: cannot delete `/sys/devices/platform/uevent': Permission denied \ find: cannot delete `/sys/devices/platform/alarmtimer/uevent': Permission denied \ find: cannot delete `/sys/devices/platform/alarmtimer/modalias': Permission denied \ find: cannot delete `/sys/devices/platform/alarmtimer/subsystem': Permission denied \ find: cannot delete `/sys/devices/platform/alarmtimer/driver': 22:25:46 main 22:25:47 `ls 22:25:52 bin \ canary \ karma \ lib \ main \ paste \ quotes \ share \ wisdom 22:25:58 `rm main 22:26:03 No output. 22:26:23 what was main? 22:26:28 Donno 22:26:35 Probably bullshit. 22:26:40 whatever it was.. it's gone now 22:27:03 I know of indexed monads and indexed comonads; are categories like indexed monoids? 22:27:24 zzo38: sounds about right 22:27:33 Gregor: congrats on your ioccc win.. do you have the source posted somewhere? 22:27:42 calamari: They've requested we don't post it 'til they do. 22:28:00 ah ok.. I cliked their link and it was showing things from 2006 22:28:10 so I thought well maybe they are never going to post it lol 22:28:21 This is the first one they've ran since 2006. 22:31:30 of course being the ioccc, seeing your source won't help me understand what your program does lol 22:32:15 it's a matter of how much effort you want to spend. 22:32:30 yep 22:33:08 > map chr [80,82,73,86,77,83,71,32,35,101,115,111,116,101,114,105,99,32,58,41] 22:33:09 "PRIVMSG #esoteric :)" 22:33:38 ) 22:34:20 The Pietbot signal char 22:35:11 Did the GHC Any type used to be by itself but now has a kind parameter? 22:35:19 Like fungot's ^ or hackego's ` or egobot's ! 22:35:19 Taneb: s/ or/ 1??? fnord ( car x) ( lambda ( x) 22:35:26 Taneb: and does it get to the point of recognizing the ) ? 22:35:55 I don't know 22:36:04 -!- ais523 has quit (Remote host closed the connection). 22:36:31 you might want to check 22:36:59 -!- sebbu has quit (Read error: Connection reset by peer). 22:38:27 -!- Pietbot has joined. 22:38:29 -!- Pietbot has quit (Remote host closed the connection). 22:38:37 Impatience will be my undoing 22:38:41 -!- Pietbot has joined. 22:38:45 ) 22:39:01 I'll leave it for a minute 22:40:27 -!- sebbu has joined. 22:41:36 Seems like nothing 22:41:38 -!- Pietbot has quit (Remote host closed the connection). 22:43:42 Taneb: hm i don't think this is right: 22:43:51 113 sub bz._track_2 #q for quit 22:43:51 br.very_start.pop 22:44:10 it seems to me like the final pop will underflow the stack 22:44:34 I think you may be right 22:46:30 -!- Pietbot has joined. 22:46:38 pop in 102 sub bz._track_1 22:46:38 notdeadfish: 22:46:38 113 sub bz._track_2 #q for quit 22:46:44 also looks suspicious 22:47:03 Yes, there should be a dup there? 22:47:10 that is, notdeadfish: might be entered with either something on the stack or not 22:47:42 anyone know of a way to read the existing characters off a pseudoterminal? 22:48:20 -!- Pietbot has quit (Remote host closed the connection). 22:49:31 -!- Pietbot has joined. 22:49:34 ) 22:49:48 Damn 22:49:54 My debugging line isn't working 22:50:16 there's always a chance the assembler is faulty 22:50:17 Because # comments lines out 22:50:22 -!- Pietbot has quit (Remote host closed the connection). 22:50:24 or for that matter, the piet interpreter 22:51:06 -!- Pietbot has joined. 22:51:08 ) 22:52:03 -!- Pietbot has quit (Remote host closed the connection). 22:52:15 note if you added that dup, you now might want a pop at the beginning of track 1, i think. although that should just be garbage, not fatal. 22:53:03 also, even then )dq will be an alternative quit command 22:53:23 It's not getting past the "PRIVMSG #esoteric :)" bit 22:53:39 alas, then 22:54:44 in fact, is the @"\n" 22:54:44 line being run? 22:54:49 oh wait 22:54:54 it's not a privmsg anyhow 22:56:14 Right, let's test 22:56:15 -!- Pietbot has joined. 22:56:15 -!- Pietbot has quit (Client Quit). 22:56:25 Okay, the @"\n" is getting run 22:57:59 More testing 22:58:05 -!- Pietbot has joined. 22:58:12 -!- Pietbot has quit (Remote host closed the connection). 22:58:17 Error in the test 22:58:46 I wish the assembler would treat "#" as a character, not a comment marker 22:59:30 -!- Pietbot has joined. 22:59:30 TEST 22:59:30 -!- Pietbot has quit (Client Quit). 22:59:38 IT SPEAKS 22:59:43 WAT 22:59:59 I was just seeing if I was getting the saying things right 23:02:07 might want to check if it gets any characters read at all 23:02:16 Is there a package with a more portable unsafeCoerce and Any? 23:02:40 The P is being read 23:03:13 but not the R? 23:03:19 Ooh, the R is as well 23:03:35 THE PLOT THICKENS 23:04:04 Aha 23:04:12 Npiet is being all clever 23:04:14 And sneaky 23:04:19 I need a different interpreter 23:04:22 too sneaky? 23:04:34 It's prompting a ? for input 23:04:50 for _character_ input? 23:04:53 >_< 23:04:56 Apparently 23:05:10 I may be wrong, but that's what it looks like 23:05:30 there isn't an option to turn it off? 23:06:33 Gotcha 23:07:00 Gregor: Is globbing broken? 23:07:35 `ls /usr/bin/a* 23:07:39 ls: cannot access /usr/bin/a*: No such file or directory 23:07:42 `run ls /usr/bin/a* 23:07:47 ​/usr/bin/a2p \ /usr/bin/addpart \ /usr/bin/addr2line \ /usr/bin/aot-compile \ /usr/bin/appletviewer \ /usr/bin/apropos \ /usr/bin/apt \ /usr/bin/apt-cache \ /usr/bin/apt-cdrom \ /usr/bin/apt-config \ /usr/bin/apt-extracttemplates \ /usr/bin/apt-ftparchive \ /usr/bin/apt-get \ /usr/bin/apt-key \ /usr/bin/apt-mark \ /usr/bin/apt-sortpkgs \ /usr/bin/aptitude \ /usr/bin/aptitude-create-state-bundle \ /usr/bin/aptitude-curses 23:07:57 IT'S DOCUMENTED 23:08:08 or at least, should be 23:08:10 `help 23:08:12 Runs arbitrary code in GNU/Linux. Type "`", or "`run " for full shell commands. "`fetch " downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert " can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/ 23:08:25 thanks 23:08:26 yep, that counts as documented. 23:08:55 evil, despicable documentation, but still. 23:09:35 `apt-get moo 23:09:39 W: Unable to read /etc/apt/apt.conf.d/ - DirectoryExists (2: No such file or directory) \ (__) \ (oo) \ /------\/ \ / | || \ * /\---/\ \ ~~ ~~ \ ...."Have you mooed today?"... 23:09:54 ASCII art is definitely better compressed into one line. 23:10:00 you don't say. 23:10:46 `aptitude moo 23:10:51 There are no Easter Eggs in this program. 23:11:19 `run ping 8.8.8.8 23:11:22 pong 23:11:28 lol 23:11:33 So useful. 23:11:58 `run shutdown -h now 23:12:02 bash: shutdown: command not found 23:12:11 calamari: Yeah, I usually run arbitrary commands from random people as root. 23:12:21 Gregor: great idea! 23:12:29 I did that once 23:12:38 but it was in a VM where I could reimage 23:12:53 > chr 41 23:12:54 ')' 23:13:03 > chr 58 23:13:05 ':' 23:13:21 map ord "PRIVMSG #esoteric :)" 23:13:23 > map ord "PRIVMSG #esoteric :)" 23:13:24 [80,82,73,86,77,83,71,32,35,101,115,111,116,101,114,105,99,32,58,41] 23:13:26 Taneb: i already checked those :P 23:13:42 first thing i did 23:14:36 `uname -a 23:14:40 Linux umlbox 3.0.8-umlbox #2 Sun Nov 13 21:30:28 UTC 2011 x86_64 GNU/Linux 23:15:22 It's definitely getting to the first e in #esoteric 23:15:36 lol.. more up to date than my own 23:15:51 Aha 23:15:54 Ahahahahahah 23:16:01 Ahahahahahahahahahahahahahahaha 23:16:04 Found it :) 23:16:06 pop in dup 99 dup bnz.start_in # c 23:16:09 Should be: 23:16:13 pop in dup 99 sub bnz.start_in # c 23:16:54 sheesh :D 23:17:30 `run :(){ :|:& };: 23:17:34 No output. 23:18:09 * oerjan thought calamari had been here long enough to do all those things before 23:18:20 although maybe not since the new HackEgo 23:18:52 -!- Pietbot has joined. 23:18:56 ) 23:18:57 Testing 23:19:02 wut 23:19:02 oerjan: maybe I have and I just forgot 23:19:03 )df iiisso 23:19:04 Testing 23:19:10 It's a start 23:19:16 ( 23:19:17 I forgot to remove that debug line 23:19:22 ) hi 23:19:22 Testing 23:19:24 -!- Pietbot has quit (Remote host closed the connection). 23:19:43 now on to bigger and fiercer bugs 23:20:06 This channel's parse depth is all effed up now. 23:20:12 We're at like -5 23:20:19 parse depth? 23:20:26 ( vs ) 23:20:29 ) "best bot prefix" 23:21:23 -!- Deewiant has quit (Read error: Connection reset by peer). 23:21:34 -!- Deewiant has joined. 23:22:03 > chr 's' 23:22:04 Couldn't match expected type `GHC.Types.Int' 23:22:04 against inferred type ... 23:22:10 > ord 's' 23:22:12 115 23:23:00 Ready? 23:23:05 -!- Pietbot has joined. 23:23:12 )df iiisso 23:23:53 Gregor: that was effed up last time someone suggested making a bot interpreting the channel as brainfuck, i think 23:24:06 )q 23:24:28 Okay, the deadfish code's messed up a tad 23:24:31 -!- Pietbot has quit (Read error: Connection reset by peer). 23:27:19 Okay, either I've messed up or Pietbot has already achieved sentience 23:27:39 or something else've messed up 23:27:42 The seppuku code isn't working 23:30:26 -!- Deewiant has quit (Ping timeout: 245 seconds). 23:32:03 `df -h 23:32:06 df: cannot read table of mounted file systems: No such file or directory 23:32:15 -!- Deewiant has joined. 23:35:22 `cat /proc/self/mounts 23:35:26 rootfs / rootfs rw 0 0 \ none /bin hostfs ro,nosuid,relatime,/bin/ 0 0 \ none /usr hostfs ro,nosuid,relatime,/usr/ 0 0 \ none /dev hostfs ro,nosuid,relatime,/dev/ 0 0 \ none /opt hostfs ro,nosuid,relatime,/opt/ 0 0 \ none /lib hostfs ro,nosuid,relatime,/lib/ 0 0 \ none /sbin hostfs ro,nosuid,relatime,/sbin/ 0 0 \ none /lib64 hostfs ro,nosuid,relatime,/lib64/ 0 0 \ none /hackenv hostfs rw,nosuid,relatime,/tmp/hackenv.0CLmULuwUT/ 23:38:40 Taneb: um d keeps 0 at 0, not wrapping to 255 23:38:48 Really? 23:38:49 Oh 23:38:51 also s needs a test for 256 as well 23:39:40 Can I propose that http://esoteric.voxelperfect.net/w/index.php?title=DF&redirect=no redirects to deadfish rather than DateFuck? 23:40:40 heh 23:41:00 Taneb: oh and 10 sub bz.very_start.in 23:41:06 shouldn't have the .in 23:41:45 or alternatively, that should be start_in rather than very_start 23:43:25 df_o should use outn rather than out, i think 23:52:12 http://sprunge.us/EHMH 23:54:37 -!- hagb4rd has quit (Read error: Connection reset by peer). 23:55:18 -!- cheater__ has joined. 23:55:45 -!- hagb4rd has joined. 23:57:19 fuck,..now i completlely screwed up things.. congratulations hagb4rd 23:57:36 burn in hell 23:57:46 :'/ 23:57:50 -!- cheater_ has quit (Ping timeout: 260 seconds). 23:58:16 isn't that all you worked for stupido? yes you're right