00:06:32 -!- azaq23 has quit (Quit: Leaving.). 00:10:15 -!- zzo38 has quit (Remote host closed the connection). 01:20:26 -!- pingveno has quit (Read error: Operation timed out). 01:22:50 -!- pingveno has joined. 02:31:39 -!- oerjan has joined. 02:41:52 I CAN LIGHTLY BRUSH ON THIS TOUCHPAD AND YOU THINK IT'S A CLICK. 02:42:17 i seem to recall that from way back with mine, before changing the settings ;) 02:42:48 Yeah, have to make it ignore accidental input or it's a real hair trigger 02:42:55 although just the other day it got flaky and got stuck in some "always clicking" mode 02:43:30 it did not even help restarting the computer - needed a full power off 02:43:44 *move finger* -> Computer: DID YOU MEAN CLICK? I'M GONNA CLICK. CLICK, OKAY? CLICK. 02:44:53 i have this vague idea of some quote/meme running around saying "TO SHREDS YOU SAY?" 02:44:59 saw it on reddit yesterday 02:45:12 * oerjan googles 02:45:15 oerjan: Professore Farnsworth on Futurama 02:45:19 *Professor 02:45:30 In the episode where Fry needs to find an apartment 02:45:33 ah 02:45:53 @google youtube to shreds you say 02:45:53 http://www.youtube.com/watch?v=3p3UEzPj4Sk 02:45:53 Title: YouTube - Futurama - To shreds you say 02:47:41 ah. i totally misunderstood the reference then, thought it was something like your CLICK thing, but more ominous 02:48:01 Haha. It's a touch more ominous 02:48:10 More of a "one-sided phone conversation" sort of ominous 02:48:10 perhaps involving some giant killer robot... 02:48:14 ah. 02:48:36 You only hear the reaction to the horror, rather than the event itself :D 02:49:06 i should get some headphones, so can actually listen to video in the middle of the night 02:49:11 *i can 02:50:33 Also, something funny from #haskell 02:50:37 @where wtfmonad 02:50:37 http://memegenerator.net/instance/7710889 02:52:06 sadly not historically accurate (curry was already dead when haskell was named) 02:52:22 Yes, we had that discussion :P 02:52:40 If you let facts pollute humor, you'll never laugh again :D 02:53:10 in fact i recall from the history of haskell there is this other quite by his wife, something like, "you know he never really liked the middle name haskell" 02:53:27 er /middle // 02:53:27 Also mentioned 02:53:39 In almost those exact words 03:37:56 -!- pikhq_ has joined. 03:38:08 -!- pikhq has quit (Ping timeout: 248 seconds). 03:39:24 -!- TeruFSX has joined. 03:46:45 "The Franz license forbids you to use the Free Express Edition 03:46:45 to provide services or products to others for which you are 03:46:45 compensated (by payment of money or otherwise, directly or indirectly) 03:46:45 in any manner." 03:47:02 I suppose they don't consider being recognized as compensation? It's still a bit strict 03:48:14 sounds like you have to be a lawyer to even guess at how "otherwise" would be interpreted by a court 03:50:31 some day some court is going to rule that laws and contracts have become so complicated that an ordinary person cannot be expected to understand or follow them, and then the whole house of cards is going to come crashing down 03:52:23 lol 04:01:56 -!- NihilistDandy has quit (Quit: Linkinus - http://linkinus.com). 04:10:50 Y'know the worst bit about the whole principle that ignorance is no defence? 04:11:24 It came about in a time where claiming ignorance of the law was a complete, brazen lie. 04:19:37 ouch 04:31:20 I have to wonder now that it's mentioned. 04:31:43 How often are people convicted for things that they didn't expect to be illegal at all, and would be justified in thinking so. 04:32:22 I doubt it's all *that* often... 04:32:32 What usually bites people in the ass is ignorance of *civil* law. 04:35:12 *sigh* is the wiki spam _still_ ongoing 04:37:14 really? eugh 04:42:01 Is it a botnet or somethin? 04:42:03 something* 04:47:37 i think someone needs to tell graue that our wiki cannot continue without an active person with full access to it 04:49:28 Lymia: it seems like this time ais523 (who has only admin access) has problems finding any way to detect the new spam... 04:51:12 -!- TeruFSX has quit (Ping timeout: 260 seconds). 04:52:07 Block it with a captcha 04:52:31 -!- MDude has changed nick to MSleep. 04:55:32 Lymia: we already _have_ a captcha, i believe 04:56:16 (i haven't seen it myself) 04:57:15 * Sgeo sees Weblocks and thinks "Seaside" 04:59:02 -!- zzo38 has joined. 05:01:12 I tried to invent a notation for Test cricket. It involves various styles of type (bold, italic, calligraphic, etc), superscripts, subscripts, numbers, various symbols, accent marks; and you still need to have extra comments too sometimes. 05:03:44 (It could be modified to also work with One Day or Twenty20 as well if you want it to) 05:26:37 -!- sebbu has quit (Read error: Connection reset by peer). 05:27:04 -!- sebbu has joined. 05:27:04 -!- sebbu has quit (Changing host). 05:27:04 -!- sebbu has joined. 05:31:04 -!- calamari has joined. 05:56:32 -!- hagb4rd has joined. 06:18:37 -!- Sgeo has quit (Ping timeout: 240 seconds). 06:27:27 Wait. 06:27:40 http://www.esolangs.org/wiki/BitBitJump < This would do conditionals with self-modifying code, and self-modifying code only, right? 06:28:32 Yes I think it cannot do conditional jumps in any other way 06:29:59 -!- FireFly has joined. 06:39:57 -!- hagb4rd has quit (Read error: Connection reset by peer). 06:50:18 -!- Cheery has joined. 07:11:49 -!- monqy has quit (Quit: hello). 07:13:42 -!- BeholdMyGlory has quit (Remote host closed the connection). 07:42:13 -!- zzo38 has quit (Remote host closed the connection). 07:43:30 -!- calamari has quit (Quit: Leaving). 08:04:18 -!- FireFly has quit (Quit: swatted to death). 08:12:26 -!- siracusa has quit (Ping timeout: 260 seconds). 08:13:26 -!- siracusa has joined. 08:24:24 -!- AndrewNP has joined. 08:27:13 -!- AndrewNP has left. 08:37:08 -!- MigoMipo has joined. 09:02:11 -!- MigoMipo has quit (Read error: Connection reset by peer). 09:26:42 http://www.youtube.com/watch?v=epYmWk9Q3g4&feature=related 09:26:43 http://www.youtube.com/watch?v=epYmWk9Q3g4&feature=related 09:26:43 http://www.youtube.com/watch?v=epYmWk9Q3g4&feature=related 09:30:09 -!- oerjan has quit (Quit: leaving). 09:56:42 -!- hagb4rd has joined. 10:21:42 -!- wareya_ has joined. 10:24:30 -!- wareya has quit (Ping timeout: 246 seconds). 10:31:56 that's cool, i didn't know that vim had a special way for entering japanese 10:31:59 that's niiiice 12:49:59 -!- cheater_ has quit (Ping timeout: 240 seconds). 12:52:30 -!- FireFly has joined. 13:20:43 -!- cheater_ has joined. 13:52:15 -!- BeholdMyGlory has joined. 14:40:02 -!- Gregor has set topic: http://www.devicemag.com/2011/05/10/microsoft-closing-in-on-skype-for-buyout-8-billion-deal-lined-up/ FFFFFFFFFFUUUUUUUUUUUUUUUUUUUUUU | Logs: http://codu.org/logs/_esoteric/ and http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 14:56:40 -!- Phantom_Hoover has joined. 14:56:44 H 14:56:44 Phantom_Hoover: You have 1 new message. '/msg lambdabot @messages' to read it. 15:14:05 -!- MigoMipo has joined. 15:15:44 -!- pikhq has joined. 15:15:58 -!- pikhq_ has quit (Ping timeout: 252 seconds). 15:17:38 http://en.wikipedia.org/wiki/Isotopes_of_tantalum 15:17:40 O.o 15:18:35 Tantalum has an isotope which is metastable despite the ground state having a half-life of 8 hours. 15:21:04 http://www.rfreitas.com/Nano/TangibleNanomoney.htm 15:21:39 Despite the innate silliness of trying to work out what currency will be used post-scarcity, this does seem to be interesting. 15:27:57 -!- elliott has joined. 15:29:38 -!- MSleep has changed nick to MDude. 15:32:07 -!- elliott has quit (Remote host closed the connection). 15:32:11 -!- Hirams has joined. 15:32:17 As it were me to find the program against Google, which itself opened and closed the sites, in that time when me íåòó near computer. She worked as DDOS attack, has put(deliver)ed, but itself will go to walk. Remarkable Google on I created wipe after such, but sites miscellaneouses opened on all-round themes with enumeration of the main trends of the themes advisable and regulation amount visit given to directivities. 15:32:17 If I have simply program, that all like Google collectors immediately loose in that material, which I interest, not will possible create on me psychological portrait on my taste, habit, interest... 15:32:17 Since Google aside from installation cookie beside me on computer else has its extensive statistical database about which is hard cushioned. Our criticality on computer in contrast with their given about us - a triviality so shave off possible only boat, directed on opening and closing site while master íåòó building or than that occupied. Spreading the program ïîäîðâåò given about folk and all-out collection to information - better than attack DDoS attack 15:32:17 Google, it is necessary ïîäîðâàòü his(its) purposes. In addition there is one more psychological advantage to the whole - advertisment control on its taste - a triviality, but pleasantly. Not whole advertisment I do not like, but here is determined sort can, and was useful at whiles. One more plus in that that managers of the local-area networks too got mixed up in my interest. Here just appropriately add such characteristic in program that she ïðåáûâàëà on 15:32:17 open page not strictly fixed amount of time, but different - that was an illusion of the functioning(working) the alive person. That is to say, who stakes out my opening the pages, could easy believe that works the alive person. Length of stay to fasten from amount of the letters on page. Here is such order on given program - some she was much needs and had its demand, particularly for one, particularly values invulnerability. 15:32:22 -!- Hirams has left ("Âûøåë èç êàíàëà"). 15:32:53 -!- elliott has joined. 15:39:16 -what- 15:40:31 what 15:43:48 03:50:31: some day some court is going to rule that laws and contracts have become so complicated that an ordinary person cannot be expected to understand or follow them, and then the whole house of cards is going to come crashing down 15:43:51 hasn't it already 15:44:12 -!- Vorpal has joined. 15:45:17 elliott, how goes selecting components 15:46:17 Well, I was busy for about an hour after you left, after which point I was too tired to do anything, and then an hour later I became busy sleeping. 15:46:25 Soo'm not that much. 15:47:57 -!- oerjan has joined. 15:49:04 elliott, ah okay... 15:49:32 You can just go ahead and buy something if you really need it that quickly /shrug 15:49:49 fuck I HATE VGA. I have to keep pressing auto-adjust every few minutes... 15:50:10 elliott, perhaps tomorrow then, I won't have time to order today anyway 15:53:15 -!- monqy has joined. 16:07:37 -!- augur has quit (Remote host closed the connection). 16:23:16 -!- MigoMipo has quit (Read error: Connection reset by peer). 16:41:15 -!- augur has joined. 16:52:09 "TIL all the pens used and issued to the White House and all the United States government in the past 74 years were made by blind people." 16:52:31 My immediate thought: I can't believe they get away with exploiting blind people like that. 16:54:53 http://i.imgur.com/w7qYp.jpg 16:54:54 SHARPIE WINS 16:55:37 http://en.wikipedia.org/wiki/Skilcraft 16:55:38 Hmm. 16:55:45 Do they refuse to employ sighted people? 16:57:14 they just require all employees to share the company vision 16:57:52 You are a bad man, oerjan. 16:58:35 how rude 17:08:25 -!- zzo38 has joined. 17:19:46 > 3/238 17:19:46 1.2605042016806723e-2 17:19:51 > 1/181 17:19:51 5.5248618784530384e-3 17:20:51 @hoogle (a, a) -> Rational 17:20:51 Prelude fst :: (a, b) -> a 17:20:51 Data.Tuple fst :: (a, b) -> a 17:20:51 Prelude snd :: (a, b) -> b 17:21:13 @hoogle RealFrac a => (a, a) -> Rational 17:21:13 Prelude fst :: (a, b) -> a 17:21:13 Data.Tuple fst :: (a, b) -> a 17:21:13 Prelude snd :: (a, b) -> b 17:21:19 oerjan: it's a -> a -> isn't it ... 17:21:22 oh wait 17:21:23 that thing 17:21:30 What thing. 17:21:33 @hoogle RealFrac a => a -> a -> Rational 17:21:34 Data.Ratio approxRational :: RealFrac a => a -> a -> Rational 17:21:34 Data.Ratio (%) :: Integral a => a -> a -> Ratio a 17:21:34 Prelude asTypeOf :: a -> a -> a 17:21:40 that thing 17:21:56 > approxRational (pi-1/100, pi+1/100) 17:21:57 Overlapping instances for GHC.Show.Show 17:21:57 ((a, a... 17:22:07 er 17:22:12 > approxRational (pi-1/100) (pi+1/100) 17:22:13 0 % 1 17:22:21 wtf 17:22:32 hm maybe it's not a range 17:22:32 lol 17:22:40 it isn't 17:22:41 > approxRational pi (1/100) 17:22:41 its precision i think 17:22:42 22 % 7 17:22:54 > approxRational pi (1/100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000) 17:22:55 884279719003555 % 281474976710656 17:23:04 > approxRational pi 0 17:23:04 884279719003555 % 281474976710656 17:23:09 WAT 17:23:20 ...i don't think pi::Double gives that much precision :) 17:23:33 i would expect 0 to be disallowed :) 17:23:49 indeed 17:24:01 > approxRational (pi::CReal) 0 17:24:02 *Exception: CReal.toRational 17:24:07 lurlz 17:24:22 > approxRational (pi::CReal) (1/100) 17:24:22 *Exception: CReal.toRational 17:24:34 lame 17:24:38 wtf 17:26:19 i'd say lacking approxRational is a serious hole in a CReal implementation 17:27:43 elliott, huh what haskell package is that from? 17:28:04 Data.Ratio 17:28:06 aha 17:28:14 useful stuff 17:28:18 i'd say lacking approxRational is a serious hole in a CReal implementation 17:28:22 it probably has its own version 17:28:22 ah 17:28:27 approxRational seems to depend on toRational 17:28:46 oerjan, it seems that more than half of knowing haskell is knowing it's standard library 17:28:52 which I lack a lot in 17:29:34 not really 17:29:48 base is basically 17:29:54 - IO, IO, lots of IO 17:29:58 - basic data structures 17:30:01 - LOTS OF THEORY 17:30:10 by which I mean typeclasses :-P 17:30:37 Vorpal: http://www.haskell.org/ghc/docs/latest/html/libraries/index.html 17:30:49 note right-hand column 17:30:59 hmm bytestring coming with ghc seems recent 17:31:04 ah 17:31:04 hm 17:31:06 Vorpal: http://www.haskell.org/ghc/docs/latest/html/libraries/base/index.html 17:31:08 that's just the stdlib 17:31:12 ah 17:31:14 is it possible to refresh a script tag link javascript file without refreshing the page? 17:31:14 "script tag link javascript file"? 17:31:14 noun noun noun noun noun 17:31:14 thats how i talk 17:31:15 X-D 17:31:24 Vorpal: the GHC namespace you probably Don't Need 17:31:33 elliott, internals I presume 17:31:42 Vorpal: yes, and some operations not provided portably 17:31:48 and unsafe things :) 17:32:00 elliott, but even with the docs, there is the question of actually learning what useful stuff is provided in each thing 17:32:17 well the Data hierarchy is very obvious if you ask me 17:32:23 it's obvious what Data.List is about 17:32:29 elliott, all have their uses certainly, though I haven no clue why I would want unsafe things unless I'm implementing the IO monad myself or something like that 17:32:33 Foreign is obviously FFI stuff 17:32:39 Vorpal: you don't 17:32:50 and unsafe things aren't used in construction of the IO monad 17:32:55 well they are, but not unsafePerformIO or unsafeCoerce 17:32:56 elliott, right, so only the standard library would use the unsafe stuff I presume? 17:33:08 elliott, doesn't the IO monad internally use unsafe stuff? 17:33:08 Vorpal: occasionally it is useful to get around language restrictions. 17:33:16 but frankly you should have to pass an exam to use it. 17:33:19 elliott, doesn't the IO monad internally use unsafe stuff? 17:33:24 most of what would be unsafe in Haskell is part of the RTS 17:33:28 aha 17:33:29 the IO monad is actually just a state monad done with unboxed tuples 17:33:34 on State[hash] RealWorld 17:33:50 elliott, is the IO monad written in haskell itself? 17:33:59 yes, but not its execution 17:34:12 elliott, err, interesting, what do you mean with that? 17:34:17 the array libraries have some unsafe functions for avoiding unnecessary bounds checking iirc 17:34:21 ah 17:34:27 Vorpal: say main was a list 17:34:30 main :: [Integer] 17:34:32 lists are implemented in Haskell 17:34:35 elliott, hah 17:34:36 but in the RTS, it'd print out each element of the list in order 17:34:42 thus, the IO monad is implemented in Haskell 17:34:46 but not its execution as side-effects 17:34:55 Vorpal: anyway, you use things in Data for ... data; you use things in Control to structure your program; you use things in System to interface with the outside world, and... that's the vast majority of the stdlib 17:34:57 elliott, now you made me wonder what on earth main :: [Integer] would do when compiled with ghc 17:35:07 Vorpal: it wouldn't 17:35:11 Main.main has to have type IO () 17:35:14 erm 17:35:14 ah right 17:35:15 IO a for any a 17:35:16 actually 17:35:24 Vorpal: if you did 17:35:27 elliott, dammit, type safety, taking all the fun away ;P 17:35:27 main :: IO () 17:35:31 main = unsafeCoerce [9,9,9] 17:35:34 it'd just segfault probably 17:35:38 likely 17:35:50 elliott, speaking of which, how do you give a system exit status in haskell 17:35:59 elliott, say I need to exit with status 17 or whatever 17:36:01 exitSuccess/exitFailure from System.Exit 17:36:05 aha 17:36:10 really, that's a bit of an obvious name... 17:36:11 erm 17:36:12 or exitWith 17:36:15 ah 17:36:19 exitSuccess = exitWith ExitSuccess 17:36:26 elliott, yeah I was thinking for stuff like befunge 17:36:27 -!- zzo38 has quit (Read error: Connection reset by peer). 17:36:28 exitFailure = exitWith (ExitFailure ) 17:36:36 Vorpal: fun fact, you can implement unsafeCoerce with unsafePerformIO 17:36:38 not that I plan to do that in haskell, not any time soon at least 17:36:40 because it breaks the type system 17:36:50 elliott, err... how can that work 17:36:55 Vorpal: IORefs 17:37:01 basically, you can do "newIORef undefined" 17:37:03 and if you unsafePerformIO that 17:37:06 elliott, I have absolutely now idea what IORefs are 17:37:08 you get an (IORef a) 17:37:21 normally, the structure of the IO monad would cause the a to be bound as soon as you put anything useful in it 17:37:27 right 17:37:27 but with unsafePerformIO, you can put anything into it unsafely 17:37:28 and take it out 17:37:33 -!- ajf|offline has changed nick to ajf. 17:37:34 and treat what you take out as any value 17:37:34 hmm 17:37:35 uh... okay 17:37:38 Vorpal: it's just a mutable variable in the IO monad 17:37:39 IORefs are mutable references 17:37:44 I am thinking now about making a second esoteric language 17:37:48 elliott, I can see why this is unsafe yeah 17:37:52 Looking at ideas page. 17:38:05 Vorpal: well it is unsafe because it can perform IO, the fact that it breaks the type system is just a bonus :) 17:38:15 elliott, yeah for me haskell is currently mostly a nice purely functional language for doing smaller things in. 17:38:29 well that's a personal failing ;) 17:38:35 haven't had time 17:38:42 elliott, wait what, isn't being able to crash the thing unsafe? 17:38:51 Vorpal: yes 17:39:01 I'd point to Shiro as a place to see where modules can be useful, but it's so ugly right now that no 17:39:02 which part of unsafeCoerce or unsafePerformIO looks safe to you? 17:39:06 elliott, what on earth uses unsafeCoerce? 17:39:13 Vorpal: edward kmett 17:39:26 elliott, that went over my head 17:39:30 :) 17:39:36 unsafeCoerce is useful for two things 17:39:40 (a) insanely low-level bullshit 17:39:46 (b) doing things in haskell ninety-eight 17:39:51 for (b), you don't have Data.Dynamic 17:39:52 elliott, I'd guess however that it is something like a gangster in a movie, coercing people 17:39:53 or some such 17:39:56 so you can't do some things 17:40:02 Vorpal: unsafeCoerce :: a -> b 17:40:18 edward kmett uses it a lot because he has a haskell ninety-eight fetish 17:40:24 elliott, uh... lets see... when would that actually do something sensible? 17:40:37 Vorpal: it doesn't 17:40:41 elliott, given arbitrary a and b I can't see how you could... 17:40:48 it's literally just like a C cast 17:40:51 elliott, what is Data.Dynamic btw? 17:40:54 even less in fact 17:40:56 Data.Dynamic uses unsafeCoerce internally, obviously... 17:41:01 oerjan: yep 17:41:04 Vorpal: Dynamic typing 17:41:08 ooh nice 17:41:15 elliott, that is actually quite useful sometimes 17:41:17 -!- cheater_ has quit (Quit: This computer has gone to sleep). 17:41:19 Vorpal: something of the value Dynamic can be anything in the Typeable typeclass 17:41:26 and there's safe methods to try and take stuff out of it 17:41:28 (returning (Maybe a)) 17:41:34 this uses unsafeCoerce internally 17:41:39 this is nice because you can have things like heterogenous maps 17:41:47 elliott, could I do something with Dynamic like, checking if something is a tuple and then do something with it, and do something else if it is an integer? 17:41:52 e.g. (Map String ) where the String lets you know exactly what type the value would be 17:41:53 Shiro uses this 17:42:02 but before I realised Data.Dynamic would suffice, my implementation used unsafeCoerce 17:42:08 elliott, haha 17:42:31 (fingerprints have their own state types, and I need to store fingerprint => its state, but Maps have only one value type) 17:42:43 (so this is, basically, doing things the type system isn't equipped for) 17:42:51 elliott, could I do something with Dynamic like, checking if something is a tuple and then do something with it, and do something else if it is an integer? 17:42:52 yes 17:42:58 foo x 17:43:08 Y'know what's awesome? 17:43:12 shut up pikhq i'm livecoding 17:43:13 foo x 17:43:13 elliott, what stuff would I use in haskell to parse and write a binary file format. Probably embedding IEEE floats, doubles, big and little endian 32 bit integers and 7 bits wide bitfields and such 17:43:16 ODFOIJGIOSGJOIDFJGOIG 17:43:17 foo x 17:43:21 elliott, I mean this would be stupidly simple in erlang 17:43:23 ... 17:43:25 STOP TALKING 17:43:27 foo x 17:43:27 Waking up and realising you should have woken up an hour ago. 17:43:30 ... 17:43:31 pikhq 17:43:31 die 17:43:32 foo x 17:43:39 | (a,b) <- (fromDynamic x :: (Int,Int)) = ... 17:43:41 pikhq, *ouch* 17:43:42 erm 17:43:44 OH JESUS CHRIST 17:43:49 elliott: http://sprunge.us/ 17:43:51 Vorpal: why don't you use erlang then? :) 17:43:52 EVERYONE STOP TYPING OR I'LL RIP YOUR THROAT OUT 17:43:53 Vorpal: it's a bit subtle, you cannot check if it is _any_ tuple, just if it is a tuple with specific type contents. iiuc. 17:43:58 oerjan: ban everyone 17:43:59 foo x 17:44:03 | Just (a,b) <- (fromDynamic x :: (Int,Int)) = ... 17:44:09 argh 17:44:10 foo x 17:44:12 | Just (a,b) <- (fromDynamic x :: Maybe (Int,Int)) = ... 17:44:18 | Just a <- (fromDynamic x :: Maybe Integer) = ... 17:44:22 | otherwise = "fuck you" 17:44:25 etc. 17:44:55 Vorpal: ARE YOU HAPPY NOOOOOW 17:45:00 oerjan: couldn't you just check if it's a tuple of dynamic then? 17:45:00 elliott, what stuff would I use in haskell to parse and write a binary file format. Probably embedding IEEE floats, doubles, big and little endian 32 bit integers and 7 bits wide bitfields and such 17:45:05 Data.Binary 17:45:08 hm 17:45:11 from the binary package (part of Haskell Platform) 17:45:14 elliott, ah thanks 17:45:19 (not sure what that would solve exactly though) 17:45:21 attoparsec is also suitable, but for more text-like ByteStrings 17:45:40 elliott, anyway, thanks for that foo example 17:45:41 olsner: well yes, but then you'd have wrap the contents in Dynamic, of course 17:45:50 *to 17:45:52 elliott, what is the overhead of Data.Dynamic? 17:46:06 I mean I guess it has some 17:46:12 Vorpal: runtime? small 17:46:23 the overhead of (toDyn x) compared to x is 17:46:27 - a data constructor 17:46:29 - the type representation 17:46:32 ah 17:46:34 data Dynamic = Dynamic TypeRep Obj 17:46:47 as for the definition of TypeRep 17:46:51 data TypeRep = TypeRep !Key TyCon [TypeRep] 17:46:57 elliott, doesn't haskell optimise away type information from runtime sometimes? 17:47:00 I think you said that 17:47:06 newtype Key = Key Int deriving( Eq ) 17:47:13 and 17:47:13 data TyCon = TyCon !Key String 17:47:20 Vorpal: erm, it always does 17:47:24 types are completely irrelevant at runtime 17:47:40 well 17:47:41 GHC does 17:47:45 implementation not language 17:47:58 this is done with typeclass magic 17:48:05 which can't get erased, by definition 17:48:14 hm 17:48:26 elliott, but surely Data.Dynamic prevents that? 17:48:28 Vorpal: the Typeable class is precisely for getting a representation of a value's type, when you need it 17:48:34 ah 17:48:35 and Dynamic builds on that 17:48:48 right, typeclass magic 17:49:09 anyway, obviously, one Data.Dynamic checks the type associated with the Dynamic value is correct, 17:49:15 it has to get the actual value out of it, as the correct type 17:49:18 so it uses unsafeCoerce 17:49:40 unsafeCoerce is actually safer in some sense than unsafePerformIO here; it's safe as long as you check what you're about to do is OK 17:49:53 whereas unsafePerformIO is unsafe in almost every instance because of Haskell's lack of run-time guarantees 17:51:18 unsafePerformIO is only "safe" when you literally do not care whether or not the side effects actually happen. 17:51:40 Or how often :P 17:51:46 Well, yes. 17:52:40 But, yeah. unsafeCoerce is actually about on par with C casts in safety. Except the name actually tells you that what you're doing might not work right. 17:53:55 C casts are more heavyweight 17:53:57 there's a limitation with Dynamic in that you only can check for an exact type. if you have a Dynamic containing an unknown type, but which you know is say a Show instance, then you cannot get to it to print it. 17:53:57 they convert floats and shit 17:54:08 oerjan: you can with existential types 17:54:11 hmm 17:54:16 I never liked C casts 17:54:21 oerjan: anyway, hmm, are you sure of that? 17:54:24 some convert, some just cast the binary data direct 17:54:26 it bugs me 17:54:33 yes, but you need to arrange for a specific wrapping for the typeclass(es) you want to know about 17:54:44 what about 17:54:48 elliott: unless something has changed majorly, yes... 17:54:58 oerjan: show (Showable (fromDyn x ())) 17:54:59 where 17:55:06 data Showable = Showable (forall a. (Show a) => a) 17:55:09 instance Showable where ... 17:55:26 Typeable doesn't wrap up other typeclass information, so Showable cannot get to the Show instance to wrap it again 17:55:42 hmm, right 17:55:48 I can't say I've ever thought 17:55:56 "I need to receive a value which MIGHT be Showable", though :) 17:56:27 elliott: it would be useful if you want to print things from a heterogeneous collection... 17:57:08 usually heterogeneous collections have _some_ kind of constraint on the contents... 17:57:14 or you can't do anything with them, really 17:58:06 oh by MIGHT you meant that the value might not be? i guess that may not be common. 17:58:37 right 17:58:42 so Showable should work fine 17:59:01 and in that case you can just use a list of Showables anyway... 17:59:06 i am mainly just pointing out that you cannot use Dynamic to pretend that your haskell values behave like python values ;D 17:59:31 oerjan: Sure you can, it's just that Python doesn't have any concept of Show at all ;) 17:59:41 it's not a weakness of Haskell, it's a blindness of Python :D 18:00:21 or more specifically, that Dynamic cannot be directly used to support a dynamic subclass system 18:00:47 compatible with haskell's usual classes 18:01:39 * oerjan waits for someone to link to oleg's explanation of how to do it anyhow 18:01:40 -!- nooga has quit (Ping timeout: 240 seconds). 18:02:04 -!- nooga has joined. 18:03:52 oerjan: :D 18:04:16 Hey Vorpal. 18:04:25 Should I use the program written in Erlang or the program not written in Erlang do accomplish this task? 18:11:13 elliott, for what? 18:11:46 SURELY THAT IS ENOUGH TO ANSWER THE QUESTION 18:15:11 -!- oklopol has joined. 18:15:35 -!- MigoMipo has joined. 18:15:37 oklo the pol 18:15:51 glio the fog 18:16:56 oklopol! 18:16:57 :D 18:17:39 hy 18:22:11 soup oklo 18:22:56 i'm tirred 18:23:13 -!- oerjan has quit (Quit: Good night). 18:23:14 Vorpal: i decided on erlang 18:25:27 elliott have you found meaning 18:25:47 I see 18:25:55 all the maening 18:26:32 how about jesus? i hear he's lost too 18:27:02 he isssssssssss lost in space 18:30:40 update we found him 18:30:41 -!- EgoBot has joined. 18:30:45 !sh echo PROBLEM SOLVED 18:30:47 \xE2\x98\x83 PROBLEM SOLVED 18:30:49 ... 18:30:51 Not quite :P 18:31:04 Gregor: Is this going to prevent botloops? 18:31:15 I would really prefer things just filtered out \[one]DCC. :x 18:31:17 By coincidence, yes. 18:31:21 Nope, this will be better. 18:31:23 I assure you. 18:31:33 Gregor: It seems to involve putting random shit before every message. 18:31:36 Which is just not better in any universe ever. 18:31:52 !sh echo PROBLEM SOLVED 18:31:53 ☃ PROBLEM SOLVED 18:32:03 ... 18:32:07 I sure hope you're joking. 18:33:42 !sh echo Better? 18:33:42 ​Better? 18:34:07 Give me a command for another bot. 18:34:19 I can already see what it's doing, and it's still barfworthy. 18:34:29 For one, I expect oerjan will see a lot of muck before everything EgoBot says. 18:34:31 My policy is "fuck you" 18:34:40 My policy is "fuck him" 18:34:46 my policy is "for how much money?" 18:34:53 Then maybe don't say "Better?" 18:35:07 Honesty is the best policy. 18:35:16 in soviet russia, he fucks you 18:35:24 -!- z^ck has quit (Quit: leaving). 18:36:04 > "foo" 18:36:05 "foo" 18:36:14 !sh echo '> "foo"' 18:36:15 ​> "foo" 18:36:17 MAGIC 18:36:38 Tragic! 18:36:43 If magic is "a character that sometimes on some OSes/IRC clients/etc. shows as invisible or small, but which actually pollutes every bot output", then yes, magic. 18:36:44 sadface :( 18:36:50 !sh echo @source !sh echo 18:36:50 ​@source !sh echo 18:37:09 ?so cool 18:37:09 cool not available 18:37:17 elliott: Magic is "elliott will complain about every fucking thing I do so he can just fuck off" 18:37:28 @so blah 18:37:28 blah not available 18:37:37 Gregor: I'm still wondering why you said "Better?". 18:37:44 Better than snowman :P 18:38:23 I've already expressed what I believe would be the best solution (ban "\[one]DCC" and probably "sendkeylogger", which should be trivial to do with anything), I'm just pointing out that this is a clearly inferior solution that won't work for everyone here. 18:38:34 Gregor: Are you sure the hypothetical afflicted network thingamajikcs that get confused about bad DCC stuff in the 6667 port TCP streams won't just look for any instances of \x01DCC? 18:38:34 This covers that AND botloops. 18:39:01 fizzie: That's not the hypothetical problem being solved here ... either of them. 18:39:30 Yes it is. 18:39:50 They drop the connection at \[one]DCC SEND longenoughstring due to a bug. 18:39:56 Also, "sendkeylogger" gets a drop from Norton /anywhere/ in the line. 18:40:07 so lol 18:40:20 The problem I'm solving is "people bitch when they get CTCPs" 18:40:32 I'm not solving the particular DCC being sent, which was never actually a problem. 18:40:34 Uhh, for a start, CTCPs actually can be anywhere in the line. 18:40:53 !sh echo -e '\x01ACTION is inclined to disagree.\x01' 18:40:53 ​ACTION is inclined to disagree. 18:40:53 For a second, the problem being solved here is the bots being able to hypothetically drop connections, unless I'm terribly misunderstanding the staff position on this. 18:41:00 Gregor: EgoBot is wrong. 18:41:24 !sh echo -e '\x01DCC SEND startkeylogger 0 0 0\x01' 18:41:25 ​DCC SEND startkeylogger 0 0 0 18:42:05 Anyway, it's all idiotic because 18:42:06 DCC SEND startkeylogger 0 0 0 18:42:11 whoever would use a bot to do it can do it themselves just fine. 18:42:54 !sh echo -e '\x01ACTION is inclined to disagree.\x01' 18:42:54 ​ 18:42:58 lolwut 18:43:10 I sure broke that X-D 18:43:46 How many clients were there that treated the not-at-start CTCPs properly? (They are legal, sure, but still.) 18:43:57 !sh echo -e '\x01ACTION is inclined to disagree.\x01' 18:43:57 ​ 18:44:00 ... 18:44:08 How did I break this X-D 18:44:12 fizzie: Since this is all fucking ridiculous pedantry and whoever whined in the first place is an idiot, I'm going to be pedantic in response, yah. 18:45:03 !sh echo -e '\x01I will stab your face.\x01' 18:45:03 ​.I will stab your face.. 18:45:21 !sh echo -e '\x01I will stab your face.\x99' 18:45:22 ​.I will stab your face.™ 18:45:27 I will stab your face.â„¢ 18:45:47 I like how that fucked up encoding-detection for that line, thus revealing the Stupid Prefixâ„¢. 18:45:48 TM TM TM 18:45:53 TMâ„¢ 18:47:06 -!- HackEgo has joined. 18:47:20 `echo You guys can go suck a rusty nail. 18:47:22 \xE2\x80\x8BYou guys can go suck a rusty nail. 18:47:26 lolol wrong 18:48:29 `echo You guys can go suck a rusty nail. 18:48:30 ​ 18:48:37 I rule 18:49:03 Stop being fascism, guys. 18:50:33 `echo You guys can go suck a rusty nail. 18:50:34 ​You guys can go suck a rusty nail. 18:50:39 Fin. 18:50:58 `echo Hey guys, startkeylogger. 18:51:00 ​Hey guys, startkeylogger. 18:52:09 Yeah, I'm not going to go filtering "startkeylogger" in all contexts. 18:52:12 That's ridiculous. 18:52:19 startkeylogger 18:52:36 Gregor, have you seen the enterprise D in minecraft? 18:52:41 Also this whole situation is outright ridiculous since anything you could get the bots to say, YOU COULD SAY YOURSELF >_< 18:52:45 cheater666: I've seen it. 18:52:46 Gregor: I was going to send a CTCP, but... 18:52:55 cheater666: #esoteric-minecraft 18:55:58 let me wager a try 18:59:17 #esoteric-minecraft is just a front for prostitution 19:00:57 lopl 19:01:00 and minecraft 19:01:21 yeah 19:01:29 cheater666: did they actually finish it? i only saw the video of the sheell 19:10:33 Wait, did someone manage to get lambdabot to do a DCC SEND 27 hours ago? 19:10:45 several of them 19:10:54 * tswett nods. 19:11:32 -!- ais523 has joined. 19:11:45 !which which 19:11:57 `which which 19:11:58 ​/usr/bin/which 19:12:01 `ls /usr/bin 19:12:02 ​822-date \ X11 \ [ \ a2p \ addpart \ addr2line \ apropos \ apt-cache \ apt-cdrom \ apt-config \ apt-extracttemplates \ apt-ftparchive \ apt-get \ apt-key \ apt-mark \ apt-sortpkgs \ aptitude \ aptitude-create-state-bundle \ aptitude-run-state-bundle \ ar \ as \ awk \ base64 \ basename \ bashbug \ bdftopcf \ bdftruncate \ bsd-write 19:12:16 `base64 19:12:18 No output. 19:12:26 `base64 No output. 19:12:28 No output. 19:12:31 Aw. 19:12:37 the bots are back? 19:12:40 `file base64 19:12:42 ​base64: ERROR: cannot open `base64' (No such file or directory) 19:12:53 `file /usr/bin/base64 19:12:55 ​/usr/bin/base64: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.8, stripped 19:12:55 also, Gregor, what's so bad about Microsoft buying Skype? (or do you like Skype?) 19:13:23 I don't particularly like Skype, but I have to use it, and it does not bode well for its Linux and Android ports. 19:13:38 oh dear 19:13:42 I use it on Linux 19:13:43 ...DL 19:13:46 D:* 19:13:48 hmm 19:13:54 I shall make an alternative... 19:13:58 ...in BRAINFUCK! 19:14:06 no wait, Malborge! 19:14:59 there are open-source alternatives already, IIRC; I don't know how well they work 19:15:13 yes, but are they in Brainfuck? 19:15:14 my guess is that they work almost as well but are much harder to set up 19:15:25 ajf: BF's IO capacities are a little limited 19:15:48 ais523: But what about PSOX?! 19:15:58 quintopia, yeah 19:16:02 my guess is that they work almost as well but are much harder to set up 19:16:10 the compression stuff skype uses is hyper-proprietary 19:16:12 so i wouldn't be so sure about that 19:16:13 quintopia, even a nice custom texture set 19:16:15 VOIP is a bitch 19:16:19 ah, hmm 19:16:28 Gregor: they hadn't worked on the linux port in like 5 years anyway. so it's not really gonna get worse... 19:16:28 I thought Speex was pretty good at compression, and it's open-source 19:16:40 ais523: It's good at offline compression certainly 19:16:41 but what about streaming? 19:17:00 hmm, I suppose it depends on how much context it needs 19:17:00 Speex has some streaming-codec-related thing, at least. 19:17:23 I think VOIP is one of their considered use cases. 19:18:20 ais523: I know brainfuck has limited IO 19:18:21 but 19:18:26 brainfuck++ (IIRC) doesn't 19:18:28 it has sockets 19:18:36 there are a huge number of BF variants, I've lost track of them all 19:18:40 too many 19:18:46 indeed 19:18:47 they all need a quick death in flames 19:18:51 it's a bandwagon 19:18:56 srsly MAEK AN ORIGINAL LANGUAGE 19:19:10 relevant http://esolangs.org/wiki/User:Phantom_Hoover 19:19:48 # (Deletion log); 17:27 . . Ais523 (Talk | contribs) (deleted "Talk:Tory": content was: '== MbxNJPMXPOoaQGQ ==TYVM you've sleovd all my problems' (and the only contributor was '206.169.53.170')) 19:19:48 # (Deletion log); 17:26 . . Ais523 (Talk | contribs) (deleted "User talk:68.226.23.83": content was: '== QNYOwomFjTW ==ThatÂ’s not just logic. ThatÂ’s really ssenbile.' (and the only contributor was '1.202.192.7')) 19:19:50 new favourite quotes 19:20:14 -!- elliott has set topic: TYVM you've sleovd all my problems | "That's not just logic. That's really ssenbile." --Ernest Hemingway | Logs: http://codu.org/logs/_esoteric/ and http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 19:20:24 " ajf: BF's IO capacities are a little limited" <<< psox 19:20:28 Hemingway was a very ssenbile person. 19:20:34 That "Fring" thing used to speak Skype, don't know how it is nowadays. (And it's not open-source.) 19:20:54 -!- oklopol has changed nick to Sgeo. 19:21:00 hi Sgeo 19:21:02 hi 19:21:06 Hi oklopol. 19:21:10 have you transferred yet 19:21:12 i'm creeping myself out 19:21:25 you're not obsessing enough 19:21:32 this is really terrible roleplaying :/ 19:21:46 okay umm i talked to my dad and he said i can't transfer 19:22:04 that basterd 19:22:07 and there's this girl i really like and she might like my but she might also not like me 19:22:17 does she smoke 19:22:18 i suck at everything :( 19:22:19 Sgeo: She might like your what? 19:22:29 fizzie: dont be rude 19:22:29 elliott: smoking is bad for you according to my dad 19:22:33 his dad installed an software on his pc 19:22:37 which stops him saying rude words 19:22:40 like "personality" 19:22:41 fizzie: sorry typo 19:22:42 *me 19:22:48 Sgeo, I... 19:22:52 Approximately one trillion readers wrote in to tell us that there is a big rumor that Microsoft is buying Skype. 19:22:57 *According to your dad*. 19:22:57 hmm, that sort of hyperbole is worrying 19:23:06 elliott: clearly it's great roleplaying 19:23:07 Sgeo: can you tell us the proximity to your lips of your last kiss plz 19:23:07 -!- Sgeo has changed nick to oklopol. 19:23:12 that's something we need to know as a channel 19:23:12 oh 19:23:14 he's gone 19:23:15 hi oklopol 19:23:16 my last kiss was a long time ago 19:23:26 erm 19:23:32 wait actually it isn't 19:23:33 :D 19:23:41 my last sex was tho 19:23:43 oklopol, that was bad and you are a bad person. 19:23:45 hmm, oklopol/Sgeo's IP doesn't match either of their usual IPs, although it's in Finland 19:23:51 Phantom_Hoover: yes, sorry 19:23:54 Clearly I should be informed if Sgeo is to be mocked. 19:24:01 i tried to make it terribly obvious i was joking 19:24:08 poe's law 19:24:17 it is impossible to be more sgeo than gseo 19:24:18 sgeo 19:24:20 but sgeo is such a stereotypical sgeo i suppose that doesn't show easily 19:24:33 now I need to remember what poe's law is 19:24:43 ais523: i moved 19:24:46 well 19:24:49 ais523: it has no wikipedia article it doesn't exist 19:24:54 it's only documented on spam sites with lots of adverts 19:24:54 i moved ages ago but i used an intermediate internet 19:25:00 ITT ancient log references 19:25:15 `google Poe's Law 19:25:17 No output. 19:25:22 X-D 19:25:23 I thought that was a Thing. 19:25:27 !google Poe's Law 19:25:27 ​http://google.com/search?q=Poe's+Law 19:25:34 ?google Poe's Law 19:25:36 http://rationalwiki.org/wiki/Poe's_Law 19:25:36 Title: Poe's Law - RationalWiki 19:25:42 hey look 19:25:43 A refreshing directness of approach from EgoBot. 19:25:43 http://en.wikipedia.org/wiki/Poe%27s_law 19:25:46 it has a wikipedia article now 19:25:51 it just started existing 19:26:37 I saw someone Google it in another channel recently, and Wikipedia wasn't the first answer 19:26:43 so I concluded it wasn't on Wikipedia at all 19:27:36 you decided it didn't exist a few years ago, because I linked to the RW article 19:27:45 it was quite infuriating 19:28:43 if there's a rational wiki is there also a natural wiki and a real wiki? 19:29:09 yes 19:29:17 it's a very complex wiki HUR HUR 19:29:30 yes but some of the articles are kind of irrational 19:29:39 ... 19:29:58 i hate myself 19:30:13 @protontorpedo 19:30:13 I have perl bok but saw haskell and am woner hey this is new and improved and seems powerful because MIT guy philip green says haskell adn lisp are only langs where u spend more tie thinking than 19:30:13 coding 19:30:17 i hate you too oklopol 19:30:22 lol no you don't 19:30:37 ^ 19:30:41 http://www.google.com/events/io/2011 19:32:09 hmm, according to the talk page for that article, it's been deleted three times already 19:32:33 it seems that 19:32:35 # ^ Aikin, Scott F., Poe's Law, Group Polarization, and the Epistemology of Online Religious Discourse (January, 23 2009). Available at SSRN: http://ssrn.com/abstract=1332169 19:32:36 # ^ a b Chivers, Tom (23 Oct 2009). "Internet rules and laws: the top 10, from Godwin to Poe". The Telegraph. http://www.telegraph.co.uk/technology/news/6408927/Internet-rules-and-laws-the-top-10-from-Godwin-to-Poe.html. 19:32:38 have made it start existing 19:33:11 -!- augur has quit (Remote host closed the connection). 19:33:24 wow, Slashdot have actually improved their interface, making it uglier but less annoying 19:33:28 normally they go in the other direction 19:33:35 wait 19:33:39 Google App Engine for GO 19:33:40 wow 19:34:29 how is that a surprise 19:34:34 or an interesting thing 19:34:58 interesting because, I didn't know Go was suitable 19:35:11 surprsing for me because I didn't realise google took Go that seriously 19:35:12 meh 19:35:15 why did you think google made it 19:35:19 if not for app engine 19:35:23 ooh 19:35:26 Good point. 19:35:31 google did not make go 19:35:40 go is a twenty-percent time project by the creators of plan 9. 19:35:49 ah 19:35:49 well, whoever made go, google stuck with it and marketed it 19:35:52 created within google 19:35:55 it is also designed for systems programming, not web development. 19:35:55 yes 19:35:58 and google do not market go at all. 19:36:13 there is exactly one google blog post about it, and a few videos on their youtube developers channel 19:36:22 http://golang.org/ <-- not a single mention of google apart from the app engine news post. 19:36:52 hmm 19:37:00 I remember hearing about it from Google though 19:37:06 it isn't a Google thing though 19:37:08 I think 19:37:13 it is just popular inside Google 19:37:21 as it is a 20% time project of those people 19:37:32 with the 20% stuff who can even really tell who's project it is 19:37:39 but it's definitely not very tied to google 19:38:02 all the media has marketed Go as a "Google's Go" because google made sure of it 19:38:32 go is as unrelated to google as are drugs to the brixton underground station 19:40:38 also, mention of google: http://golang.org/doc/go_faq.html#Can_I_translate_the_Go_home_page 19:40:56 why would you want to use the google logo on something unrelated to google? 19:40:58 oh wait. 19:42:08 either way, it's sort of obvious that google is afraid enough of a negative reaction (google is borg etc) that they didn't want to blow it and un-branded Go as much as possible 19:42:53 yes, it is always easier to formulate conspiracies than to actually try and make sense. 19:42:54 in fact, people at google i spoke to uniformly said that it's one of their top concerns everyone says google is evil 19:43:06 i am going to contact russ cox now and tell him he's been found out, poor guy 19:43:14 ken will be devastated. 19:43:31 make sure to include a nice drawing with it. 19:43:33 maybe of a spider. 19:46:42 -!- elliott has quit (Read error: Connection reset by peer). 19:46:47 -!- elliott_ has joined. 19:50:04 -!- hagb4rd has quit (Quit: hagb4rd). 19:51:47 -!- elliott_ has quit (Quit: Leaving). 19:51:53 -!- elliott_ has joined. 19:52:02 -!- elliott_ has changed nick to elliott. 19:52:10 -!- elliott has quit (Remote host closed the connection). 19:52:20 -!- elliott_ has joined. 19:52:34 -!- elliott_ has quit (Remote host closed the connection). 19:52:44 -!- elliott_ has joined. 19:52:55 * Phantom_Hoover notes that Google maps has something called "Scotmid Funeral Services". 20:01:41 -!- elliott_ has changed nick to elliott. 20:01:52 -!- elliott has quit (Changing host). 20:01:52 -!- elliott has joined. 20:16:46 "Microsoft will continue to invest in and support Skype clients on non-Microsoft platforms." 20:16:49 Yeah, suuuuure you will. 20:17:18 “Microsoft and Skype share the vision of bringing software innovation and products to our customers,” lol 20:17:41 there was a rumour that Facebook were planning to buy Skype too, wasn't there? 20:17:51 that's mentioned in the above linked article 20:17:54 I'm not sure which would be worse 20:18:03 quintopia: the above linked article is about Go 20:18:16 oh 20:18:17 as is the one above, and the one about /that/ is about Poe's Law 20:18:17 It's not a "would be" 20:18:21 Microsoft's buyout is confirmed. 20:18:23 *above /that/ 20:18:23 it's not in the topic anymore 20:18:23 nvm 20:18:42 See http://www.microsoft.com/Presspass/press/2011/may11/05-10CorpNewsPR.mspx 20:19:06 I like how the rumour was that either Facebook or Google will buy Skype, but then turns out Skype was indeed getting bought, but by Microsoft. 20:31:23 so uh 20:31:28 inb4 20:31:34 Skype for Linux withdrawn 20:31:43 Microsoft doesn't acknowledge it ever existed 20:31:52 The Mac version will stay though 20:31:58 else Apple will ra- 20:32:03 owait FaceTime 20:32:10 Hey guys, I've heard that YouTube is buying Microsoft. 20:32:15 Naw, the Mac version will stay. 20:32:20 Apple will WANT no Skypee 20:32:27 ajf: But yeah, Microsoft will withdraw the Linux version and ALL references to it. 20:32:34 They will make it vanish like Microsoft Xenix. 20:32:43 haha 20:32:45 indeed. 20:33:00 Microsoft used to say 20:33:07 that XENIX and DOS went hand-in-hand 20:33:15 Now they say "Xenix?" 20:33:25 you know, that you could write applications that using common I/O and functions would work on both 20:33:28 yeah 20:33:39 -!- Cheery has quit (Quit: Lost terminal). 20:33:44 In fact 20:33:52 They have completely abandoned it, no code re-used 20:34:04 How do I know? The Windows 7 UNIX Environment... 20:34:07 uses GNU Utils... 20:34:27 Not propreitary xenix-based UNIX utilities 20:34:34 Well, they sold Xenix too. 20:34:42 They may very well have not had the rights to use it by now. 20:34:55 Ah 20:36:05 In the beginnings of the OS X days, Apple scrubbed all references to Linux from their site. 20:36:17 Of course 20:36:18 Before then they had MkLinux (albeit abandoned) and a few other random things. 20:36:21 Well, not exactly 20:36:26 Now they say "Xenix?" <--- hehe 20:36:46 when did Xenix die? 20:36:46 Steve Jobs mentioned that Darwin was very "linux-like" in his initial keynote on OS X 20:37:16 Darwin is like Linux, but BSD-based, has a funny Apple-designed open-source license, and no sensible person uses it 20:37:29 Hey guys, I've heard that YouTube is buying Microsoft. <-- I can only presume this is a joke 20:37:37 hurr 20:37:47 I like how the rumour was that either Facebook or Google will buy Skype, but then turns out Skype was indeed getting bought, but by Microsoft. <-- ouch. 20:37:55 Darwin is like Linux, but BSD-based, has a funny Apple-designed open-source license, and no sensible person uses it 20:38:01 ajf: Also, Darwin is a monolithic kernel sitting on Mach, because that's brilliant. 20:38:05 apart from everyone who uses os x 20:38:08 good thing I never used skype 20:38:21 Gregor: wait what 20:38:26 you mean 20:38:35 a monolithic kernel running ON TOP OF a microkernel? 20:38:51 Yup. 20:38:52 but wait, what happened to netmeeting? 20:38:57 anyone remember it? 20:38:57 what the fuck 20:38:58 Sort of like MkLinux. 20:39:06 Apple has a weird obsession with Mach, even when it gives them nothing. 20:39:21 Vorpal: I remember that it existed once :P 20:39:31 Gregor, right 20:39:38 Gregor, AND MS Chat! 20:39:44 in comics mode! 20:39:44 wait 20:39:45 I'm guessing Mach is the reason that uname -a tells me I have an i386 processor when I don't. 20:39:46 you know 20:39:49 Gregor: it's genius 20:39:58 they can say they have a microkernel and not lie 20:40:08 and say they have a monolithic kernel and not lie 20:40:12 Yup. 20:40:14 it's marketing brilliance 20:40:16 That's exactly what they do :P 20:40:35 ajf, but wait, why would saying that be useful? 20:40:47 It isn't 20:40:53 I mean, come on, who cares which sort of kernel it is, as long as it is fast and gets the job done 20:40:56 Just for marketing purposes... 20:41:20 ajf, yes but why would that be useful for marketing 20:41:34 you can say both 20:41:39 that's all 20:41:50 Gregor: wait I am confused 20:41:50 Yes, Apple markets to people who know what a kernel is. 20:41:57 Wait, no they don't. 20:42:01 Darwin is built on XNU 20:42:10 but apple also have released XNU 20:42:12 ? 20:42:13 XNU is BSD on Mach. 20:42:18 ajf: Yeah, it's XNU that I'm referring to. 20:42:25 (With drivers on Mach.) 20:42:26 you can say both <-- yes but come on, apple target end users, who don't care which fucking type of kernel it is as long as it works 20:42:37 I know 20:42:42 I was not completely serious 20:42:43 Plus 20:42:50 ah 20:43:10 Mac users probably think a kernel is some evil thing PC's do that's not good 20:43:17 wait, could you run other kernels on top of mach side by side with the OS X one? 20:43:32 Actually I think Mac OS X also gained a fair bit of market in the beginning from reeling in Unixers. 20:43:43 perhaps 20:43:44 Probably. 20:43:50 "Better than Microsoft!" 20:43:53 Only to then be trapped in an environment which simultaneously conforms to all Unix standards and is the shittiest Unix one would ever want to use. 20:44:03 yes 20:44:06 Gregor: Come on, that's Interix. 20:44:10 follows standards 20:44:12 yet incompatible 20:44:15 it's magic 20:44:19 Define incompatible. 20:44:25 Gregor, OSX is an abomination 20:44:28 OS X is compatible with most Unix software. 20:44:36 It's shitty, yes, but shittiness does not equate to being able to make ridiculously untrue statements. 20:44:43 i would go for windows+gnu over osx any day of the week 20:44:53 you know what 20:44:56 Welp, now that I've started a flamewar, I'll step out trolololololol 20:44:59 cygwin > OS X Darwin 20:45:03 No. 20:45:03 FACT 20:45:04 yes 20:45:05 Cygwin is bad. 20:45:06 Insanely bad. 20:45:09 Cygwin is the slowest piece of shit ever. 20:45:10 no it isn't 20:45:13 Yes it is. 20:45:15 no it isn't 20:45:19 cygwin is awesome 20:45:19 Interix/Gentoo Prefix is vastly superior to Cygwin. 20:45:19 cygwin may be bad, but it's not as bad as osx. 20:45:22 And even that's lame. 20:45:30 ajf: have you ever run a configure script on cygwin? 20:45:34 ./configure --help can take several minutes. 20:45:39 uhh 20:45:41 ok... 20:45:47 Cygwin's fork() is insanely slow and stupif. 20:45:47 on your 386? 20:45:48 stupid. 20:45:50 cygwin is particularly slow at configue because it forks a lot of processes 20:45:52 elliott, most of all OS X = beachball spinning to me. Could be because I mostly used an older mac (plastic white, big space between keys, whatever model that is), that was upgraded to 10.6 20:45:55 *configure 20:46:00 it isn't slow in general, it's just really bad at forking 20:46:01 because Windows 20:46:03 ais523: Cygwin is useless at shell scripts entirely, which makes it the SHITTIEST Unix possible. 20:46:14 ais523: then how does google chrome do it? 20:46:16 elliott: not ones written in pure bash! 20:46:19 a process pool? 20:46:22 elliott: orly? 20:46:28 Vorpal: That doesn't sound like an older model to me. 20:46:31 ajf: it isn't forking; it uses multiple processes, but does not fork 20:46:33 Well, maybe two thousand and six old. 20:46:35 elliott, hm okay 20:46:36 Vorpal, osx has additionally the worst fucking gui ever 20:46:38 ajf: What 20:46:40 elliott, that sounds right 20:46:42 Windows in general can't fork; Cygwin can simulate it, but via a really complex process 20:46:42 ajf: Do you have any idea what fork is 20:46:43 elliott, 2006 I meant 20:46:44 it's worse than X Window 20:46:47 ais523: oh yeah, doesn't fork share address space or something 20:46:48 I forget 20:46:55 ajf, nope 20:47:00 ajf: it copies pretty much everything 20:47:01 fork clones the current process and branches. 20:47:06 oh, cloning 20:47:08 right 20:47:08 This is not the same as starting a new process. 20:47:16 entiendo. 20:47:17 fork is also how you start a new process on Unix. 20:47:18 well, I think the bash part of cygwin works fine (no idea of the speed, probably awful) 20:47:27 Since Unix is practically based around starting processes, Cygwin is uselessly slow. 20:47:28 I understand. Entiendo. Wakarimashita. 20:47:36 Additionally it took until the latest release to get ANY Unicode support. 20:47:43 elliott, huh 20:47:43 o.O 20:47:47 And the package manager is HORRIBLE, and all the packages are major versions out of date. 20:47:54 yes indeed 20:47:56 Cygwin is terrible. 20:48:02 hmm 20:48:04 but again 20:48:07 not as terrible as osx. 20:48:10 elliott, anything unix on windows is terrible 20:48:12 What's the MS UNIX environment like, I wonder? 20:48:14 you know why? 20:48:18 because windows has putty 20:48:23 there is NO good terminal for osx 20:48:25 You know, the NT POSIX subsystem? 20:48:31 Terminal.app is surprisingly shitty. 20:48:44 Here's a story 20:48:44 ajf, yes 20:48:46 cheater666: there is xterm 20:48:48 it's like i'm in this candy store and the only door out of it is full of liche trying to bite your balls off 20:48:55 Once upon a time there was Terminal.app 20:49:02 And gnome's terminal 20:49:07 Terminal.app was shitty 20:49:07 the end 20:49:13 olsner, i was unable to install xterm or it was shitty, i don't remember 20:49:21 ajf, uh, what about konsole? 20:49:29 Vorpal: konsole? 20:49:29 all OSX terminals are pretty bad, as far as I know 20:49:36 ajf, you mentioned gnome's terminal 20:49:37 so... 20:49:39 oh, the KDE one 20:49:42 ajf, posix != unix 20:49:48 ajf, also nothing wrong with urxvt 20:49:50 cheater666: I am aware 20:49:55 I just run rxvt-unicode on OS X with X11.app. 20:49:58 But it allows you to run some UNIX software 20:50:14 ajf, personally I use konsole from inside gnome 20:50:15 go figure 20:50:16 last time I used Konsole? 20:50:18 ages ago 20:50:20 cheater666: you must've found it shitty then, because X11 is either included in the OS install or installable from the install disc 20:50:21 knoppix 20:50:26 bad and good memories flood back 20:50:27 hmm 20:50:36 -!- TeruFSX has joined. 20:50:45 olsner, oh right, it required X11 20:50:52 ajf, on another system where I use gnome-terminal I changed key bindings for switching/moving tabs to match those in konsole 20:50:55 too used to it 20:51:00 :/ 20:51:00 though I gave up KDE after KDE 3 20:51:01 and who wants to have X11 running on a mac that can barely handle firefox 20:51:07 and that's one of the recent Mac Pro's btw 20:51:13 haha 20:51:18 OK 20:51:19 and I'm likely giving up on gnome soon. If gnome 3 is as bad as it looks 20:51:33 I guess I'll go for xfce or something 20:51:34 not sure 20:51:37 Since we are on the subject of Mac OS X/Apple stuff 20:51:45 Guess my favourite esoteric language 20:51:53 Anyway, there's the Other Thing (Windows Services for UNIX and/or Subsystem for UNIX-based Applications) that actually provides a Unixy thing in Windows, unlike the really minimal POSIX subsystem. 20:51:55 I use XFCE+konsole durpadurp :P 20:52:08 ajf, Banana scheme? 20:52:16 fizzie, yeah 20:52:17 (sorry for that) 20:52:21 Vorpal: No, Objective-C 20:52:26 oh right 20:52:27 fizzie, that's why i pointed out the difference to ajf 20:52:32 Gregor: the nice thing about xfce there: you're allowed to run both gnome and qt software without hating the other kind :) 20:52:35 ajf, O-C is not esoteric. 20:52:40 fizzie, hm 20:52:43 cheater666: Sure it is 20:52:51 fizzie, that POSIX subsystem is dead isn't it? 20:52:55 it's only esoteric if you're a troll 20:52:56 They took C and deliberately made it worse 20:52:56 or you're required to hate both anyway, dunno which of those it is the most really 20:52:57 amirite 20:52:59 Vorpal: Yes, I believe it is. 20:53:20 ajf, better than C++ 20:53:28 that is true... 20:53:30 http://www.rinkworks.com/bookaminute/b/clarke.2001.shtml "Reader Wow. I understand the movie now." <-- bahahahahah so true 20:53:34 oh man 20:53:39 I just had a stupid idea :> 20:53:46 -!- augur has joined. 20:53:48 ajf, on the other hand the only thing worse than C++ that I can think of right now would be PHP 20:53:50 preprocessor abuse to create an esoteric language 20:53:56 Vorpal: no no no 20:53:58 hehe, so taking C and trying to make it worse produces something better than taking C and trying to improve it? 20:54:01 ajf, ? 20:54:02 PHP is vaguely usable 20:54:11 no... 20:54:14 not really 20:54:23 ajf: lol php 20:54:30 is ajf trolling 20:54:33 No 20:54:37 or is he just new to the idea of computers 20:54:38 Seriously, PHP is OK 20:54:43 The standard library is.... not 20:54:47 ajf, have you had a computer last year 20:54:49 the equality operator is not 20:54:56 cheater666: yes and I made sites in PHP 20:55:02 and can confirm PHP is shitty 20:55:05 but worse exists 20:55:07 anyone speak german natively? 20:55:14 i speak german non-badly 20:55:19 and live in germany. 20:55:20 augur: you mean in the channel? I imagine lots of people do altogether 20:55:29 ais523: yes :P 20:55:29 but worse exists <--- noooo? 20:55:30 currently. 20:55:42 cheater666: i need a german not a second-language speaker, but thank you 20:55:52 augur, why do you? 20:55:58 i know some germans, i could ask them whatever 20:56:04 Vorpal: yes 20:56:10 I think worse exists 20:56:16 what was I thinking of just now 20:56:17 err 20:56:17 ajf, such as? 20:56:25 cheater666: i have some grammaicality judgment questions 20:56:30 perl is actually quite a bit better than php 20:56:31 ill poke you later with them? 20:56:32 let me think a second 20:56:34 quite a bit 20:56:39 better now 20:56:44 Visual Basic 20:56:46 because i'm going to sleep in 3..2..1.. 20:56:52 well not really but soon 20:56:54 hmmm... haven't used it so don't know 20:57:05 Wait actually no, Visual Basic.NET is *ok* 20:57:11 ajf, but at least C++ is slightly better than PHP 20:57:14 not much 20:57:17 Hmm 20:57:26 You know, PHP does have some *good* features 20:57:30 such as? 20:57:31 two of them 20:57:34 the rest are shit 20:57:38 which ones 20:57:41 first, sessions are really easy 20:57:44 session_start(); 20:57:47 second, globals 20:57:49 $_GET 20:57:53 ajf, ugh 20:57:53 third, nothing else 20:57:57 the second is a misfeature 20:58:03 it isn't. 20:58:09 $_GET["quack"] 20:58:15 yeah 20:58:17 ok ciao 20:58:18 what's wrong with that? 20:58:18 ajf, come on, it should be a parameter to the entry point 20:58:23 well done doing what thousands of other languages do too 20:58:25 no entry point 20:58:29 it's a scripting language 20:58:29 :/ 20:58:33 or frameworks in said languages 20:58:47 Actually 20:58:49 -!- augur has quit (Remote host closed the connection). 20:58:51 I have to say, after using Perl 20:58:57 For web development, it is... 20:59:00 Just as bad as PHP 20:59:10 ajf, there should be no global state 20:59:30 sure sure 20:59:37 well apart from things external to the language, databases, file system and so on 20:59:55 Things external to the language, like databases, file systems, HTTP requests ... 20:59:55 at least Perl has all its ugliness right on the surface (in the unreadable syntax) but comes with clever (and sinister) ideas beneath it, php is just layers of stupid 21:00:15 Gregor, hey you can regard the page as a function of the HTTP request 21:00:20 meaning it is NOT global state 21:00:27 * ajf is entering sarcasm mode 21:00:42 ajf, why 21:00:46 I'm serious 21:00:49 PHP IS AWESOME BECAUSE EVRY FUNCTION YOU EVAR NEED EVAR IS IN THE GLOBAL NAMESPACE 21:00:53 ah 21:01:01 * ajf exits sarcasm mode 21:01:07 olsner, i worked with a core php developer 21:01:09 That is precisely what I HATE about PHP 21:01:15 1. i wrote better php than him 2. he's an idiot 21:01:22 3. would not recommend hiring him 21:01:23 didn't they add namespaces? 21:01:24 iirc 21:01:26 WHY THE FUCK DO YOU NOT USE NAMESPACES, PHP 5? 21:01:34 Vorpal: and they don't use them. go figure 21:01:35 with some weird syntax 21:01:49 they have them, but still pretty much everything is imported by default 21:01:56 it's worse than ANSI C 21:01:58 much worse 21:02:16 also PHP-tards defend this... D: 21:02:29 memorable quotes are "instead of exceptions you can just return 0, it's the same. what's so special about exceptions" as well as "every woman has her price" and "prague? what can you do there other than sex tourism?" 21:02:29 you know 21:02:34 even JS is better tahn PHP 21:02:56 ajf, nothing is imported by standard in C 21:03:01 well okay a few #defines 21:03:04 Vorpal: not what I mean 21:03:20 ajf, what did you mean then 21:03:21 Just C has some issues with function name conflicts 21:03:30 ajf, oh yes I know, I used ncurses 21:03:32 As no namespaces 21:03:36 But 21:03:41 ajf, it has #define cls() and what not 21:03:45 or was it #define clear() 21:03:45 PHP is significantly worse as they import EVERYTHING 21:03:50 :/ 21:03:51 well stupidity like that anyway 21:04:02 ajf, cry me a river 21:04:16 anyways, we should have like an esolang competition on writing stupid shit in php 21:04:21 using goto and stuff like that 21:04:25 cheater666: thanks for confirming my prejudices on php developers 21:04:26 actually it is better that it is #defines in ncurses, means you can at least link to other stuff 21:04:31 actually 21:04:33 maybe namespaces, introspection, and the debugging api 21:04:33 OK 21:04:37 I will race all of you 21:04:44 to add the esolang article for PHP 21:04:46 do it. 21:04:47 now. 21:04:51 nah 21:04:55 it is too terrible for it 21:04:59 hahaha 21:05:26 we could put it in the joke langs list 21:05:34 yes. do that. 21:05:35 oh btw 21:05:36 BTW! 21:05:42 this guy is who added goto to php 21:05:56 or lobbied for it, whatever 21:05:57 so i was working with the best of the best 21:06:57 ? 21:07:13 -!- horror21 has joined. 21:07:14 you haven't been following the conversation have you 21:07:21 with everything built into the parser and rewinding the input stream for flow control and stuff like that, I imagine goto could be a bit difficult to add 21:07:22 how do you manage that ajf 21:07:29 what guy 21:07:35 I somehow missed the person you mean 21:07:39 what flying saucer 21:07:47 there was no flying saucer 21:08:09 You are absolutely positive there never was and never will be a gun in this room. 21:08:40 *Your key has no bullets.* 21:09:17 -!- horror21 has left. 21:09:44 olsner, it's not even a real goto, but anyways it's just some bytecode hack or something 21:10:10 it's not like php makes sense 21:10:16 OK so I added a language to the joke language list 21:10:18 i didn't bother learning anything about it 21:10:27 what is the language 21:10:37 guess 21:10:43 objective-c 21:10:47 nope 21:10:51 practical extraction and reporting language or whatever it's called? 21:10:55 PHP 21:11:07 it's obviously a joke 21:11:17 I mean, who would make a language that crap intentionally/ 21:11:34 Rasmus 21:11:40 ah. 21:13:46 http://esoteric.voxelperfect.net/wiki/PHP 21:13:56 Could you guys help expand this article? 21:14:12 no 21:14:24 but put in info about some esolang properties of it 21:14:30 like goto, introspection, etc 21:14:54 well 21:15:54 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds). 21:16:16 and streams 21:16:39 hey 21:16:47 see second google result for "php goto" 21:16:49 ahahahahaha 21:18:40 http://www.php.net/manual/en/book.classkit.php 21:20:12 ajf: can I ask that you don't put widely used programming languages on the joke language list? a) they don't fit there, b) it massively confused Reddit a while back 21:20:22 we need a separate list for esoteric features of real-world languages, really 21:20:23 really? 21:20:24 lol 21:20:36 I think PHP should be there though 21:20:38 just ONE 21:20:43 -!- poiuy_qwert has joined. 21:21:21 cheater666: what's wrong with classkit? 21:21:46 everything 21:22:03 here's a nice essay on physics: http://www.php.net/manual/en/objaggregation.examples.association.php 21:22:19 (for example, molecules are aggregates of atoms) 21:22:28 http://www.php.net/manual/en/book.reflection.php 21:27:34 i like the name of this extension 21:27:35 http://www.php.net/manual/en/book.nis.php 21:27:44 Y P/NIS? 21:27:56 BCUZ. 21:28:52 oh btw, here's another php joke: http://www.php.net/manual/en/book.tokenizer.php 21:29:01 you totally could do some evil shit with that 21:31:17 anyways i too think that having PHP on the esolangs wiki is a stupid idea 21:31:35 but i still think having an esolang joke-competition with php would be funny 21:32:31 http://esoteric.voxelperfect.net/wiki/PHP#Equality_operator 21:32:46 I have begun to describe why PHP is esoteric 21:32:58 it is not 21:33:05 esoteric means not well known 21:33:10 it is widely known and used 21:33:14 Not necessarily 21:34:28 not if you are speaking a pretend-language which uses english words with completely different meanings. 21:35:21 you mean computer science? 21:35:22 YUP. 21:36:41 I love PHP. 21:36:43 "12 zombies" + "10 young ladies" + "bourbon" == "22 cream puffs" 21:36:51 "1e1" == "10" 21:37:07 Anyway, GTG, goodnight 21:37:11 -!- ajf has changed nick to ajf|offline. 21:40:16 well, i think that's pretty sane myself. 21:40:28 == is not intended to be used to compare strings 21:40:40 so it converts them to numbers in the most sensible way first 21:40:43 -!- TeruFSX has quit (Quit: No Ping reply in 180 seconds.). 21:41:12 aka, "if it starts with a number, use that number, otherwise, make it zero" 21:41:46 -!- TeruFSX has joined. 21:51:08 But it only does that when the strings "look like" numbers, which I don't think is all that consistent-and-sane. "1e1" == "10" is true, but "foo" == "bar" is false. 21:51:36 -!- MigoMipo has quit (Read error: Connection reset by peer). 21:51:43 If == would truly be some sort of numeric-only compare, it should coerce all strings to numbers. 21:55:14 What's the MS UNIX environment like, I wonder? 21:55:14 You know, the NT POSIX subsystem? 21:55:23 like I said, Gentoo Prefix/Interix 21:55:47 ajf, posix != unix 21:55:51 um no posix = unix 21:55:53 same standard 21:56:22 and who wants to have X11 running on a mac that can barely handle firefox 21:56:22 and that's one of the recent Mac Pro's btw 21:56:25 wow you're full of shit 21:57:38 Wait actually no, Visual Basic.NET is *ok* 21:57:43 oh get out 21:58:23 -!- TeruFSX has quit (Quit: No Ping reply in 180 seconds.). 21:59:00 with everything built into the parser and rewinding the input stream for flow control and stuff like that, I imagine goto could be a bit difficult to add 21:59:04 lol that was php two 21:59:34 ajf|offline: hi, please stop spamming the wiki with non-esolangs 21:59:42 ajf: can I ask that you don't put widely used programming languages on the joke language list? a) they don't fit there, b) it massively confused Reddit a while back 21:59:48 ais523: you'll want to delete [[PHP]] 21:59:50 what do you mean by unix though? posix != sus at least 22:00:15 elliott: it shouldn't be categorised as an esolang, at least 22:00:16 QNX claim that they implement posix without being ANYTHING LIKE a unix :) 22:00:34 ais523: it shouldn't exist, that's beyond our scope by any judgement 22:00:39 move it to uncyclopedia or something 22:00:44 what do you mean by unix though? posix != sus at least 22:00:45 not equal howso 22:00:46 after adding humor 22:00:52 they're the same standard published with different names 22:01:07 hmm, really? I though sus was a superset of posix 22:01:49 *Once upon a time* it was a seperate spec. 22:02:37 https://secure.wikimedia.org/wikipedia/en/wiki/File:SUS_History.svg 22:03:32 I have deleted it, upon thought; I can imagine a genuine article being there, talking about PHP as an esolang, but that is not it 22:03:55 -!- TeruFSX has joined. 22:05:20 https://github.com/TazeTSchnitzel/DevPerc/blob/master/numbers.py 22:05:26 this is a joke right 22:05:35 SUSv4 includes X/OPEN CURSES, which is not part of POSIX, if you want to be overly pedantic; the SUS page formulates the situation as "The *core* of the Single UNIX Specification, Version 4 is also IEEE Std 1003.1." (emphasis mine) 22:06:02 well, right 22:06:12 does anyone not implement x/open curses? :) 22:06:26 def wrap(num): 22:06:26 while num > 255: 22:06:26 num -= 256 22:06:26 while num < 0: 22:06:26 num += 256 22:06:27 return num 22:06:29 22:06:31 def bool_to_int(b): 22:06:33 return 1 if b == True else 0 22:06:35 wow 22:06:50 Wouldn't be hard to just install ncurses, anyways. 22:07:03 pikhq: x/open curses is not just curses... 22:07:25 What else is it? 22:07:33 misc shit 22:08:07 -!- augur has joined. 22:13:11 And of course the (The Open Group only) UNIX 03 certification program != the (IEEE and The Open Group) POSIX certification program, as far as I can figure out; and the relevant trademarks have ownership differences; if you prefer to think of == as a business-theoretical comparison operator. 22:16:46 -!- augur has quit (Remote host closed the connection). 22:36:00 -!- Sgeo has joined. 22:43:05 -!- Vorpal has quit (Quit: ZNC - http://znc.sourceforge.net). 22:44:26 -!- Sgeo has changed nick to Gseo. 22:44:40 -!- augur has joined. 22:47:00 -!- FireFly has quit (Quit: swatted to death). 23:01:09 elliott. 23:01:20 import sys;sys.__dict__.clear() 23:01:22 Solves all Python problems. 23:03:20 FSVO solve 23:03:36 system("runhaskell"); 23:03:40 Solves all C problems. 23:09:54 -!- augur has quit (Ping timeout: 240 seconds). 23:13:51 -!- augur has joined. 23:25:33 And no one noticed that I noticed your mocking 23:25:38 -!- Gseo has changed nick to Sgeo. 23:27:06 it wasn't mocking, it was a perfect imitation 23:33:06 -!- augur has quit (Ping timeout: 240 seconds). 23:33:55 -!- augur has joined. 23:40:18 -!- augur has quit (Ping timeout: 240 seconds). 23:41:54 -!- ais523 has quit (Ping timeout: 240 seconds). 23:46:05 -!- augur has joined. 23:53:36 -!- augur has quit (Remote host closed the connection).