←2011-12-29 2011-12-30 2011-12-31→ ↑2011 ↑all
00:00:36 <Phantom_Hoover> zzo38, reticent Millwall.
00:01:12 <zzo38> What does reticent Millwall mean? I don't actually know the names of any of the systems
00:02:14 <Phantom_Hoover> Well, it's a modification of Millwall such that it doesn't end up at O(\zeta(n)) in the case of pseudoretrocausal scores.
00:02:19 <Phantom_Hoover> Hence reticent.
00:02:34 <zzo38> I don't even know what Millwall means
00:03:04 <Phantom_Hoover> Honestly, you don't know about Millwall?
00:03:37 <zzo38> Yes it is true I don't know. It might correspond to something that I understand but don't know the name of.
00:04:25 <Phantom_Hoover> It's just ablative exponentiation combined with Chiswick normalisation.
00:04:36 -!- calamari has joined.
00:04:46 <elliott> zzo38: The key part of millwall is w(x) = \tau 2^-x - \zeta(e+pi)^(i pi x)
00:04:58 <elliott> \tau 2^-x being the Chiswick normalisation ofc
00:05:21 <zzo38> elliott: O, OK. But I still don't know if that has anything to do with five pin bowling.
00:05:28 <elliott> You take the integral of that and floor the result and plug it into the standard Chernobyl construction
00:05:36 <elliott> Oh, five pin bowling?
00:05:44 <elliott> I thought we were talking about theoretical physics.
00:05:49 <zzo38> Yes, five pin bowling is what I was asking about
00:05:56 <elliott> Oh.
00:06:01 <elliott> I don't know, then.
00:06:06 <Phantom_Hoover> Unfortunately fivepin bowling isn't subject to the Katamari degeneracy, so there's no closed form for the integrand.
00:06:17 <zzo38> Katamari?
00:06:44 <Sgeo> Phantom_Hoover, elliott kallisti update
00:06:51 <Sgeo> It's an [S]
00:06:53 <Phantom_Hoover> Where U(C) = U(«C»), ofc.
00:07:38 <Phantom_Hoover> Won't load for me.
00:07:44 <Phantom_Hoover> I do hope the hosting hasn't folded again.
00:11:15 -!- Phantom_Hoover has quit (Quit: Leaving).
00:11:28 -!- Phantom_Hoover has joined.
00:14:09 <Phantom_Hoover> http://www.reddit.com/r/math/comments/nuob8/what_are_some_applications_of_prime_numbers_in/
00:14:39 -!- madbr has quit (Ping timeout: 252 seconds).
00:15:37 -!- sebbu2 has changed nick to sebbu.
00:17:08 <Sgeo> Phantom_Hoover, http://mspandrew.tumblr.com/post/14993719073/it-loads-just-fine
00:17:32 <zzo38> It loads backward and sideways
00:17:55 <Phantom_Hoover> Nope.
00:17:56 <elliott> http://www.reddit.com/r/math/comments/nuob8/what_are_some_applications_of_prime_numbers_in/c3c52bw http://www.reddit.com/r/math/comments/nuob8/what_are_some_applications_of_prime_numbers_in/c3c3f60
00:17:58 <Phantom_Hoover> Still doesn't load.
00:17:59 <elliott> Phantom_Hoover: so cool ;__;
00:18:03 <Phantom_Hoover> I guess I'll have to wait.
00:18:41 <elliott> Advice on teaching yourself. Please help. (self.math)
00:18:43 <elliott> Oh, the irony.
00:19:08 <quintopia> that thing about the cicadas is p awesome. i never knew that.
00:19:19 -!- madbr has joined.
00:21:00 <Sgeo> Everyone who saw the new Homestuck flash: Take a good look at Prospit
00:21:04 <Sgeo> >.>
00:21:05 <hagb4rd> 2 percent really doesn't seem to be much.. i wonder how they found out
00:21:52 <elliott> Sgeo: stfu until anyone other than you has seen it at the very least
00:22:32 <Sgeo> elliott, I wasn't aware I was the only one who saw it
00:22:35 <Sgeo> I did say update >.>
00:22:45 <elliott> Sgeo: and then Phantom_Hoover said "it doesn't load"
00:23:06 <Sgeo> elliott, but it does load
00:23:09 <quintopia> hagb4rd: it implies that there would be 2% more of the 17yr locusts than the 15yr locusts every 15 years or so. that advantage can add up in terms of population.
00:23:15 <Sgeo> At least for me
00:23:29 <hagb4rd> fascinating
00:23:45 <elliott> Sgeo: OK, that's n=1
00:23:49 <quintopia> also, if a predator does figure out how to explot the composite-locust, there is a boon for that predator, which would further improve the advantage.
00:24:24 <hagb4rd> they must have watched cicadas for about hundred years
00:25:42 <Phantom_Hoover> For a hundred years, they watched us. Counting the years in our life cycle. Factorising. In hindsight, they were really slow at that.
00:25:58 <hagb4rd> hehe
00:26:50 <hagb4rd> thats water for my mill
00:27:03 <elliott> Phantom_Hoover: Can we breed cicadas in an environment with computer-controlled predators to crack RSA?
00:27:06 <elliott> Is this the best idea ever?
00:27:27 <zzo38> What time is it on the moon?
00:27:49 <Phantom_Hoover> elliott, no, we use computer controlled cicadas.
00:27:51 <Phantom_Hoover> Duh.
00:32:44 -!- Vorpal has quit (Ping timeout: 276 seconds).
00:34:11 <quintopia> why might a tar -xvz just lock up and not print anything?
00:35:33 <Deewiant> If you don't use -f or stdin to give it input?
00:36:02 -!- Vorpal has joined.
00:36:52 <quintopia> yeah of course. pathname already provided.
00:45:17 <calamari> quintopia: I've noticed that with modern versions you don't have to specify the compression type.. tar -xvf filename works great
00:51:40 <quintopia> oh
00:51:44 <quintopia> i forgot the f
00:51:46 <quintopia> thanks
00:52:29 -!- hagb4rd2 has joined.
00:53:08 -!- hagb4rd has quit (Disconnected by services).
01:03:27 -!- DCliche has joined.
01:03:46 <elliott> Deewiant: Can you get Pandoc included as a GHC boot lib, thx
01:05:16 * Phantom_Hoover → sleep
01:05:18 -!- Phantom_Hoover has quit (Quit: Leaving).
01:06:42 -!- Klisz has quit (Ping timeout: 240 seconds).
01:12:39 <elliott> what is this λ calculus you talked about? Sounds interesting, is it a kind of mathematica for functional programming? Thank you for your hints! – makelc Mar 7 at 8:15
01:16:09 <elliott> http://symbolhound.com/ oh awesome
01:24:27 <quintopia> hey baby, what's your abs(n)/n
01:28:35 <elliott> lmfao, there's a closed Stack Overflow question ... asked by Alan Kay
01:30:33 <Sgeo> Xanadu is still a thing being worked on, right?
01:33:01 <Sgeo> http://xanarama.net/
01:33:14 * Sgeo wonders if it works in WINE
01:33:57 <Sgeo> "that I will not redistribute the software, or keys to the software, in violation of copyright"
01:34:04 <elliott> <Sgeo> Xanadu is still a thing being worked on, right?
01:34:05 <elliott> Ha!
01:34:15 <Sgeo> " to render my firstborn to be brainwashed and enslaved in Xanadu's underground dungeons"
01:35:41 <Sgeo> Copyright 2007
01:36:16 <Sgeo> It's not rendering properly, I think
01:36:44 <Sgeo> I agree to give them my firstborn, and for what?
01:37:00 <elliott> Sgeo: Let me attempt to disambiguate my statement somewhat: Xanadu will never, ever be released, not even if everyone working on it stopped dying tomorrow and lived until the sun burned out.
01:37:31 <elliott> Personally I think this is a good thing as I object rather heavily to some of the principles behind it, but it's not like anyone would use it anyway...
01:38:03 <elliott> "We should be able to fly documents in 3D gaming space (using today's incredible gaming graphics)-- http://transliterature.org/index_files/tlit-FlyingIslandDocuments.png" hahaha christ
01:38:37 <Sgeo> I don't know much about it other than it's worse vaporware than Duke Nukem 3d
01:38:51 <elliott> So is everything, that game was released on schedule.
01:38:54 <elliott> Well, to my knowledge.
01:39:40 <Sgeo> Duke Nukem 3d stopped being a good example for stuff
01:39:44 <Sgeo> Boo :(
01:39:58 <Sgeo> Oh, wait
01:40:05 <elliott> Sgeo: I'm sorry, I'm not going to be able to avoid calling you an idiot.
01:40:05 <Sgeo> Not Duke Nukem 3d. Duke Nukem Forever
01:40:21 <elliott> Xanadu is better than Duke Nukem Forever, I will grant it that.
01:40:55 <Sgeo> It is?
01:41:54 <elliott> Sgeo: Well, Duke Nukem Forever is widely acknowledged as completely and utterly terrible and unsalvagable, so... I feel safe betting on that.
01:42:25 <Sgeo> Oh, in terms of quality
01:42:35 <Sgeo> In terms of development time, Xanadu's longer, isn't it?
01:43:06 <elliott> DNF wasn't started in 1960, so... yes.
01:51:56 -!- Patashu has joined.
01:58:52 -!- elliott has set topic: nobody azerty | http://codu.org/logs/_esoteric/.
02:00:13 -!- Gregor has set topic: nobody azerty | shellac my colemak | http://codu.org/logs/_esoteric/.
02:01:55 <elliott> dvorak shmorak
02:02:35 -!- Gregor has set topic: nobody azerty | shellac my colemak | I implore: That? 'tis Dvorak? | http://codu.org/logs/_esoteric/.
02:02:57 <elliott> dude
02:02:58 <elliott> youre ruining it
02:03:49 -!- Gregor has set topic: nobody azerty | shellac my colemak | I implore: That? 'tis Dvorak? | BAD KEYBOARD LAYOUT PUN TIME IS BAD KEYBOARD LAYOUT FUN TIME | http://codu.org/logs/_esoteric/.
02:03:50 * quintopia ruins it more by pronouncing it like the composer's name
02:03:59 <quintopia> HAHAHA TRY RHYME IT NOW BITCH
02:04:02 <Gregor> quintopia: So ... incorrectly?
02:04:25 -!- elliott has set topic: pachelbel used dvorak | http://codu.org/logs/_esoteric/.
02:04:34 <quintopia> Gregor: so incorrectly even you can't stop it
02:04:39 -!- Gregor has set topic: pachelbel used dvorak | (if you know what I mean) | http://codu.org/logs/_esoteric/.
02:04:43 <madbr> dvorak ballsack
02:04:51 <elliott> i hate you all
02:05:20 <Gregor> 8-D
02:05:33 -!- quintopia has set topic: pachelbel used dvorak | (if you know what I mean) | As canon fodder? | http://codu.org/logs/_esoteric/.
02:05:57 -!- Gregor has set topic: pachelbel used dvorak | (if you know what I mean) | As canon fodder? | (if you know what I mean) | http://codu.org/logs/_esoteric/.
02:06:16 -!- elliott has set topic: unmitigated awfulness | http://codu.org/logs/_esoteric/.
02:06:24 <elliott> topic is now most accurate topic; future edits disallowed
02:07:29 -!- elliott has set topic: {{pp-dispute}} | unmitigated awfulness | http://codu.org/logs/_esoteric/.
02:07:41 <elliott> you can only view the topic's source now
02:08:25 -!- quintopia has set topic: {{pp-dispute}} | unstipulated godawfulness | http://codu.org/logs/_esoteric/.
02:08:33 <elliott> quintopia: de-sysopped
02:08:34 -!- elliott has set topic: {{pp-dispute}} | unmitigated awfulness | http://codu.org/logs/_esoteric/.
02:08:47 -!- elliott has set topic.
02:08:52 <elliott> i just deleted the topic
02:09:03 <quintopia> i must be ranked higher than you
02:09:12 <elliott> i hacked the system
02:09:13 <elliott> with my
02:09:18 <elliott> ``3l1t3''
02:09:20 -!- Gregor has set topic: Log URL (md5sum compressed): d12f6451164ee3a49c57aad146bf6f9b.
02:09:20 <elliott> ``hax0r skills''
02:09:24 <elliott> as they call them
02:09:24 -!- quintopia has set topic: http://codu.org/logs/_esoteric/.
02:09:28 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: `3l1t3'': not found
02:09:28 <Gregor> :(
02:09:31 <elliott> Gregor: yes
02:09:35 -!- elliott has set topic: Log URL (md5sum compressed): d12f6451164ee3a49c57aad146bf6f9b.
02:09:44 <elliott> MD5 is even feasibly crackable (I think) so nobody can complain :P
02:10:04 * quintopia complains
02:10:12 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: `hax0r: not found
02:10:44 <elliott> Aren't there sites where you can submit plaintexts to be added into an MD5 lookup database
02:10:52 <elliott> We could do that
02:11:34 <Gregor> Topic changes are in the logs now.
02:11:41 <Gregor> So they can just look the URL up.
02:11:44 <elliott> :D
02:12:28 <elliott> fizzie: Vorpal: Can I have that logs-into-SQL script
02:12:38 <elliott> Actually hmm, wouldn't help me here I don't think
02:14:36 -!- quintopia has set topic: Log URL (md5sum compressed): d12f6451164ee3a49c57aad146bf6f9b | Plaintext Log URL is available by grepping the logs.
02:16:09 <Gregor> TECHNICALLY you can get the URL by typing !logs
02:16:50 <quintopia> shhhh
02:17:32 <elliott> wtf its almost 2012
02:17:36 <elliott> how fast does time
02:17:43 <Sgeo> !logs
02:17:59 -!- quintopia has set topic: Log URL (md5sum compressed): d12f6451164ee3a49c57aad146bf6f9b | Plaintext Log URL is available by asking a bot (the required command is in the logs).
02:18:53 <quintopia> apparently that isnt the right command
02:19:25 <elliott> yes
02:19:25 <elliott> it is
02:20:04 <zzo38> Please correct the topic message don't do like that?
02:21:16 <zzo38> I got rid of all my other HaskGlk stuff because I did it wrong so I try to start over. This time done properly.
02:21:49 <zzo38> Is this correct? module Glk where { class GlkMain x where { glkMain :: x -> IO (); }; runMain :: GlkMain () => IO (); runMain = glkMain (); }
02:21:59 <zzo38> Would something like that even work?
02:22:22 <zzo38> (I know that FlexibleContexts extension is required and I have enabled it)
02:23:48 <elliott> How about
02:24:02 <elliott> zzo38: class GlkMain a where { glkMain :: IO a }
02:24:06 <elliott> Then you don't need FlexibleContexts
02:24:12 <elliott> Just main = glkMain will work.
02:24:25 <elliott> (Because it defaults to (), etc.)
02:25:30 <zzo38> elliott: That is no good, because what I need to do, main is in C, and glk_main is in C, which calls a Haskell function which must be defined in this library, and then need to be imported by another program, and then it make the executable.
02:26:37 <elliott> zzo38: Well, OK, but it's still simpler than your original solution
02:26:45 <elliott> You just use glkMain :: IO () directly instead of runMain
02:27:08 <zzo38> Well, OK.
02:28:08 <zzo38> But I think I will still need FlexibleContexts and it seem I might even need the context on a foreign exported function. Is that allowed?
02:28:39 <zzo38> Because, when the library is being compiled, there will be no instance!
02:29:02 <elliott> Hmm
02:29:09 <elliott> Are you sure yuo can even export runMain like that
02:29:19 <elliott> I think it'll reject it with the context
02:29:21 <elliott> And fail without it obviously
02:29:27 <zzo38> Actually, neither of those functions were the ones I wanted to export.
02:29:37 <elliott> Hmm, what would you export to C then?
02:29:45 <zzo38> But the one I need to export, needs to do other stuff including calling that one.
02:30:00 <elliott> Well, does it still have the context?
02:30:05 <elliott> If so I think it'll run into the same problem
02:30:28 <elliott> The context will end up as passing a typeclass dictionary, so exporting it to C like that would be like trying to export a function without one of its arguments, I think.
02:31:16 <zzo38> As far as I know, it will require the context because otherwise the library will not be able to compile due to lack of instances
02:31:29 <elliott> Right. So I don't think you will be able to export it.
02:31:43 -!- NihilistDandy has joined.
02:32:05 <elliott> I think having the user define the entry point for where C calls in and exporting it is unavoidable.
02:34:20 <zzo38> Is it possible to make up an extension to GHC that would allow it to work?
02:35:29 <elliott> You could... add support for enumerating all instances of a class in IO or something, but that doesn't really fit with how GHC does instances at all.
02:35:59 <elliott> I think the best solution would be to supply a glk-glue.hs that users have to compile with their program, that imports GlkMain.glkMain which the user creates.
02:43:21 -!- madbr has left.
02:48:02 -!- DCliche has changed nick to Klisz.
02:53:07 <zzo38> How exactly should that work?
02:56:53 <elliott> zzo38: e.g.
02:57:22 <elliott> import GlkMain; foreign export exported_glk_main ...; exported_glk_main = ... set things up and call glkMain ...
02:57:28 <elliott> it could be as simple as = libraryCall glkMain ofc
02:57:37 <elliott> then the user just writes a GlkMain.glkMain as opposed to a Main.main
02:57:44 <elliott> and does ghc --make GlkMain.hs glk-glue.hs
02:57:49 <elliott> and whatever else is needed to be linked to, etc.
02:59:11 <zzo38> Will the C codes that are already written in the library be able to call it like that?
03:00:43 -!- Sgeo_ has joined.
03:01:40 <zzo38> Other issue is that some Glk libraries will implement Unicode, some won't, and there might be some different versions, there will be functions lacked..... Although I suppose I could avoid those issues by calling those functions through the dispatch layer
03:02:26 -!- Gregor has set topic: Log URL (md5sum compressed): d12f6451164ee3a49c57aad146bf6f9b | You can learn the plain text log URL and more by visiting your local library! Knowledge is power!.
03:03:13 -!- Sgeo has quit (Ping timeout: 240 seconds).
03:03:17 <zzo38> WinGlk does not even implement the latest version of the Glk specification at this time
03:08:40 <zzo38> How do I use C union types in Haskell?
03:09:54 <zzo38> Or even C structure types?
03:18:28 <kallisti> Vorpal: I think the animus fragments are for like backstory or something.
03:18:52 <kallisti> @tell oerjan oh you make corrections? I pulled the >>+ from the logs on the same day you mentioned the obviousness.
03:18:52 <lambdabot> Consider it noted.
03:25:29 <zzo38> Maybe I should just write wrapper functions in C instead, which can be written to be meant for use with Haskell program, and then import those into Haskell
03:28:30 <elliott> kallisti: what?
03:31:47 -!- Slereah_ has quit (Ping timeout: 268 seconds).
03:32:04 -!- Slereah_ has joined.
03:47:12 <zzo38> How can I tell Mozilla not to load any images or anything else until after the entire HTML has been loaded?
03:50:29 -!- DCliche has joined.
03:52:38 -!- Klisz has quit (Ping timeout: 252 seconds).
03:54:25 <kallisti> zzo38: there was an extension I once had that did something like that.
03:54:28 <kallisti> I don't recall the name
03:54:34 <kallisti> but it was one of those generic "speed up" extensions
04:25:32 <elliott> Hmm, I really want a Chrome extension that saves the entire opened tabs (in all windows) as a bookmark folder.
04:28:08 <kallisti> :t unfoldr
04:28:09 <lambdabot> forall b a. (b -> Maybe (a, b)) -> b -> [a]
04:28:31 <kallisti> :t random
04:28:32 <lambdabot> forall g a. (Random a, RandomGen g) => g -> (a, g)
04:34:23 <elliott> hi kallisti
04:36:37 <kallisti> hi
04:36:53 <kallisti> elliott: I'm trying to convince someone that randomly generated a string of 10 characters has nothing to do with alpha conversion.
04:36:57 <kallisti> *generating
04:37:17 <kallisti> and also he's using GADT because it "helps him see the type signature" but he's doing it wrong. :(
04:39:13 <elliott> kallisti: where
04:39:22 <elliott> also you're still on watch for misusing gadts mister
04:39:40 <kallisti> elliott: facebook
04:39:42 <kallisti> elliott: I am?
04:39:47 <kallisti> I haven't even used them yet.
04:39:57 <elliott> yeah with your signal stuff, trying to stuff discrete and continuous signals into single data type
04:40:09 <elliott> (btw you basically just reinvented frp (which i was too tired to realise at the time), so you're in good company)
04:40:27 <elliott> (in frp, Behavior a ~ Time -> a, and Event a ~ [(Time,a)] -- continuous and discrete signals, respectively)
04:43:38 <kallisti> elliott: I noticed that later as I was reading about FRP
04:44:46 * elliott has managed to convince himself that some-form-of-FRP solves just about every need he has of a programming system, which is great, because I can procrastinate with impunity thanks to its research status
04:45:20 <kallisti> elliott: lol
04:46:08 <elliott> I realised that discrete stream processing a la iteratees is just arrowised (or, well, signal-transformer style) FRP with discrete time :)
04:46:57 <kallisti> elliott: excellent
04:47:47 <elliott> pro: I can apply all the FRP knowledge out there to stream processing
04:47:51 <elliott> con: stream processing is now an unsolved problem
04:48:59 <elliott> kallisti: what fucking time is it over there
04:49:25 <kallisti> 11:49 PM
04:49:42 <elliott> i thought that's when you woke up
04:50:17 <kallisti> elliott: oh yeah actually I realized something similar recenly, when someone in Haskell mentioned that Nat -> a can be considered isomorphic to Stream a
04:50:23 <kallisti> (if you ignore _|_)
04:50:32 <kallisti> elliott: I woke up about an hour ago.
04:50:35 <elliott> well that's obvious. and i don't think there are any extra _|_s
04:52:03 <kallisti> and so Stream a is just an Event with a constant interval between every Time
04:52:27 <elliott> well an infinite Event.
04:52:38 <kallisti> yes that too
04:52:45 <elliott> but note that no sane FRP implementation since Fran actually implements the types like that
04:52:46 <elliott> (because
04:52:48 <elliott> they're slow)
04:52:55 <elliott> also because they let you do too much
04:52:59 <elliott> consider Behavior a -> Behavior b
04:53:04 <elliott> it can look into the future of the behaviour it's given
04:53:07 <elliott> and into the far past
04:53:10 <elliott> so it's not really streaming
04:53:18 <elliott> congratulations, you're now up to the point where nobody knows how to solve this
04:53:21 <elliott> (well OK there are proposals)
04:53:23 <kallisti> I assume it can also blow memory / call stack
04:53:31 <elliott> er yes but I don't see how that's relevant
04:53:48 <kallisti> relevant to the part where you mentioned those implementations are inefficient
04:54:09 <elliott> well...yes... but you can't stop a program blowing memory/call stack
04:54:17 <elliott> they're inefficient even for efficient implementations of Behaviors and Times
04:54:18 <elliott> er
04:54:19 <elliott> and Events
04:55:08 <kallisti> yeah I guess "lol THEY CAN ASPLODE COMPUTER" is sort of a trivial point...
04:58:42 <elliott> 75 rep already today. oh no. all those upvotes are going to go down the drain later on
04:59:07 <kallisti> looool
04:59:39 <kallisti> elliott: just think of all the things you could do with that wasted rep
04:59:42 <kallisti> like... have more rep.
04:59:44 <kallisti> and then...
04:59:45 <kallisti> ????
05:00:07 <elliott> yes
05:00:15 <elliott> my dream
05:00:26 <elliott> http://stackoverflow.com/badges/146/legendary
05:00:28 <elliott> is to earn this
05:00:47 <kallisti> should be easy
05:00:53 <kallisti> imagine if it were "150 times consecutively"
05:01:42 <kallisti> elliott: I told this guy about De Bruijn indices and he... seems reluctant.
05:01:44 <elliott> well
05:01:45 <elliott> http://stackoverflow.com/users/1097181/ehird?tab=reputation
05:01:53 <elliott> i've slipped exactly one day
05:01:56 <elliott> SOUNDS EASY TO ME
05:02:07 <elliott> kallisti: defriend
05:02:15 <kallisti> I have no idea why his "randomly generate 10 variable names" is going to be easier than De Bruijn indices.
05:02:23 <kallisti> it literally makes ALPHA CONVERSION SO EASY
05:02:52 <elliott> you don't
05:02:52 <elliott> have
05:02:53 <elliott> to alpha convert
05:02:56 <elliott> that's the point of de bruijn
05:03:01 <kallisti> right
05:05:01 <kallisti> how are free variables typically represented?
05:05:33 <kallisti> ah I see
05:07:21 <elliott> you don't
05:07:24 <elliott> or well
05:07:33 <elliott> variable indices greater than the number of nested lambdas
05:07:42 <kallisti> yes that's what it looks like
05:07:57 <kallisti> could you do like.. negatives instead or is that less convenient?
05:10:54 <kallisti> I don't know if I understand what the index for free variables signifies
05:12:33 <kallisti> as far as I can tell it just identifies it. so in term with a "lambda depth" of 3, any 4 would be referring to the same free variable
05:12:42 <kallisti> and any 5 would be referring to a different free variable.
05:12:49 <elliott> uh
05:12:55 <elliott> in \e, 0 is the parameter
05:12:59 <elliott> and every other variable is increased by 1
05:13:09 <elliott> for someone advocating de bruijn you don't seem to know anything about it :P
05:13:19 <kallisti> hm Wikipedia starts at 1
05:13:34 <kallisti> so \x. x
05:13:39 <kallisti> is \ 1
05:13:43 -!- DCliche has changed nick to Klisz.
05:14:57 <kallisti> elliott: also that's irrelevant to what I was talking. those are bound variables. I get those.
05:15:21 <kallisti> but would it be bad to use negative indices instead for free variables?
05:15:37 <elliott> well you could never bind them...
05:15:44 <elliott> whereas you can bind free vars by doing (\e)x
05:17:10 <kallisti> maybe I don't get the point of free variables then...
05:17:55 <kallisti> also what does (\e) signify?
05:18:09 <kallisti> that doesn't look like a complete lambda term to me.
05:18:45 <elliott> e is the expression you want to bind the free variable of
05:18:55 <elliott> for instance let's say we have (\1 0) with free variable 1
05:19:03 <kallisti> okay
05:19:04 <elliott> and we want to bind 1 to be print
05:19:07 <elliott> we could do
05:19:19 <elliott> \((\1 0) 0) print
05:19:29 <elliott> = \print 0
05:19:41 <elliott> or more simply
05:19:44 <elliott> we have 0 (no lambda)
05:19:50 <elliott> and want to bind its free variable to print
05:19:53 <elliott> (\0) print
05:20:09 <kallisti> huh, why have I never seen this ever. :P
05:20:16 <kallisti> maybe I didn't pay attention to that.
05:20:55 <kallisti> oh okay.
05:20:57 <kallisti> nevermind
05:21:44 <kallisti> I was misinterpreting your syntax above
05:21:58 <kallisti> I wasn't reading (\e)x in the de bruijn notation.
05:22:11 <kallisti> since there was letters involved.
05:23:00 <kallisti> hmmm okay....
05:23:19 <kallisti> couldn't you have an arbitrary order to how you assign free variables though?
05:23:22 <kallisti> for example
05:23:26 <kallisti> \x. y z
05:23:33 <kallisti> could be \ 1 2
05:23:38 <kallisti> or \ 2 1
05:23:40 <kallisti> right?
05:27:22 <elliott> there are two forms
05:27:25 <elliott> well wait
05:27:30 <elliott> well sure whatever
05:27:38 <elliott> i don't know why you'd use de bruijn for free variables
05:27:41 <elliott> people usually use names for those
05:27:57 <kallisti> I was just going by the Wikipedia article, which assigns indices to them
05:28:10 <kallisti> but yeah it would probably be easier to use -1 for the index and just keep the name floating around
05:29:55 * kallisti is wondering what the most efficient algorithm for assigning De Bruijn indices in Haskell is.
05:30:25 <kallisti> whast I'm thinking of is probably horrible...
05:31:25 <elliott> MAKE ME GO TO BED
05:31:27 <elliott> <kallisti> but yeah it would probably be easier to use -1 for the index and just keep the name floating around
05:31:28 <elliott> no just
05:31:33 <elliott> data Lam = Free String | Bound Int | ...
05:31:42 <kallisti> or that
05:31:53 <elliott> most efficient is easy
05:32:24 <elliott> rewr env (VLam name e) = Lam (rewr (Map.insert name 0 (Map.map succ env))))) e))))
05:32:28 <elliott> or well
05:32:30 <elliott> efficient enough anyway
05:33:04 <kallisti> elliott: that's basically what I was thinking, though not quite so concise.
05:33:10 <kallisti> my idea was "lol use a Map"
05:37:05 <kallisti> and you'd want a datatype to represent the syntax tree and a data type to represent the tree after de bruijnifying right?
05:40:02 <elliott> if you mean you want a data type for the named and de bruijn representation, then yes duh
05:40:09 <elliott> unless you want to process strings :P
05:43:28 <elliott> kallisti: help can't sleep need rep
05:53:59 <kallisti> elliott: work on your #esoteric rep
05:54:20 <kallisti> by...
05:54:21 <kallisti> ..
05:54:25 <kallisti> I don't know
05:55:17 <elliott> killing everyone
05:57:29 <kallisti> yes good
05:57:35 <kallisti> elliott: he still wants to alpha convert. ;_;
05:57:50 <elliott> defriend
05:57:50 <elliott> sheesh
05:57:54 <elliott> i told you to do that hours ago
05:58:06 <kallisti> none of my other RL friends know Haskell at all. :P
05:58:46 <elliott> and the one you do is terrible
05:58:50 <elliott> friendship improvement drive
05:59:21 <kallisti> he's at least realized that randomly generating 10 variables names for each variable does absolutely nothing for him.
06:00:08 <kallisti> he's an electrical engineering major so I guess I can excuse him for being bad at programming.
06:00:22 <elliott> http://en.wikipedia.org/wiki/Train_(unidentified_sound) this freaks me out way more than bloop
06:02:27 <kallisti> elliott: Julia sounds freakier to me.
06:03:11 <elliott> http://en.wikipedia.org/wiki/Whistle_(unidentified_sound) aaaaaaaaaah god
06:03:27 <elliott> (turn up volume)
06:03:48 <kallisti> lol
06:04:11 <kallisti> wtf upsweep is weird too
06:04:23 * kallisti should make some electronic noise music with upsweep in the background
06:04:26 <kallisti> yeaaaah
06:04:28 <kallisti> actually
06:04:31 <kallisti> I could make a whole album
06:04:33 <elliott> "The sound appears to be seasonal, generally reaching peaks in spring and fall, but it is unclear whether this is due to changes in the source or seasonal changes in the propagation environment. The source can be roughly located at 54° S 140° W, near the location of inferred volcanic seismicity, but the origin of the sound is unresolved. The overall source level has been declining since 1991 but the sounds can still be detected on NOAA's equato
06:04:34 <elliott> rial autonomous hydrophone arrays.[1]"
06:04:38 <elliott> ha ha oh boy nightmares
06:04:56 <kallisti> with each of these sounds
06:04:57 <elliott> http://toolserver.org/~geohack/geohack.php?pagename=Upsweep_(unidentified_sound)&params=54_S_140_W_scale:40000000 oh great, the source is out in the middle of fucking nowhere
06:05:02 <elliott> that makes me feel so much better
06:05:04 <elliott> see like
06:05:12 <elliott> if it was off the coast of ireland or something
06:05:13 <elliott> i'd be like
06:05:17 <elliott> sure w/e can't be anything too serious
06:05:29 <elliott> but satan could rise from the deep there and nobody would notice
06:06:51 <elliott> kallisti: http://www.listentothedeep.com/acoustics/index.html
06:06:54 <elliott> hear the next bloop AS IT HAPPENS
06:06:57 <kallisti> elliott: http://matt.might.net/articles/cek-machines/ hmmm have you heard of these?
06:06:59 <calamari> vlc implemented a crt tv emulation deinterlacing mode called "phosphor".. but I don't have it :(
06:07:01 <elliott> the best way to be completely fucking terrified!
06:07:26 <elliott> calamari: Just port VLC to VICE, it has really good C64-on-an-NTSC-TV emulation.
06:07:42 <elliott> kallisti: I think I've seen that article.
06:07:57 <kallisti> elliott: sounds like...
06:08:01 <kallisti> a lot of watery static
06:08:54 <calamari> sounds like.. a magnetohydrodynamic movie prop!
06:09:24 <kallisti> Most of the Haskell in this article is not idiomatic.
06:09:25 <kallisti> For examples, data constructors take tuples instead of expanding the components into fields.
06:09:28 <kallisti> bad bad bad
06:13:48 <kallisti> elliott: hmmm does "free variable" have a kind of contextual definition as well?
06:13:51 <kallisti> for example:
06:13:59 <kallisti> \x. \y. x
06:14:10 <kallisti> could you say that x is a free variable in the inner lambda?
06:14:21 <kallisti> but bound in the whole expression?
06:14:25 -!- calamari has quit (Quit: Leaving).
06:16:42 -!- MDude has changed nick to MSleep.
06:17:28 <elliott> kallisti: if you... wanted to?
06:17:45 <kallisti> elliott: I ask because this CEK machine thing uses "free variable" in this way.
06:18:06 <kallisti> "The type D contains values. For the basic lambda-calculus, there is only one kind of value: the closure. A closure is a lambda term paired with an environment that defines the values of its free variables."
06:24:33 * kallisti elliott I feel my interpreter class for my programming language for work is getting kind of ridiculous
06:25:08 <elliott> http://en.wikipedia.org/wiki/Oymyakon why would you live her
06:25:10 <elliott> e
06:25:27 <kallisti> because you were born there .
06:25:34 <elliott> why
06:25:39 <kallisti> good question
06:25:42 <kallisti> interesting philsophical
06:25:44 <kallisti> question
06:25:46 <kallisti> I often wonder
06:25:55 <kallisti> "why did I end up being me? and not something else."
06:26:02 <kallisti> this concept of identity blows my mind.
06:26:38 <kallisti> consciousness. I AM JUST MATTER WHY DO I EXIST AS THIS REACTIVE PRESENCE.
06:27:19 <quintopia> kallisti: Dust
06:27:31 <elliott> ha
06:27:32 <elliott> ha
06:27:35 <elliott> kallisti: http://toolserver.org/~geohack/geohack.php?pagename=Extreme_points_of_Earth&params=48_52.6_S_123_23.6_W_type:landmark&title=Point+Nemo
06:27:42 <elliott> pacific pole of inaccessibility
06:27:48 <elliott> that's like RIGHT NEXT to the source of that sound*
06:27:49 <elliott> *fsvo right next
06:28:16 <elliott> i'm telling you
06:28:18 <elliott> SATAN CUOLD RISE
06:28:20 <quintopia> s=severe or small?
06:28:45 <quintopia> oh, some
06:30:50 <elliott> "Since the Earth is a spheroid, its center (the core) is thousands of kilometres beneath its crust" thanks wp
06:36:51 <kallisti> elliott: is that because it's a spheroid or because the earth has thousands of kilometres of volume.
06:38:00 <kallisti> "Because the earth is a spheroid and has thousands of cubic kilometres of volume, its center is thousands of kilometres beneath its crust" -- MoreAccuratepedia
06:44:23 <kallisti> any reason why Haskell randomly decided that Ordering constructors have all caps.
06:44:29 <kallisti> EQ LT GT instead of Eq Lt and Gt
06:44:48 <kallisti> I guess they're abbreviations, but most abbreviations in Haskell don't do that.
06:45:07 <elliott> why IO and not Io
06:45:25 <monqy> e-qual
06:47:47 <kallisti> I guess for acronyms it typically is capitalized
06:48:00 <kallisti> but yes, EQ is not an acronym.
06:48:08 <kallisti> but
06:48:11 <kallisti> LT GT and Eq
06:48:12 <kallisti> would be
06:48:13 <kallisti> dumb
06:50:15 -!- Klisz has quit (Quit: SLEEP, GLORIOUS SLEEP).
06:51:36 <elliott> fuck you
06:51:38 <elliott> sleep person
06:51:40 <elliott> i
06:51:40 <elliott> hate you
06:54:39 <elliott> wow
06:54:41 <elliott> its still dark
06:54:45 <elliott> kallisti should i catch a sleep
06:54:49 <elliott> ebfbore it runs out
06:55:29 <elliott> monqy??
06:55:33 <monqy> hi
06:55:54 <elliott> should i
06:55:55 <elliott> catch a sleep
06:55:56 <monqy> sleep may be a good idea, but only if you are tired
06:55:58 <elliott> efbore it runs out
06:56:00 <elliott> im nto
06:56:01 <elliott> really tired
06:56:03 <elliott> but im kinda tired
06:56:09 <monqy> sleepeing in the day time is fine too
06:56:14 <monqy> today i napped
06:56:21 <monqy> no shame
06:56:35 <elliott> i cant sleeep too much ebcause ill run out of stack oevrflow reputaewiotn ;_;
06:56:47 <elliott> oh 20 rep just came in
06:56:48 <elliott> maybe i will
06:57:06 <elliott> monqy tell me to sleep
06:57:07 <elliott> with bold text
06:57:09 <elliott> that usually works
06:57:25 <monqy> slep??
06:57:30 <elliott> but
06:57:32 <elliott> the marks
06:57:33 <elliott> of questioning :(
06:57:48 <monqy> selp
06:58:08 <elliott> kallisti
06:58:12 <elliott> tell me to slep
06:58:47 <elliott> ^ul (go to sleep)S
06:58:47 <fungot> go to sleep
06:58:52 <elliott> ok that's good fungot
06:58:52 <fungot> elliott: i am just as confused. you just don't know
06:58:58 <elliott> but you are acold emotionallynes robot :(
06:59:00 <elliott> fungot: :DDD
06:59:00 <fungot> elliott: if that is not used commonly and carries with it an array subscript was too easy heh one time i figured if it's possible, notify the notary.
06:59:36 <elliott> monqy: :(
06:59:43 <monqy> :(
06:59:50 <elliott> maybe ill just
06:59:51 <elliott> give up on sleep
06:59:55 <elliott> thanks to
06:59:57 <elliott> the lack of support
07:00:01 <elliott> of my TRUE FRENZ :'(
07:01:02 <elliott> you all
07:01:02 <elliott> suck
07:01:07 <monqy> :[
07:01:19 <kallisti> sprunge is the best thing ever
07:03:11 <elliott> monqy: tel me an slep ;-;
07:03:12 <elliott> ops
07:03:13 <elliott> ;_;
07:03:15 <monqy> an slep
07:03:16 <elliott> i made bad emoticon
07:03:20 <monqy> oops
07:04:19 <elliott>
07:04:22 <elliott> i hate you all hate you all hate
07:05:10 <elliott> monqy: im going to go to bed NO THANKX TO U AND UR MEDLING KIDS
07:05:21 <monqy> is bed a slep
07:05:23 <monqy> or just a bed
07:05:31 <monqy> just a bed is bad, but slep a bed is good
07:05:36 <elliott> FUCK YOUUUUUUUUUUUUUUUUUUU
07:05:42 <elliott> YOU CANT BETRAY ME THEN DEMAND THE ANSWERS
07:05:44 <elliott> :_______;
07:05:44 <monqy> sometimes i just a bed then slep in the day
07:05:50 -!- elliott has quit (Quit: A SINGULAR CRY).
07:06:02 <kallisti> :t sequence
07:06:03 <lambdabot> forall (m :: * -> *) a. (Monad m) => [m a] -> m [a]
07:11:13 <kallisti> > sequence ["abc", "def"]
07:11:14 <lambdabot> ["ad","ae","af","bd","be","bf","cd","ce","cf"]
07:19:04 <kallisti> > replicateM 5 "AKQJ0123456789"
07:19:06 <lambdabot> ["AAAAA","AAAAK","AAAAQ","AAAAJ","AAAA0","AAAA1","AAAA2","AAAA3","AAAA4","A...
07:19:23 <kallisti> lol
07:19:38 -!- Vorpal has quit (Ping timeout: 276 seconds).
07:20:24 <kallisti> > filter ((==1).length.group) $ replicateM 5 "AKQJ0123456789"
07:20:28 <lambdabot> mueval-core: Time limit exceeded
07:20:37 <kallisti> hm
07:21:02 <kallisti> > length $ filter ((==1).length.group) $ replicateM 5 "AKQJ0123456789"
07:21:06 <lambdabot> 14
07:21:09 <kallisti> lol no
07:21:30 <kallisti> > group "AAAAA"
07:21:32 <lambdabot> ["AAAAA"]
07:21:37 <kallisti> > group "AAAAQ"
07:21:38 <lambdabot> ["AAAA","Q"]
07:21:49 <kallisti> oh
07:21:54 <kallisti> > length $ filter ((/=1).length.group) $ replicateM 5 "AKQJ0123456789"
07:21:57 <lambdabot> 537810
07:22:01 <kallisti> > filter ((/=1).length.group) $ replicateM 5 "AKQJ0123456789"
07:22:02 <lambdabot> ["AAAAK","AAAAQ","AAAAJ","AAAA0","AAAA1","AAAA2","AAAA3","AAAA4","AAAA5","A...
07:23:09 <zzo38> What is it called when you make a variant of an existing Alternative (or MonadPlus) that reverses <|>
07:23:46 <zzo38> Often, "T" is used for a ten in a deck of cards, if that is what you are trying to do
07:25:05 <kallisti> yes
07:25:59 <kallisti> > filter ((==2).length.group) $ replicateM 5 "AKQJ0123456789"
07:26:00 <lambdabot> ["AAAAK","AAAAQ","AAAAJ","AAAA0","AAAA1","AAAA2","AAAA3","AAAA4","AAAA5","A...
07:26:18 <kallisti> that's all four-of-a-kinds and full houses
07:26:59 <kallisti> :t (&&&)
07:27:00 <lambdabot> forall (a :: * -> * -> *) b c c'. (Arrow a) => a b c -> a b c' -> a b (c, c')
07:28:26 <kallisti> > filter (\h -> length (group h) == 2 && all ((/=4).length) h) $ replicateM 5 "AKQJ0123456789"
07:28:27 <lambdabot> Couldn't match expected type `[a]'
07:28:27 <lambdabot> against inferred type `GHC.Types...
07:28:45 <zzo38> But you should use 'T' for ten
07:29:07 <kallisti> > filter ((\h -> length h == 2 && all ((/=4).length) h).group) $ replicateM 5 "AKQJ0123456789"
07:29:09 <lambdabot> ["AAAKK","AAAQQ","AAAJJ","AAA00","AAA11","AAA22","AAA33","AAA44","AAA55","A...
07:29:14 <kallisti> okay fine
07:29:25 <kallisti> > filter ((\h -> length h == 2 && all ((/=4).length) h).group) $ replicateM 5 "AKQJT98765432"
07:29:27 <lambdabot> ["AAAKK","AAAQQ","AAAJJ","AAATT","AAA99","AAA88","AAA77","AAA66","AAA55","A...
07:29:46 <kallisti> @pl ((\h -> length h == 2 && all ((/=4).length) h).group)
07:29:46 <lambdabot> ap ((&&) . (2 ==) . length) (all ((4 /=) . length)) . group
07:31:00 <zzo38> Yes, that is better, before you had fourteen cards anyways. Now they are in descending order properly
07:32:05 <kallisti> > filter ((\h -> length h == 2 && any ((==4).length) h).group) $ replicateM 5 "AKQJT98765432"
07:32:06 <lambdabot> ["AAAAK","AAAAQ","AAAAJ","AAAAT","AAAA9","AAAA8","AAAA7","AAAA6","AAAA5","A...
07:32:14 <kallisti> four of a kinds.
07:32:38 <kallisti> I guess actually I need to sort them first
07:33:04 <kallisti> > filter ((\h -> length h == 2 && any ((==4).length) h).group.sort) $ replicateM 5 "AKQJT98765432"
07:33:06 <lambdabot> ["AAAAK","AAAAQ","AAAAJ","AAAAT","AAAA9","AAAA8","AAAA7","AAAA6","AAAA5","A...
07:33:16 <kallisti> > filter ((\h -> length h == 2 && all ((/=4).length) h).group.sort) $ replicateM 5 "AKQJT98765432"
07:33:18 <lambdabot> ["AAAKK","AAAQQ","AAAJJ","AAATT","AAA99","AAA88","AAA77","AAA66","AAA55","A...
07:33:31 <kallisti> actually no
07:33:36 <kallisti> sorting them gives me duplicates
08:08:52 <zzo38> catMaybe = (>>= maybe empty pure); In what cases does catMaybe . optional = id fails? I think it fails when there are error messages associated with it? And the list monad has no error messages so it succeeds with that one.
08:08:55 <Sgeo_> YouTube is WTFy
08:09:13 <Sgeo_> I go to watch a video of This is Gallifrey, music info says "Martha Triumphant"
08:09:24 <Sgeo_> I go to Martha Triumphant, underneath is "Donna's Theme"
08:09:28 <Sgeo_> http://www.youtube.com/watch?v=-HANl6jQxxQ
08:12:38 <zzo38> When looking at the continuation monad definitions, I notice it seems to be similar to the type for double nots
08:12:54 <Sgeo_> double nots?
08:13:10 <zzo38> (And will be, if in ((a -> r) -> r) if r is uninhabited type!)
08:13:22 <Sgeo_> Donna's Theme is The Stowaway, apparently
08:13:49 <Sgeo_> http://www.youtube.com/watch?v=REwOudgPQTI&feature=related gets the song right
08:13:51 <Sgeo_> I'm in shock
08:13:52 <zzo38> But there is also codensity monads, which is similar but r is universally quantified instead of being a parameter. That is the other way too.
08:13:57 <Sgeo_> Maybe it's just the channel
08:14:58 <zzo38> Actually I think the codensity monad *is* the double nots.
08:15:22 <zzo38> Well, kind of.
08:24:57 <zzo38> Is this a proper implementation of category of walks? data Walk w x y where { WalkId :: Walk w a a; WalkTo :: w a b -> Walk w b c -> Walk w a c; }; instance Category (Walk w) where { id = WalkId; WalkId . z = z; z . WalkId = z; z . WalkTo x y = WalkTo x (z . y); }; makeWalk :: w x y -> Walk w x y; makeWalk = flip WalkTo WalkId;
08:30:45 <zzo38> Is it supposed to have a different name?
08:44:32 <copumpkin> Star
08:44:44 <copumpkin> or reflexive transitive closure
08:44:58 <copumpkin> http://www.cse.chalmers.se/~nad/listings/lib/Data.Star.html#553
08:46:16 <zzo38> I do not understand an Agda code much.
08:46:35 <copumpkin> http://www.mail-archive.com/haskell-cafe@haskell.org/msg19411.html is a little more comprehensible, but he instantiated your w variable
08:46:50 <copumpkin> search for ReduceEventually
08:47:13 <copumpkin> but the usual name I've seen for it is reflexive, transitive closure
08:47:25 <copumpkin> of a relation (w in your version)
08:48:36 <kallisti> hi scrutinize my lambda calculus stuff: http://sprunge.us/SjJZ
08:50:46 <zzo38> That one doesn't appear to have a Category instance. Also, when I named it "Walk" I was thinking that w could be a digraph, which is why I called it that, although of course w can be any type of the kind (* -> * -> *). And I think it is not a functor from (w) to (Walk w) but is a functor the other way around. Is it? Maybe I am wrong?
08:51:39 <zzo38> (Where x and y are the nodes and the constructors of w are the edges)
09:14:59 <zzo38> Do you know anything else about this kind of thing related to these way too?
09:17:57 <kallisti> :t shows
09:17:58 <lambdabot> forall a. (Show a) => a -> String -> String
09:20:23 <kallisti> lol apparently λ in a string doubles as an escape character?
09:20:31 <kallisti> > " λ"
09:20:32 <lambdabot> " \955"
09:20:36 <kallisti> oh hmmm
09:20:47 <kallisti> maybe it's an error in emacs syntax highlighter
09:20:59 <zzo38> Can you fix it?
09:21:07 <kallisti> I don't know.
09:25:27 <Sgeo_> lambdabot may have different behavior due to bleh
09:25:59 <Sgeo_> Well, GHCi does not consider it to be an escape character
09:29:23 -!- oerjan has joined.
09:32:04 <oerjan> boo!
09:32:04 <lambdabot> oerjan: You have 1 new message. '/msg lambdabot @messages' to read it.
09:32:39 <oerjan> <kallisti> @tell oerjan oh you make corrections? I pulled the >>+ from the logs on the same day you mentioned the obviousness.
09:32:54 <oerjan> it wasn't a correction, it was a theory of why i'd say something that stupid :P
09:33:03 <oerjan> which might itself be wrong, of course
09:35:53 <oerjan> <kallisti> lol apparently λ in a string doubles as an escape character? <-- erm show for Strings gives Unicode points outside ASCII as escape characters, i think.
09:35:57 <oerjan> > "Ø"
09:35:58 <lambdabot> "\216"
09:37:59 <oerjan> oh hm i probably misunderstood what you were asking
09:39:59 <oerjan> 08:24:57: <zzo38> Is this a proper implementation of category of walks? data Walk w x y where { WalkId :: Walk w a a; WalkTo :: w a b -> Walk w b c -> Walk w a c; }; instance Category (Walk w) where { id = WalkId; WalkId . z = z; z . WalkId = z; z . WalkTo x y = WalkTo x (z . y); }; makeWalk :: w x y -> Walk w x y; makeWalk = flip WalkTo WalkId;
09:40:04 <oerjan> 08:30:45: <zzo38> Is it supposed to have a different name?
09:41:34 <oerjan> yes, that looks isomorphic to http://hackage.haskell.org/package/thrist-0.2.1
09:44:36 <oerjan> zzo38: ^
09:46:13 <zzo38> oerjan: O, yes, OK. But I didn't think it should be arr? I think it is a functor the other way around instead or what, I don't know?
09:47:28 <oerjan> zzo38: well the arrow instance requires w / ~> to be an arrow
09:48:45 <oerjan> and you need something similar to map back from Walk w to w, i think
09:48:49 <kallisti> I used to make arrow instances, then I took an arrow to the knee.
09:50:29 <zzo38> oerjan: I did see that. But still, it doesn't look like it is really a functor from another category to this one, as far as I can tell. It looks like to me, it is a functor the other way around
09:52:45 <zzo38> I did look at the RULES pragma for Control.Arrow and isn't it supposed to be arr is some kind of functor from one category to another?
09:53:07 <zzo38> (As opposed to fmap, which is an endofunctor)
09:53:35 <oerjan> zzo38: it looks to me like a free construction, which means there should be a free walk functor (not necessarily Functor) one way, and an underlying w functor the other way, which are hopefully an adjoint pair in the category sense
09:53:42 <kallisti> oerjan: I mean backslash not escape character
09:53:49 <kallisti> oerjan: but it's an emacs syntax highlighting thing
09:53:56 <oerjan> kallisti: ok
09:54:06 <kallisti> if I put a lambda before an end quote it continues treating the stuff after the end quote as a string
09:54:09 <kallisti> as though it had been escaped
09:55:00 <oerjan> zzo38: also, where there is an adjoint pair there will be a category monad, not necessarily a Monad
09:55:22 <oerjan> (since it's probably defined on the subcategory of w a b objects)
09:55:44 <kallisti> oerjan: hi http://sprunge.us/FgOU
09:56:00 <kallisti> I made the untyped lambda calculus in Haskell. See if it's wrong.
09:56:25 <kallisti> make it better, etc.
09:56:34 <zzo38> But it won't hold arr id = id arr x . arr y = arr (x . y) (This second one is called "compose/arr" in Control.Arrow) At least, it is the case in mine, whether or not theirs is
09:57:19 <oerjan> zzo38: ah right, it only holds if you identify obvious compositions, i guess.
09:57:20 <kallisti> oerjan: I hope you don't mind my gratuitous use of case expressions, I find them less annoying than writing "f x y" over and over when I don't actually pattern match x or y ever.
09:57:49 <kallisti> and in the case of showDBForm I didn't feel like writing that name 4 times.
09:57:51 * kallisti lazy.
09:58:08 <zzo38> oerjan: I think a functor the other way around works though.
10:03:10 <oerjan> kallisti: your showDBForm needs parentheses for right nested applications
10:03:22 <kallisti> oh indeed
10:03:29 <zzo38> For example: class (Category c1, Category c2) => CatFunctor c1 c2 where { funct :: c1 x y -> c2 x y; }
10:03:52 <zzo38> So it is really a generalization of arr, but without first
10:06:23 <kallisti> oerjan: when beta reducing what do I need to do to non-substituted indices?
10:06:28 <kallisti> is it okay to leave them alone?
10:06:51 <oerjan> * kallisti lazy. <-- heard of copy/paste? :P
10:06:57 <kallisti> oerjan: never
10:07:11 <kallisti> I seriously need at least like 4 copy paste buffers I think.
10:09:36 <kallisti> I just realized my reduceSteps function doesn't show you the last reduction. :(
10:10:16 <kallisti> > catMaybes [Nothing, Nothing..]
10:10:17 <lambdabot> <no location info>: parse error on input `]'
10:10:25 <kallisti> > catMaybes [Nothing, Nothing..Nothing]
10:10:26 <lambdabot> A section must be enclosed in parentheses
10:10:26 <lambdabot> thus: (`Nothing..` Nothing)Not...
10:10:30 <oerjan> kallisti: your reduce seem to be missing the case of App f x where f needs to be reduced recursively
10:10:38 <oerjan> *seems
10:11:18 <kallisti> oh you mean when f is the variable being substituted or?
10:11:33 <oerjan> no, when f is itself an App
10:12:27 <kallisti> erm...
10:12:51 <kallisti> are you... sure?
10:14:36 <oerjan> quite sure. how would you ever get App (App (Abs (Abs 0)) (Free "a")) (Free "b") reduced with your reduce?
10:14:42 * oerjan hopes he got that right
10:15:20 <kallisti> 0 should be Bound 0 but okay.
10:15:25 <kallisti> hmm
10:16:07 <oerjan> (aka (\x y -> y) a b, he hopes)
10:16:35 <kallisti> oh hmmm.
10:17:39 <kallisti> oops
10:18:46 <oerjan> <kallisti> > catMaybes [Nothing, Nothing..Nothing] <-- (1) . after a capitalized identifier gets interpreted as module qualification (2) there is no Enum instance for Maybes
10:19:33 <kallisti> > catMaybes (repeat Nothing)
10:19:38 <kallisti> looool
10:19:39 <lambdabot> mueval: ExitFailure 1
10:19:39 <lambdabot> mueval: Prelude.undefined
10:20:24 <kallisti> is there something like iterate except it stops on a Nothing?
10:20:48 <oerjan> takeWhile isJust . iterate f
10:20:54 <monqy> I was just about to say
10:21:10 <kallisti> also needs a catMaybes
10:21:36 <monqy> catMaybes .
10:21:42 <oerjan> i cannot recall anything succinct
10:21:43 <Sgeo_> @src catMaybes
10:21:43 <lambdabot> catMaybes ls = [x | Just x <- ls]
10:21:45 <kallisti> monqy: thanks. :>
10:21:53 <Sgeo_> Oh, so it doesn't use fromJust. Good
10:22:06 <monqy> why would it use fromjust
10:22:14 <monqy> you know what catmaybes does right
10:22:21 <Sgeo_> map fromJust . filter isJust
10:22:31 <monqy> that's a rather bad way to put it
10:22:39 <monqy> or maybe a good one
10:22:45 <Sgeo_> Is there a better way to do it without list comprehensions?
10:22:46 <monqy> ~who knows~
10:23:57 <kallisti> oerjan: hmmm so....reduce (App f x) = App (reduce f) x
10:24:19 <oerjan> kallisti: yeah
10:24:44 <oerjan> your canReduce needs adjustment too
10:24:49 <kallisti> ah yes
10:25:21 <kallisti> oerjan: how do you feel about my where clause inbetween two cases of a function. :P
10:25:30 <oerjan> kallisti: you could use the trick of returning a Maybe which gives Nothing if there was nothing reduced
10:25:42 <kallisti> oerjan: yes that's what I was doing
10:25:48 <kallisti> that's why I asked the above thing about iterate and Maybes :P
10:25:53 <oerjan> ok then :)
10:26:20 <Sgeo_> Hmm, I guess recursion could work for a safe catMaybes?
10:26:38 <monqy> safe?
10:26:39 <Deewiant> ?ty \f -> fst . until (isNothing.snd) (\(x,Just prev) -> (prev, f x)) . (id &&& Just)
10:26:40 <lambdabot> forall a. (a -> Maybe a) -> a -> a
10:26:44 <kallisti> oerjan: hmmm please tell me I don't have to if-then-else though :(
10:27:51 <oerjan> kallisti: i think your subst Bound case is wrong, iirc
10:28:02 <monqy> also: sgeo:
10:28:07 <kallisti> oerjan: yes I was wondering what I should do with indices when I'm substituting.
10:28:08 <monqy> :t concatMap maybeToList
10:28:08 <lambdabot> forall b. [Maybe b] -> [b]
10:28:34 <monqy> "a good catMaybes" - monqy
10:28:40 <monqy> unless it does something weird
10:28:42 <monqy> then it's bad
10:28:43 <monqy> -monqy
10:28:48 <oerjan> kallisti: i think you need to increment things in sub when entering an abstraction
10:28:49 <Sgeo_> :t concatMap
10:28:50 <lambdabot> forall a b. (a -> [b]) -> [a] -> [b]
10:29:06 <kallisti> oerjan: oh okay.
10:29:11 <kallisti> oerjan: how sure are you about that?
10:29:16 <Sgeo_> monqy, cool
10:29:33 <oerjan> not very, i'm not particularly familiar with debruijn indexes :P
10:29:36 <kallisti> oerjan: "increment things" so you mean every bound variable?
10:29:40 <oerjan> yes
10:29:47 <oerjan> oh wait
10:29:48 <kallisti> hmmm
10:30:02 <oerjan> hm, yes.
10:30:51 <oerjan> oops hm wait
10:30:54 <kallisti> lol
10:30:56 <kallisti> can we get like
10:30:57 <kallisti> an example.
10:30:59 <kallisti> to play with.
10:31:19 <oerjan> actually i think i'm retracting that.
10:31:46 <oerjan> since you are only reducing at top level, every bound variable in sub will be bound _inside_ sub
10:31:55 <kallisti> yes
10:32:07 <oerjan> and those should obviously not be renumbered
10:32:10 <kallisti> I'm doing only one beta reduction step.
10:32:16 <kallisti> at the top level of the expression
10:32:51 <oerjan> as long as you don't do any reductions inside abstractions, it should be fine
10:33:04 <oerjan> but i hope you'll be testing it well ;P
10:33:09 <kallisti> oh yes of course
10:33:13 <kallisti> I am master tester
10:33:22 <kallisti> (not really I hate testing)
10:36:52 <oerjan> also if you use Maybe you can probably use unfoldr
10:37:20 <kallisti> oh right
10:37:22 <kallisti> I always forget about that
10:37:25 <kallisti> :t unfoldr
10:37:26 <lambdabot> forall b a. (b -> Maybe (a, b)) -> b -> [a]
10:37:26 <oerjan> or wait hm
10:37:42 <oerjan> it's always tricky whether you get it right at the end then
10:38:01 -!- GreaseMonkey has quit (Quit: The Other Game).
10:38:30 <kallisti> reduceSteps = catMaybes . takeWhile isJust . iterate maybeReduce . Just . indexify
10:38:33 <kallisti> where
10:38:36 <kallisti> maybeReduce (Just e)
10:38:36 <kallisti> oerjan: hi make this less terrible
10:38:38 <kallisti> | canReduce e = Just (reduce e)
10:38:41 <kallisti> | otherwise = Nothing
10:38:43 <kallisti> maybeReduce Nothing = Nothing
10:39:04 <kallisti> I am bad with Maybe, maybe?
10:39:17 <oerjan> kallisti: you don't use canReduce with the Maybe solution
10:39:27 <kallisti> I don't?
10:39:27 <oerjan> you let _reduce_ return a Maybe
10:39:36 <kallisti> oh hmmmm
10:39:39 <kallisti> I don't like that as much
10:39:45 <kallisti> but it makes sense.
10:39:59 <oerjan> but it's the easiest way to avoid the duplication of work between canReduce and reduce
10:40:20 <kallisti> yes
10:40:23 <kallisti> by eliminating canReduce :P
10:40:39 <kallisti> okay a maybe is fine.
10:40:51 -!- Ngevd has joined.
10:40:55 <Ngevd> Hello!
10:41:30 <kallisti> oerjan: except now I have to unwrap the maybe everytime I iterate
10:41:39 <kallisti> oh wait monad
10:41:46 <monqy> thanks monad
10:42:32 <oerjan> > let collatz 1 = Nothing; collatz x | even x = Just $ x `div` 2 | otherwise = Just $ 3*x+1 in unfoldr ((id &&& id) . collatz) 19
10:42:34 <lambdabot> Couldn't match expected type `Data.Maybe.Maybe (a, b)'
10:42:34 <lambdabot> against infe...
10:42:36 <oerjan> argh
10:42:40 <oerjan> oh hm
10:43:02 <oerjan> > let collatz 1 = Nothing; collatz x | even x = Just $ x `div` 2 | otherwise = Just $ 3*x+1 in unfoldr ((id &&& id) <=< collatz) 19
10:43:05 <lambdabot> Couldn't match expected type `Data.Maybe.Maybe (a, b)'
10:43:05 <lambdabot> against infe...
10:43:09 <oerjan> ga
10:43:20 <oerjan> h
10:43:40 <Deewiant> ?ty (id &&& id) . Just
10:43:41 <lambdabot> forall a. a -> (Maybe a, Maybe a)
10:43:56 <Deewiant> ?ty Just . join (,)
10:43:56 <kallisti> reduceSteps :: LCExpr -> [DBForm]
10:43:57 <lambdabot> forall a. a -> Maybe (a, a)
10:43:57 <kallisti> reduceSteps = catMaybes . takeWhile isJust . iterate (>>=reduce) . indexify
10:43:59 <kallisti> much better
10:44:01 <kallisti> but now I have to fix:
10:44:10 <kallisti> reduce (App f x) = Just (App (reduce f) x)
10:44:25 <kallisti> more bind or maybe I guess?
10:44:43 <oerjan> flip App x <$> reduce f
10:44:52 <kallisti> ah yes.
10:45:02 <kallisti> too bad flip is GROSS
10:45:06 <kallisti> I'll use it anyway
10:45:27 <oerjan> App <$> reduce f <*> Just x
10:45:29 <oerjan> hm
10:45:37 <kallisti> choices, choices...
10:45:55 <oerjan> :t flip
10:45:56 <lambdabot> forall (f :: * -> *) a b. (Functor f) => f (a -> b) -> a -> f b
10:46:15 <kallisti> remember I don't have that flip. :P
10:46:20 <oerjan> lambdabot's extended flip is actually what would work there
10:46:35 <kallisti> I like the applicative one.
10:46:52 <oerjan> it probably doesn't have the right precedence, though
10:46:52 <kallisti> mainly because I have an unwarranted phobia of using flip.
10:47:07 <oerjan> oh hm of course
10:47:16 <oerjan> (`App` x) <$> return f
10:47:19 -!- Ngevd has quit (Ping timeout: 252 seconds).
10:47:20 <kallisti> well yes
10:47:25 <kallisti> but I don't really like that either.
10:47:31 <kallisti> that's my usual solution to flip though
10:47:38 <oerjan> *reduce
10:48:54 <kallisti> the only problem now is that I have no way to show steps in normal lambda calculus notation without performing alpha conversion (I think?)
10:49:03 <kallisti> or, well, I could assign a unique character based on DB index
10:50:03 <oerjan> @hoogle Functor f => (b -> c) -> (a -> f a) -> f c
10:50:04 <lambdabot> Control.Parallel.Strategies ($|) :: (a -> b) -> Strategy a -> a -> b
10:50:04 <lambdabot> Control.Parallel.Strategies ($||) :: (a -> b) -> Strategy a -> a -> b
10:50:04 <lambdabot> Control.Parallel.Strategies (.|) :: (b -> c) -> Strategy b -> (a -> b) -> (a -> c)
10:50:09 <oerjan> oops
10:50:14 <oerjan> @hoogle Functor f => (b -> c) -> (a -> f b) -> f c
10:50:14 <lambdabot> Control.Parallel.Strategies ($|) :: (a -> b) -> Strategy a -> a -> b
10:50:14 <lambdabot> Control.Parallel.Strategies ($||) :: (a -> b) -> Strategy a -> a -> b
10:50:14 <lambdabot> Control.Parallel.Strategies (.|) :: (b -> c) -> Strategy b -> (a -> b) -> (a -> c)
10:50:20 <oerjan> that one seems to be missing
10:50:27 <kallisti> wat Control.Monad doesn't have <$> anymore>
10:50:31 <oerjan> @hoogle (b -> c) -> (a -> f b) -> f c
10:50:32 <lambdabot> Control.Parallel.Strategies ($|) :: (a -> b) -> Strategy a -> a -> b
10:50:32 <lambdabot> Control.Parallel.Strategies ($||) :: (a -> b) -> Strategy a -> a -> b
10:50:32 <lambdabot> Control.Parallel.Strategies (.|) :: (b -> c) -> Strategy b -> (a -> b) -> (a -> c)
10:50:47 <oerjan> kallisti: it never did, it's in applicative
10:50:51 <kallisti> oh right
10:50:55 <oerjan> and also in functor itself
10:51:37 <kallisti> reduceSteps = catMaybes . takeWhile isJust . iterate (>>=reduce) . Just . indexify
10:51:40 <kallisti> there we go
10:53:16 <kallisti> my Haskell functions are usually one of three things 1) long lines of combinators 2) monsterous recursive case/guard things 3) do notation glue stuff
10:53:45 <oerjan> > let collatz 1 = Nothing; collatz x | even x = Just $ x `div` 2 | otherwise = Just $ 3*x+1 in unfoldr (\x -> (id &&& id) <$> collatz x) 19
10:53:46 <lambdabot> [58,29,88,44,22,11,34,17,52,26,13,40,20,10,5,16,8,4,2,1]
10:53:49 <oerjan> finally
10:54:07 <oerjan> kallisti: ^ that's the general structure for using unfoldr for such things
10:55:33 <oerjan> hm i guess this doesn't give the _initial_ value.
10:56:35 <kallisti> oerjan: hi what should my LC expression trees derive
10:56:41 <kallisti> Eq, Show, Read, Typeable, ...?
10:57:12 -!- azaq23 has quit (Quit: Leaving.).
10:58:04 <oerjan> i guess.
10:58:31 <kallisti> oh I need DeriveDataTypeable for that apparently
10:59:03 <kallisti> I would think it's generally good practice to derive Typeable, though I could see it being unecessary sometimes (probably in this case)
10:59:48 <oerjan> well it's the sort of thing that's useful for library users, i guess
10:59:55 <kallisti> yes
11:00:00 <kallisti> this is a LAMBDA CALCULUS LIBRARY
11:00:01 <kallisti> obviously
11:04:13 <kallisti> http://www.youtube.com/watch?v=TaXqU7hVVhI
11:05:27 <zzo38> Do you know how to make glyphs for the dwarf planets in our solar system which do not currently have glyphs assigned? (at least, Wikipedia doesn't have them)
11:07:22 <zzo38> Have you read the latest of my D&D recording? One thing it is supposed to be like is a story, like you can just read the text as a novel. (Although, there are also additional things such as footnotes and game data, in case you are interested in that too)
11:08:24 <zzo38> My character's inventory (including money) seem to change a lot (relatively)
11:10:12 <kallisti> --showReduceSteps :: LCExpr -> [String]
11:10:12 <kallisti> --showReduceSteps = map showDBForm . reduceSteps
11:10:13 <kallisti> --showFullReduce :: LCExpr -> String
11:10:14 <kallisti> --showFullReduce = last . showReduceSteps
11:10:22 <kallisti> I think these functions are probably unecessary.
11:10:27 -!- zzo38 has quit (Quit: Do you like inverted qualia?).
11:23:49 <oerjan> @tell zzo38 <zzo38> When looking at the continuation monad definitions, I notice it seems to be similar to the type for double nots <-- http://en.wikipedia.org/wiki/Curry%E2%80%93Howard_correspondence#Correspondence_between_classical_logic_and_control_operators is probably relevant
11:23:50 <lambdabot> Consider it noted.
11:28:07 * Sgeo_ reads about conduits
11:28:41 -!- Phantom_Hoover has joined.
11:37:17 -!- olsner has joined.
11:37:49 <olsner> so my local library has the plain text log url for #esoteric?
11:39:07 <oerjan> no, that's just the beginning of the process. you will have to find a secret portal and rescue a princess.
11:40:04 <oerjan> just a hint: if someone tells you the princess is in another castle, don't believe them, they're planted spies.
11:42:58 <kallisti> olsner: what?
11:43:15 <kallisti> are you sure they don't just have "internet access and computers"
11:43:19 -!- Ngevd has joined.
11:43:39 <kallisti> oh topic
11:43:40 <kallisti> nv
11:43:40 <kallisti> m
11:43:44 <Ngevd> Hello!
11:43:48 <olsner> oerjan: there are castles!?
11:43:53 <oerjan> yeah libraries cannot afford real books these days
11:44:00 <kallisti> Ngevd: hi. Look what I did. http://sprunge.us/CWOb
11:44:06 <kallisti> Ngevd: I've gone and made the lambda calculus.
11:44:34 <oerjan> olsner: of course there are castles, have you not paid attention in your history classes?
11:44:36 <Ngevd> In a language that already features a form of Lambda Calculus?
11:44:42 <kallisti> Ngevd: yes
11:44:47 <Ngevd> Yay!
11:44:55 <kallisti> well, typed lambda calculus.
11:44:57 <kallisti> this one is untyped.
11:45:14 <Ngevd> :t \m n f -> m (n f)
11:45:15 <lambdabot> forall t t1 t2. (t1 -> t2) -> (t -> t1) -> t -> t2
11:45:28 <olsner> oerjan: nope
11:45:30 <Ngevd> But yeah, Haskell can't handle the S I I
11:45:33 <olsner> I don't trust history
11:45:38 <Ngevd> :t ap id id
11:45:39 <lambdabot> Occurs check: cannot construct the infinite type: a = a -> b
11:45:39 <lambdabot> Probable cause: `id' is applied to too few arguments
11:45:39 <lambdabot> In the second argument of `ap', namely `id'
11:45:58 <oerjan> olsner: good policy. however, you can also find castles in tourist guides
11:45:58 <Ngevd> Can kallisti calculus?
11:46:06 <kallisti> wat
11:46:16 <oerjan> (not the castles themselves, directions to them)
11:46:23 <olsner> oerjan: you can't go in those castles though, they're too flat
11:46:29 <Ngevd> Can kallisti's implementation of lambda calculus handle \x -> x x?
11:46:30 <olsner> also not real
11:46:45 <kallisti> Ngevd: probably, since it's an untyped lambda calculus evaluator.
11:47:04 <oerjan> Abs (App (Bound 0) (Bound 0))
11:47:24 <kallisti> oerjan: eventually I'll have a parser for it.
11:47:30 <kallisti> but I don't feel like it right now.
11:47:33 <oerjan> yay
11:47:49 <kallisti> also I'll have it spit out notation for each step by assigning unique variable names and stuff.
11:48:20 <oerjan> @pl ap id id
11:48:20 <lambdabot> join id
11:49:08 <Ngevd> Wow, that makes MIBBLLII developement much easier!
11:49:26 <kallisti> what does?
11:49:28 <kallisti> and what is MIBBLLII?
11:49:45 <Ngevd> join id, it's a brainfuck-disguised combinatory logic esolang
11:50:07 <oerjan> @pl ap id id (ap id id)
11:50:10 <lambdabot> ap id id (ap id id)
11:50:10 <lambdabot> optimization suspended, use @pl-resume to continue.
11:50:26 <Ngevd> Instead of saying <>> I can say ,>
11:50:46 <kallisti> I wonder if this is what most Haskell LC evaluators do
11:50:56 <kallisti> (iteratively apply beta reduction)
11:51:16 <kallisti> or maybe they write the evaluation in one big function?
11:54:25 <kallisti> hmmm just got an idea for a language:
11:54:33 <kallisti> what would happen if you this LC expression:
11:54:54 <kallisti> (\x. y) (x x)
11:54:55 <kallisti> became
11:54:59 <kallisti> y y
11:55:05 <kallisti> reverse LC :P
11:55:05 <Ngevd> I could probably make my downhill esolang a CA
11:57:54 <Sgeo_> elliott was criticizing conduit but I don't remember how
11:59:32 <Sgeo_> Oh
11:59:35 <oerjan> Sgeo_: i think he dislikes the underlying impurity
12:00:02 <Sgeo_> If I take what he said literally, he's wrong
12:00:11 <Sgeo_> "00:00:56: <elliott> Sgeo: For one apparently you have to be in IO and use mutable variables to maintain any kind of internal state but it's ok because you're going to be in IO all the time anyway!
12:00:11 <Sgeo_> "
12:00:17 <Sgeo_> conduits work with ST
12:00:19 <kallisti> possible candidate esolang names: goosereduce, reducearound, calculus the lambda, the calculus lambda, lambda the calculus, reduceagoose
12:00:26 <kallisti> man I'm so good with names.
12:00:38 <Ngevd> adbmal
12:00:48 <kallisti> yes that's good.
12:00:52 <oerjan> `words 50
12:01:01 <oerjan> kallisti: WE HAVE METHODS
12:01:05 <HackEgo> blait dea our lie teinstata canage ling ready deflti bri see min dor beere pathe kurallammy mong apegulige coll sprii chaspatio acl cher aan erre behambrigh ligetally white barquitsu 3344.2 ardshutio prohilie lypock pasted ear uponcia txy iiide oouric urrilledg king nulatth haw ence belit frusinher matoirn aleneth eorredisport sembelfa
12:01:28 <kallisti> acl
12:01:30 <Sgeo_> oerjan, the Yesod blogposts talked about how the impurity makes things simpler, but if we're usually not touching the underlying mechanisms, how does it make it simpler?
12:01:35 <kallisti> advanced calculus lambda
12:02:07 <oerjan> Sgeo_: i've not read most of the conduit posts
12:02:39 <kallisti> also 3344.2 whut
12:02:42 <kallisti> that's not a word.
12:03:00 <oerjan> it's not a word it's a free number
12:03:12 <kallisti> ARGH MUST REDUCE
12:03:24 <kallisti> well, I've got Nothing.
12:03:36 <olsner> @numberwang 3344.2
12:03:37 <lambdabot> Unknown command, try @list
12:03:41 <olsner> `numberwang 3344.2
12:03:44 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: numberwang: not found
12:03:49 <olsner> ^numberwang 3344.2
12:03:53 * oerjan recalls from his childhood books a talking squid by the number of 1030.25
12:03:54 <olsner> argh, which bot is that again
12:03:59 <kallisti> egobot I believe
12:04:12 <olsner> I must know if 3344.2 is numberwang!
12:04:30 <kallisti> tias
12:04:31 <oerjan> he was named after the battle of stiklestad
12:04:34 * Sgeo_ blinks at there being two HasRef (ST s) instances
12:04:56 <Sgeo_> Oh, for lazy and strict
12:05:02 * kallisti blinks at Sgeo's announcement of this.
12:05:15 * kallisti blinks at olsner not checking numberwang
12:05:21 <kallisti> !numberwang 3344.2
12:05:26 <kallisti> oh
12:05:33 <kallisti> that would be because there's no egobot
12:05:35 <olsner> the relevant bot is not present_
12:05:38 <olsner> ?
12:05:41 <kallisti> _:(
12:06:04 <olsner> argh! xfce's layout switcher forgets the layout at random intervals
12:06:50 <kallisti> @tell zzo38 I recall that you were interested in giving Haskell a more extensible syntax. If you look at Perl 6 you can see that it provides a way to redefine language syntax. Perhaps you could look at this for inspiration on how this could be done in Haskell.
12:06:50 <lambdabot> Consider it noted.
12:07:42 <oerjan> it's particularly expressive about the lexical syntax of comments
12:07:45 * oerjan ducks
12:08:11 <olsner> cool stuff, I should learn perl6 some day
12:08:37 * kallisti is still in his comfy perl5 shoes.
12:08:44 <kallisti> perl 6 is scary and strange.
12:09:06 <olsner> "comfy"? enjoy your clogs...
12:09:52 <kallisti> olsner : resident Perl hater
12:10:12 * oerjan may be altogether too comfy in haskell these days
12:10:43 <kallisti> yes, you might forget that things mutate sometimes!
12:10:57 <oerjan> AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA mutants
12:11:55 <kallisti> I got thrown off by this particular bit of Python code: i = iter(ls); for x,y in itertools.izip(i,i): ...
12:12:02 <kallisti> which is similar to zip`ap`tail
12:12:23 <kallisti> at first I was skeptical that it would work, thinking it would be like join zip i
12:12:34 <kallisti> ...because I forgot iterators mutate.
12:14:52 -!- Ngevd has quit (Ping timeout: 240 seconds).
12:17:23 -!- Ngevd has joined.
12:18:44 <kallisti> oerjan: is LC LR (hahaha acronyms)
12:18:52 <Phantom_Hoover> LR?
12:18:52 <lambdabot> Phantom_Hoover: You have 1 new message. '/msg lambdabot @messages' to read it.
12:18:56 <kallisti> left recursive
12:19:00 <kallisti> the notation
12:19:03 <kallisti> of lambda calculus
12:19:06 <kallisti> is it left recursive?
12:19:08 <oerjan> kallisti: LR(1)? certainly.
12:19:18 <Phantom_Hoover> Best message.
12:19:20 <Phantom_Hoover> Bessage.
12:19:33 <oerjan> perhaps even LL(1)
12:19:33 <kallisti> oerjan: but I still should be able to use Parsec to parse it, yes..
12:19:36 <kallisti> I'll just have to do that thing
12:19:37 <kallisti> that you do
12:19:40 <kallisti> to fix it.
12:19:43 <kallisti> that I don't remember the name of
12:19:47 <oerjan> kallisti: erm you don't know what LR means do you :P
12:19:59 <kallisti> oerjan: I have a very vague idea.
12:21:07 <kallisti> basically that it can recurse before terminals... or whatever.
12:21:36 <kallisti> ??/
12:22:37 <kallisti> help there are a lot of topics in CS.
12:23:05 <oerjan> http://en.wikipedia.org/wiki/LR_parser it's not an abbreviation for left recursion
12:23:16 <kallisti> oh okay
12:23:20 <kallisti> well I meant LR as in left recursion
12:24:00 <oerjan> kallisti: well yes you'll have the application chains, but you can use the chainl1 combinator for them
12:24:07 <oerjan> @hoogle chainl1
12:24:07 <lambdabot> Text.ParserCombinators.ReadP chainl1 :: ReadP a -> ReadP (a -> a -> a) -> ReadP a
12:24:08 <lambdabot> Text.Parsec.Combinator chainl1 :: Stream s m t => ParsecT s u m a -> ParsecT s u m (a -> a -> a) -> ParsecT s u m a
12:24:08 <lambdabot> Text.ParserCombinators.Parsec.Combinator chainl1 :: Stream s m t => ParsecT s u m a -> ParsecT s u m (a -> a -> a) -> ParsecT s u m a
12:24:24 <kallisti> cool
12:24:51 <kallisti> oerjan: I've seen elliott use LR to mean left recursion therefore it is totally legit. :P
12:25:15 <oerjan> RIGHT...
12:25:18 <kallisti> ..
12:25:26 <kallisti> that
12:25:29 <kallisti> is so bad.
12:25:45 <kallisti> it brings tears of joy and pain to my eyes.
12:25:52 <oerjan> er was i punning, i didn't notice
12:26:14 * oerjan unconscious pun
12:26:14 <kallisti> yes you recursed right into punning.
12:26:43 <oerjan> well as long as it wasn't a freudian penis.
12:26:55 <kallisti> was that a pun too? I'm so confused.
12:27:02 -!- Vorpal has joined.
12:27:12 <oerjan> i think that may be a matter of definition
12:27:24 <kallisti> oh I see.
12:27:35 <kallisti> you freudian slipped in the word "freudian slip", right?
12:27:38 <kallisti> *phrase
12:27:45 <kallisti> HSSAHAHAHA HAA
12:28:05 <oerjan> i have no idea what you are fucking about.
12:28:17 <kallisti> me neither.
12:29:04 <Phantom_Hoover> Poking at the old freudian slits, are we?
12:31:02 <kallisti> Not I. I have good oral standing.
12:32:52 -!- monqy has quit (Quit: hello).
12:33:45 -!- olsner has quit (Ping timeout: 255 seconds).
12:34:05 * kallisti considers also supporting De Bruijn notation.
12:37:09 <Sgeo_> o.O something that ehird didn't know
12:37:21 <kallisti> what?
12:37:25 <Sgeo_> (existence of online parsers in Haskell)
12:37:25 <kallisti> unpossible.
12:37:36 <Sgeo_> http://www.reddit.com/r/haskell/comments/nsarm/conduits_part_3_sinks/c3bm3ab
12:38:06 <kallisti> proof that elliott isn't omniscient.
12:38:14 <kallisti> (or that he's tricking us into thinking he is mortal)
12:38:17 * Sgeo_ sees the UU thing every time he looks at the list of Hackage packages
12:38:49 <Sgeo_> Because someone decided it's so great, it doesn't fit in any categories, or something
12:39:15 <kallisti> oerjan: I considering using GADTs for the expression tree but I don't think I'll get much benefit from it.
12:40:04 <kallisti> basically it prevents the first field of an abstraction term from being anything other than a variable term.
12:40:07 <kallisti> but that's it.
12:40:41 <kallisti> that could be fixed by... not using variable terms in the first field of abstraction terms.
12:40:57 <kallisti> and just using strings or whatever
12:44:32 <oerjan> you _could_ just use another data or newtype definition for variables
12:45:34 <kallisti> noep
12:45:36 <kallisti> this works fine.
12:46:03 <oerjan> BUT IT IS NOT COMPLETELY TYPE-SAFE
12:46:07 <kallisti> though later I might add a String field to Bound so that I can write better output
12:46:10 <kallisti> oerjan: it is now
12:46:24 <kallisti> I switched LCAbs LCExpr LCExpr to LCAbs String LCExpr
12:46:59 <oerjan> ooh
12:48:21 -!- cheater has joined.
12:54:12 -!- oerjan has quit (Quit: Later).
12:54:40 -!- cheater has quit (Read error: Connection reset by peer).
12:58:21 <Phantom_Hoover> "You could argue that Donald Knuth is a mathematician." — someone in /r/math.
12:58:40 <Ngevd> Who was Knuth again?
13:04:51 <itidus21> lol
13:05:20 <itidus21> knuth wrote the art of computer programming and invented some kind of up arrow notation
13:05:28 <itidus21> i dunno what else
13:05:32 <itidus21> also tex
13:05:38 <itidus21> latex
13:06:30 -!- Phantom__Hoover has joined.
13:07:56 <Sgeo_> Will elliott start yelling at me if I start writing code with conduits?
13:08:34 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds).
13:08:36 <itidus21> wiki says he is a mathematician, computer scientist, programming language designer, typographer, donald knuth, writer, pioneer, academic and combinatorialist
13:09:07 <Phantom__Hoover> Anyone arguing that he's not a mathematician is an idiot.
13:09:17 <Phantom__Hoover> What he does is unquestionably mathematics.
13:09:21 <itidus21> donald knuth is in the category donald knuth
13:09:29 <itidus21> @_@
13:09:31 <Ngevd> Wow, he is!
13:09:35 <Phantom__Hoover> He is the Platonic essense of Donald Knuth.
13:09:42 <Phantom__Hoover> *essence
13:12:24 <Ngevd> Samoa, always on the winners' side of the international date line
13:12:55 <Phantom__Hoover> Isn't there only one side of the international dateline?
13:12:59 <Phantom__Hoover> *date line
13:13:55 <Ngevd> Not if you treat the world as two roughly hemispherical bodies, connected at the Greenwich median and the international date line
13:14:41 <Phantom__Hoover> Ah, but then you're defining which side of the international date line you're on based on a second line.
13:15:28 <Ngevd> Yes, which, when taken with the mean international date line, forms a great circle
13:15:33 <Ngevd> s/median/meridian/
13:19:14 -!- sebbu has quit (Ping timeout: 240 seconds).
13:23:42 -!- Phantom__Hoover has quit (Remote host closed the connection).
13:23:54 -!- hagb4rd2 has quit (Ping timeout: 240 seconds).
13:24:16 -!- Phantom_Hoover has joined.
13:31:09 -!- derdon has joined.
13:34:10 -!- sebbu has joined.
14:10:34 -!- Ngevd has quit (Ping timeout: 248 seconds).
14:23:23 -!- Ngevd has joined.
14:23:56 -!- Ngevd has quit (Client Quit).
14:32:21 -!- Patashu has quit (Ping timeout: 252 seconds).
15:09:41 -!- Ngevd has joined.
15:10:13 <Ngevd> Well, my "annoying elliott" version of my genealogy program is off to a... start
15:12:53 <Ngevd> Also, hello!
15:13:06 -!- NihilistDandy has quit (Quit: Linkinus - http://linkinus.com).
15:15:06 -!- elliott has joined.
15:20:26 <elliott> helo
15:20:41 <Ngevd> Hello
15:21:32 <Ngevd> For the record, I meant version for the purpose of annoying elliott, not version which is for elliott who is annoyin
15:21:33 <Ngevd> g
15:26:58 <elliott> 09:48:49: <kallisti> I used to make arrow instances, then I took an arrow to the knee.
15:27:01 <elliott> kallisti: cease breathing
15:28:53 <elliott> 10:22:45: <Sgeo_> Is there a better way to do it without list comprehensions?
15:29:08 <elliott> Sgeo_: concatMap (maybe mzero pure) :p
15:29:28 <elliott> 10:28:08: <monqy> :t concatMap maybeToList
15:29:29 <elliott> 10:28:08: <lambdabot> forall b. [Maybe b] -> [b]
15:29:29 <elliott> also that
15:29:37 <elliott> those are what the list comprehension reduces to
15:29:59 <elliott> 09:55:44: <kallisti> oerjan: hi http://sprunge.us/FgOU
15:30:14 <elliott> @ask kallisti why TF are you doing substitution. half the point of de bruijn is that you can just carry an argument stack
15:30:14 <lambdabot> Consider it noted.
15:33:07 <Sgeo_> @src concatMaybe
15:33:08 <lambdabot> Source not found. My pet ferret can type better than you!
15:33:09 <Sgeo_> @src concatMaybes
15:33:09 <lambdabot> Source not found. Have you considered trying to match wits with a rutabaga?
15:33:15 <Sgeo_> @src catMaybes
15:33:16 <lambdabot> catMaybes ls = [x | Just x <- ls]
15:33:32 <Sgeo_> @undo (\ls -> [x | Just x <- ls]
15:33:32 <lambdabot> Unbalanced parentheses
15:33:35 <Sgeo_> @undo (\ls -> [x | Just x <- ls])
15:33:35 <lambdabot> (\ ls -> concatMap (\ a -> case a of { Just x -> [x]; _ -> []}) ls)
15:43:22 <elliott> 12:00:02: <Sgeo_> If I take what he said literally, he's wrong
15:43:23 <elliott> 12:00:11: <Sgeo_> "00:00:56: <elliott> Sgeo: For one apparently you have to be in IO and use mutable variables to maintain any kind of internal state but it's ok because you're going to be in IO all the time anyway!
15:43:23 <elliott> 12:00:11: <Sgeo_> "
15:43:23 <elliott> 12:00:17: <Sgeo_> conduits work with ST
15:43:39 <elliott> Sgeo_: yes, because storing all state in STRefs is so much better. all my haskell programs live in ST and use STRefs as locals.
15:43:53 <elliott> oh, and of course you can't use the ST stuff with any stream from the real world ever
15:45:49 <elliott> 12:24:51: <kallisti> oerjan: I've seen elliott use LR to mean left recursion therefore it is totally legit. :P
15:45:52 <elliott> while hallucinating perhaps
15:52:44 -!- MSleep has changed nick to MDude.
15:57:11 <kallisti> http://i.imgur.com/Ayb5T.jpg
15:57:12 <lambdabot> kallisti: You have 2 new messages. '/msg lambdabot @messages' to read them.
15:57:17 <kallisti> at first I thought it was urine
15:57:19 <kallisti> but then
15:57:25 <kallisti> I realized it was far worse.
16:12:17 <elliott> Holy shit, this feature request is the most mammoth thing ever.
16:12:31 <Ngevd> For what is the feature request for?
16:12:38 <elliott> You know it's bad when you end up with bulleted lists and subheadings.
16:12:42 <elliott> Ngevd: https://github.com/HeinrichApfelmus/reactive-banana/issues/22
16:14:15 -!- derdon has quit (Remote host closed the connection).
16:34:30 <kallisti> elliott: ar...ar...argument stack?
16:35:16 <kallisti> I think that might break my do-one-beta-reduction-at-a-time-with-no-state-inbetween model, unless I wrap the DBForm type into a type with an added stack.
16:36:14 <Ngevd> elliott, that's quite some feature request, reply, and reply to the reply
16:37:33 <elliott> kallisti: The term you're looking for is small-step.
16:39:37 <kallisti> ah.
16:40:09 <Ngevd> Wikipedia: '"Pimply-faced youth" redirects here. For youths who have pimples, see Puberty.'
16:41:06 <kallisti> anyway the main purpose of this, if there even was one, was to show successive beta reductions. I'm guessing this is still possible with an argument stack but I haven't really thought much on how it would work.
16:41:22 <kallisti> because, I'm mid-going-back-to-sleep
17:01:26 <quintopia> i've discovered how to make the world a friendlier place
17:01:50 <quintopia> any time one would use the word "fuck", one uses "hug" instead
17:01:50 <Ngevd> Kill people?
17:02:00 <Ngevd> That's a hugging awful idea.
17:02:01 <Ngevd> Hug, man
17:02:13 <elliott> go hug yourself
17:02:17 <quintopia> it's hugging great
17:03:05 <quintopia> elliott: you can just hug off, you bastard
17:03:52 <Ngevd> quintopia, I think if this idea is put into practice it would just bring down the word "hug"
17:04:11 <quintopia> that would be gay
17:05:26 <augur> no no having sex with people of the same gender would be gay
17:06:09 <Ngevd> with /only/ people of the same gender
17:06:25 <quintopia> once upon a time, so would be decking the halls and making the yuletide merry
17:06:26 <elliott> ngevd doesn't huga nyone
17:06:30 <elliott> *anyone
17:06:30 <quintopia> but not anymore
17:09:26 -!- augur has quit (Remote host closed the connection).
17:24:19 <Phantom_Hoover> hug
17:26:37 <elliott> You can't say hug in #jesus.
17:27:02 <Ngevd> How about #god?
17:28:47 <elliott> more like #dog!!!
17:28:50 <kallisti> :)
17:28:52 <kallisti> ::P
17:28:55 <kallisti> ::::)
17:28:59 <kallisti> :>:+
17:29:53 -!- bitc has joined.
17:31:49 <elliott> `welcome bitc
17:31:52 <HackEgo> bitc: 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
17:31:58 * elliott wonders if bitc is using an IRC client written in Bit-C.
17:32:52 <bitc> nope :)
17:37:27 <elliott> lame!
17:37:44 <Ngevd> So, what brings you to this neck of the web, bic?
17:37:46 <Ngevd> *bitc
17:37:50 <elliott> In the future we'll buy software written in Bit-C with bitcoins and then proceed to bitch about it.
17:38:02 <elliott> Also every word will inexplicably start with bitc.
17:38:55 <Ngevd> bitchug, that would be crazy!
17:39:40 <bitc> i am looking for the language with no predefined tokens at all.
17:39:43 <kallisti> Let's take a little break from math now and examine the Von Neumann construct from a philosophical/metaphysical perspective. The Von Neumann construction is amazing in the sense that it requires only 3 elements: {"0","{","}"}. 0 is ultimately connected with emptiness and nothingness, a very basic characteristic of the universe. The two other symbols, "{" and "}" are ultimately connected with the properties of consciousness,
17:39:49 <kallisti> loooooooool
17:40:10 <itidus21> i tried to make 0xHAM work but i couldn't
17:40:17 <kallisti> In a sense the first step of creation is consciousness "recognizing" the vast emptiness of space. As soon as this happens, the emptiness "separates" into "something" (that which has perceived the emptiness) and the emptiness itself. As soon as we have two things, a boundary is created: The 3rd element. The sequence thus is:
17:40:23 <kallisti> this is great.
17:40:39 <kallisti> (from: http://ioannis.virtualcomposer2000.com/math/Naturals.html)
17:41:23 <Ngevd> bitc, remind me, what is a predefined token?
17:41:29 <Ngevd> I'm not good at these words
17:41:41 <itidus21> sounds like chinese philosophy
17:41:59 <Ngevd> itidus21, you're on the wrong #esoteric
17:42:21 <itidus21> or am i
17:42:25 <itidus21> dun dun dunnnn
17:43:23 <itidus21> so i click the link and see a yin yang...
17:43:31 <itidus21> why am i not surpised
17:43:52 <bitc> Ngevd, that is a keyword or any fixed sequence of bits with meaning associated with them before beginning to write the program. for example the = sign (which makes us all think of the same thing), the while keyword or any \" signed string literal..
17:44:05 <Ngevd> Ah, one of those
17:44:07 <itidus21> note 7: Tao Te Ching: (tr. Mair 1990:9): "The Way (nothingness) gave birth to unity (God), Unity gave birth to duality (Firstborn), Duality gave birth to trinity, Trinity gave birth to the myriad creatures.".
17:44:31 <Ngevd> bitc, Unnecassary?
17:44:33 <itidus21> and note 9: Tao Te Ching, Chapter 42: "Tao begets one; one begets two; two begets three; three begets all things.".
17:45:06 <bitc> Ngevd, i think so
17:48:05 <elliott> bitc: Well, if you don't want semantics, you'll have a hard time finding a language :)
17:48:23 <elliott> However, Feather is like that.
17:48:34 <elliott> (And for once I'm not joking when I say that...)
17:48:48 <Ngevd> You'll have a hard time finding Feather
17:49:12 <itidus21> Ngevd: i guess you're right.. wrong esoteric
17:49:16 <bitc> Ngevd, gotta go building the time machine..
17:49:54 <elliott> bitc: Forth may interest you, though.
17:50:28 <elliott> In that Forth's initial semantics are very trivial, and language constructs are implemented by completely taking over the parser.
17:51:41 <Ngevd> I can never remember if Forth is an actual esoteric language
17:52:01 <kallisti> > map (x -> read (replicate x "1") ^ 2) [1..]
17:52:02 <lambdabot> Pattern syntax in expression context:
17:52:02 <lambdabot> x -> read (replicate x "1") ^ 2
17:52:07 <kallisti> > map (\x -> read (replicate x "1") ^ 2) [1..]
17:52:07 <lambdabot> Couldn't match expected type `GHC.Types.Char'
17:52:08 <lambdabot> against inferred type...
17:52:22 <kallisti> oh
17:52:30 <kallisti> > map (\x -> read (replicate x '1') ^ 2) [1..]
17:52:31 <lambdabot> [1,121,12321,1234321,123454321,12345654321,1234567654321,123456787654321,12...
17:53:43 <kallisti> > inits [1,2,3]
17:53:44 <lambdabot> [[],[1],[1,2],[1,2,3]]
17:54:30 <Ngevd> > read (replicate 11 '1') ^ 2
17:54:31 <lambdabot> 123456790120987654321
17:55:03 <kallisti> heh, nice.
17:55:09 <kallisti> it starts over in the middle.
17:55:51 <Ngevd> > read (replicate 10 '1') ^ 2
17:55:52 <lambdabot> 1234567900987654321
17:56:04 <Ngevd> Just as I thought... the 10 carrie
17:56:05 <Ngevd> s
17:56:54 <kallisti> @hoogle Int -> Char
17:56:54 <lambdabot> Data.Char chr :: Int -> Char
17:56:55 <lambdabot> Data.Char intToDigit :: Int -> Char
17:56:55 <lambdabot> Data.Text index :: Text -> Int -> Char
17:57:23 <Ngevd> > intToDigit 11
17:57:24 <lambdabot> 'b'
17:57:29 <Ngevd> > intToDigit 17
17:57:30 <lambdabot> *Exception: Char.intToDigit: not a digit 17
17:57:33 <Ngevd> > intToDigit 16
17:57:34 <lambdabot> *Exception: Char.intToDigit: not a digit 16
17:57:36 <Ngevd> > intToDigit 15
17:57:37 <lambdabot> 'f'
17:58:19 <kallisti> > map (\x (read $ map intToDigit [1..x]) * 9 + x + 1 -> ) [1..]
17:58:20 <lambdabot> <no location info>: Parse error in pattern
17:58:26 <kallisti> > map (\x -> (read $ map intToDigit [1..x]) * 9 + x + 1 -> ) [1..]
17:58:27 <lambdabot> <no location info>: parse error on input `)'
17:58:33 <kallisti> > map (\x -> (read $ map intToDigit [1..x]) * 9 + x + 1) [1..]
17:58:34 <lambdabot> [11,111,1111,11111,111111,1111111,11111111,111111111,1111111111,*Exception:...
17:59:10 <kallisti> > map (\x -> (read $ map intToDigit [0..x]) * 9 + x + 1) [0..]
17:59:11 <lambdabot> [1,11,111,1111,11111,111111,1111111,11111111,111111111,1111111111,*Exceptio...
17:59:54 <Ngevd> With coin flips, I generally say "edge", as I normally don't care about the outcome, and if it lands edge it'd be awesome
18:00:57 <kallisti> > map (\x -> (read . take x $ cycle ['0'..'9']) * 9 + x) [1..]
18:00:59 <lambdabot> [1,11,111,1111,11111,111111,1111111,11111111,111111111,1111111111,111111110...
18:01:14 <kallisti> hmmm I'm not sure how to repeat the pattern
18:02:10 <kallisti> > map (\x -> (read . take x $ cycle (['0'..'9']++['9'..'0']) * 9 + x) [1..]
18:02:11 <lambdabot> <no location info>: parse error (possibly incorrect indentation)
18:02:16 <kallisti> > map (\x -> (read . take x $ cycle (['0'..'9']++['9'..'0'])) * 9 + x) [1..]
18:02:18 <lambdabot> [1,11,111,1111,11111,111111,1111111,11111111,111111111,1111111111,111111110...
18:02:55 <kallisti> > map (\x -> (read . take x $ cycle (['0'..'9']++"0")) * 9 + x) [1..]
18:02:56 <lambdabot> [1,11,111,1111,11111,111111,1111111,11111111,111111111,1111111111,111111110...
18:02:59 <kallisti> hm, no.
18:03:35 <kallisti> maybe you can't?
18:03:42 <kallisti> not with this method.
18:04:53 <kallisti> > 1234567890 * 9
18:04:54 <lambdabot> 11111111010
18:05:00 <kallisti> > 1234567890 * 9 + 11
18:05:00 <lambdabot> 11111111021
18:05:07 <kallisti> > 12345678910 * 9 + 11
18:05:08 <lambdabot> 111111110201
18:05:09 <kallisti> lol
18:05:16 <kallisti> > 1234567891 * 9 + 11
18:05:17 <lambdabot> 11111111030
18:05:28 <Ngevd> > 123456789- * 9 + 101
18:05:30 <lambdabot> <no location info>: parse error on input `*'
18:05:35 <Ngevd> > 1234567890 * 9 + 101
18:05:36 <lambdabot> 11111111111
18:05:42 <kallisti> oh hm
18:06:42 <kallisti> so I'm just missing part of the formula
18:08:58 <kallisti> > 11111111111 - (101-11)
18:08:59 <lambdabot> 11111111021
18:09:29 <kallisti> > 11111111111 - 101
18:09:30 <lambdabot> 11111111010
18:09:38 <kallisti> > (11111111111 - 101) / 9
18:09:39 <lambdabot> 1.23456789e9
18:09:56 <kallisti> ...yes, indeed
18:10:08 <kallisti> > (11111111111 - (101-11)) / 9
18:10:09 <lambdabot> 1.2345678912222223e9
18:10:17 <Ngevd> > let f 1 = 1; f n = 10 * (f (n - 1)) + 1 in map f [1..]
18:10:18 <lambdabot> [1,11,111,1111,11111,111111,1111111,11111111,111111111,1111111111,111111111...
18:10:36 <kallisti> I..
18:10:40 <kallisti> cheater.
18:10:58 <Ngevd> I was never told the rules
18:11:05 <kallisti> I don't even know the rules
18:11:11 <kallisti> the rules were to continue the above pattern.
18:11:14 <kallisti> I guess.
18:11:32 <kallisti> 1 * 9 + 2 = 11
18:11:33 <Ngevd> > let f 1 = 1; f n = 10 * (f (n - 1)) + 1 in map ((^2) . f) [1..]
18:11:35 <lambdabot> [1,121,12321,1234321,123454321,12345654321,1234567654321,123456787654321,12...
18:11:38 <kallisti> 12 * 9 + 3 = 111
18:11:46 <kallisti> 123 * 9 + 4 = 1111
18:11:48 <kallisti> etc
18:12:04 <kallisti> oh duh
18:12:07 <Ngevd> > 123456789 * 9 + 9
18:12:09 <lambdabot> 1111111110
18:12:13 <Ngevd> > 123456789 * 9 + 10
18:12:14 <lambdabot> 1111111111
18:12:28 <kallisti> 123456789 * 10 + 10
18:12:28 <Ngevd> > 1234567990 * 9 + 11
18:12:30 <lambdabot> 11111111921
18:12:42 <kallisti> > 123456789 * 10 + 10
18:12:43 <lambdabot> 1234567900
18:12:45 <Ngevd> > 12345678900 * 9 + 11
18:12:46 <lambdabot> 111111110111
18:12:54 <Ngevd> > 1234567900 * 9 + 11
18:12:55 <lambdabot> 11111111111
18:13:17 <Ngevd> > 12345679011 * 9 + 12
18:13:18 <lambdabot> 111111111111
18:13:29 <Ngevd> > 123456790123 * 9 + 13
18:13:30 <lambdabot> 1111111111120
18:13:47 <Ngevd> > 123456790122 * 9 + 12
18:13:48 <lambdabot> 1111111111110
18:13:51 <Ngevd> > 123456790122 * 9 + 13
18:13:53 <lambdabot> 1111111111111
18:14:04 <Ngevd> > 1234567901233 * 9 + 14
18:14:05 <lambdabot> 11111111111111
18:14:10 <kallisti> hm, okay.
18:14:10 <Ngevd> > 12345679012344 * 9 + 15
18:14:11 <lambdabot> 111111111111111
18:14:17 <Ngevd> > 123456790123455 * 9 + 16
18:14:18 <lambdabot> 1111111111111111
18:14:39 <kallisti> I don't feel like coding that. :P
18:14:43 <Ngevd> I do
18:15:00 <kallisti> > 1234567890123456789000 * 9
18:15:01 <lambdabot> 11111111011111111101000
18:15:45 <kallisti> > 123456789012345678900 * 9 + 19
18:15:46 <lambdabot> 1111111101111111110119
18:15:48 <kallisti> > 123456789012345678900 * 9
18:15:49 <lambdabot> 1111111101111111110100
18:15:52 <kallisti> hm
18:16:10 <kallisti> > 1234567890123455 * 9 + 16
18:16:11 <lambdabot> 11111111011111111
18:16:36 <kallisti> uh what am I doing wrong.
18:16:45 <fizzie> The 8.
18:16:48 <kallisti> oh.
18:17:00 <kallisti> the 8 decides to disappear for some reason
18:17:04 <kallisti> I NO LONGER LIKE THIS DIGIT SEQUENCE
18:17:52 <Ngevd> > let f 0 = 1; f n = 10 * (f (n - 1)) + n in map f [0..]
18:17:53 <lambdabot> [1,11,112,1123,11234,112345,1123456,11234567,112345678,1123456789,112345679...
18:18:07 <Ngevd> > 12 * 9 + 3
18:18:09 <lambdabot> 111
18:18:17 <Ngevd> > let f 1 = 1; f n = 10 * (f (n - 1)) + n in map f [1..]
18:18:18 <lambdabot> [1,12,123,1234,12345,123456,1234567,12345678,123456789,1234567900,123456790...
18:18:41 <kallisti> Ngevd: working with the base directly, must be nice.
18:18:43 <kallisti> (cheater)
18:19:52 <kallisti> > 123456789 * 8 + 9
18:19:53 <lambdabot> 987654321
18:20:54 <kallisti> ah, I see why the 8 disappears now.
18:21:53 <kallisti> > 1234567900 * 8 + 9
18:21:54 <lambdabot> 9876543209
18:22:10 <kallisti> > 1234567890 * 8 + 9
18:22:11 <lambdabot> 9876543129
18:22:13 <Ngevd> > let f n = read (replicate n '1') - n `div` 9 in map f [1..]
18:22:14 <lambdabot> [1,11,111,1111,11111,111111,1111111,11111111,111111110,1111111110,111111111...
18:22:35 <Ngevd> > let f n = read (replicate n '1') - n + 1 `div` 9 in map f [1..]
18:22:37 <lambdabot> [0,9,108,1107,11106,111105,1111104,11111103,111111102,1111111101,1111111110...
18:22:56 <Ngevd> > let f n = (read (replicate n '1') - n) `div` 9 in map f [1..]
18:22:57 <lambdabot> [0,1,12,123,1234,12345,123456,1234567,12345678,123456789,1234567900,1234567...
18:23:55 <kallisti> I like the palindrome one.
18:24:42 <kallisti> > (^2) . read . flip replicate '1' <$> [1..]
18:24:44 <lambdabot> [1,121,12321,1234321,123454321,12345654321,1234567654321,123456787654321,12...
18:25:29 <Ngevd> > (^2) . read . flip replicate '1' <$> [12]
18:25:31 <lambdabot> [12345679012320987654321]
18:25:51 <kallisti> and once again the 8 disappears
18:25:52 <kallisti> damn you base 10
18:28:13 -!- oerjan has joined.
18:28:50 <kallisti> oerjan: hi
18:28:52 <kallisti> > (^2) . read . flip replicate '1' <$> [1..]
18:28:54 <lambdabot> [1,121,12321,1234321,123454321,12345654321,1234567654321,123456787654321,12...
18:28:56 <kallisti> how do you fix this so that
18:29:01 <kallisti> it continues being awesome
18:29:07 <kallisti> > (^2) . read . flip replicate '1' <$> [10..]
18:29:09 <lambdabot> [1234567900987654321,123456790120987654321,12345679012320987654321,12345679...
18:29:12 <kallisti> :(
18:29:38 <Phantom_Hoover> "It should be done away with in my opinion. Do you realize how many foreigners with immunity get away with terrible crimes such as murder? It is appalling. You can bet if an american commited a crime on foreign soil they would be punished. America is just too soft on criminals domestic or otherwise."
18:29:54 <Phantom_Hoover> The thing this person is shooting their mouth off about is /diplomatic immunity/.
18:30:27 <elliott> Phantom_Hoover: X-D
18:30:35 <elliott> The famous policy where we invite diplomats over for killing sprees.
18:31:03 <Phantom_Hoover> The famous policy where we consider any foreigner a diplomat and are surprised when noöne else does this.
18:31:06 <elliott> "The car on the right is double parked. Since it has Diplomatic License Plates, the driver would not be obliged to pay any citation issued." --[[Diplomatic immunity]]
18:31:16 <elliott> I want one of those license plates.
18:31:28 <Phantom_Hoover> Cracked has an article on this.
18:31:31 <elliott> "Illustrating how widespread this problem is that in France, between November 2003 and 2004, there were 2,590 cases of diplomatic cars caught speeding by automatic radars. The Autobahn 555 in Cologne, Germany was nicknamed the "Diplomatenrennbahn" (Diplomatic Raceway), back when Bonn was the capital of West Germany, because of the numerous diplomats that used to speed through the highway under diplomatic immunity."
18:31:32 <elliott> holy shit
18:31:35 <elliott> this is amazing?
18:31:44 <Phantom_Hoover> "Take the Libyan embassy worker in London who, in April 1984, decided to open fire at a mob of anti-Gadhafi protesters outside his embassy, fatally wounding a police officer and injuring 10 others. The police laid siege to the embassy for 11 days, at which point the government stepped in, allowed the ambassador and his staff to leave the premises -- and promptly kicked them out of the country, with a nice long fuck you t
18:31:44 <Phantom_Hoover> o take back to Gadhafi. The countries' diplomatic relations were torn apart, but no one was ever convicted of the shootings."
18:32:00 <elliott> ...wow.
18:32:16 <Phantom_Hoover> I note that this was not a case of getting away with it due to diplomatic immunity; instead, it's just a "normal criminal proceedings weren't followed".
18:34:33 <oerjan> <elliott> The famous policy where we invite diplomats over for killing sprees. <-- i hear vlad tepes had a penchant for this.
18:34:51 <Phantom_Hoover> http://en.wikipedia.org/wiki/Vlad_tepes
18:34:59 <Phantom_Hoover> OMG I did not realise he looked like that.
18:39:34 <oerjan> <Ngevd> Not if you treat the world as two roughly hemispherical bodies, connected at the Greenwich median and the international date line
18:39:50 <oerjan> suggestion: get great britain to move across the international date line
18:41:22 <oerjan> <Ngevd> For the record, I meant version for the purpose of annoying elliott, not version which is for elliott who is annoyin <-- yeah those are easy to confuse
18:41:51 <Ngevd> I am in the Western hemisphere, so I'd end up a day ahead
18:41:58 <oerjan> 15:26:58: <elliott> 09:48:49: <kallisti> I used to make arrow instances, then I took an arrow to the knee.
18:42:01 <oerjan> 15:27:01: <elliott> kallisti: cease breathing
18:42:16 <Ngevd> I used to breath, but then I took an arrow to the lung
18:42:31 <oerjan> i feel so left out, i only get to know this meme _after_ everyone is fed up with it.
18:42:37 <elliott> :D
18:43:02 <oerjan> elliott: hey are you laughing at me or Ngevd, this is important
18:43:18 <oerjan> also *breathe
18:43:26 <Ngevd> Bah
18:43:49 <elliott> oerjan: you
18:43:53 <oerjan> yay
18:43:55 <elliott> ngevd am dum
18:44:00 * oerjan does a little victory dance
18:44:45 <oerjan> admittedly it _is_ possible everyone was fed up with this meme from its birth
18:44:57 <oerjan> well fsvo everyone
18:45:47 <oerjan> i used to be good at haskell, but then i took an arrow to m'nads
18:46:11 * elliott has set mode +o elliott
18:46:16 * elliott has set mode +b oerjan*!*@*
18:46:24 * elliott has kicked oerjan (I hate you and everything you stand for.)
18:46:47 <oerjan> why thank you, i'll be here all week except when my router croaks
18:47:35 <elliott> It's like that wossname in h2g2 where the wossname body part killed the wossname poet. Phantom_Hoover will remember.
18:47:56 <kallisti> http://en.wikipedia.org/wiki/File:Accidents.png
18:48:15 <oerjan> ah yes the second worst poet in the universe
18:49:51 <elliott> > (maxBound - minBound)
18:49:52 <lambdabot> Ambiguous type variable `a' in the constraints:
18:49:53 <lambdabot> `GHC.Num.Num a'
18:49:53 <lambdabot> ari...
18:50:05 <elliott> > (maxBound - minBound) :: Int
18:50:06 <lambdabot> -1
18:50:11 <elliott> darn.
18:50:13 <elliott> er wait
18:50:15 <elliott> > (maxBound - minBound) :: Word
18:50:16 <lambdabot> 18446744073709551615
18:50:21 <elliott> > maxBound :: Word
18:50:22 <lambdabot> 18446744073709551615
18:50:31 <elliott> right, ofc
18:50:32 <kallisti> elliott: I only used it because I felt the punniness warranted it.
18:50:33 <elliott> bu t hmm
18:50:37 <elliott> > (maxBound - minBound) :: Int8
18:50:37 <lambdabot> -1
18:50:39 <elliott> > minBound :: Int8
18:50:40 <lambdabot> -128
18:50:41 <elliott> > maxBound :: Int8
18:50:42 <lambdabot> 127
18:51:00 <elliott> > 127 - (-128)
18:51:01 <lambdabot> 255
18:51:13 <elliott> right.
18:51:27 <kallisti> and here elliott learns about one's complement.
18:51:30 * kallisti ahems.
18:52:17 <oerjan> O_o
18:53:43 <oerjan> *chirp*
18:53:53 <kallisti> lol
18:54:19 <oerjan> kallisti: you might want to check your terminology.
18:54:26 <Ngevd> Could someone explain Monads?
18:54:33 <kallisti> oerjan: why?
18:54:34 <oerjan> AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
18:54:36 <Ngevd> I want to learn them next
18:54:53 <oerjan> kallisti: it's not _one's_ complement
18:54:53 <kallisti> Ngevd: m >>= f = join (fmap f m)
18:54:54 <fizzie> kallisti: Now you broke him.
18:55:01 <kallisti> there that's monads.
18:55:16 <Ngevd> oerjan> AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
18:55:53 <oerjan> Ngevd: well monads are a bit like vestlandslefse
18:56:26 <kallisti> oerjan: well yes, it's not. I guess two's complement would have made more sense, but I was implying that one's complement is what elliott seemed to expect.
18:56:36 <kallisti> perhaps I... did that wrong. :P
18:56:56 <kallisti> Ngevd: there, do you get monads now>
18:57:04 <Ngevd> Not... really
18:57:14 <kallisti> good.
18:57:47 <kallisti> another way to think about it would be:
18:57:50 <elliott> > ((-128) + 127) / 2
18:57:51 <lambdabot> -0.5
18:57:55 <kallisti> join m = m >>= id
18:58:12 <kallisti> but that's probably not the direction you want to go.
18:58:16 <kallisti> when starting out.
18:58:25 <elliott> Ngevd: you have learn you a haskell, right?
18:58:26 <oerjan> `? monad
18:58:29 <HackEgo> Monads are just monoids in the category of endofunctors.
18:58:30 <elliott> it explains monads
18:58:43 <elliott> don't try to understand them before reading the previous chapters, it's just a waste of time since your knowledge won't be up to it yet
18:58:48 <elliott> once you do get there they'll be trivial
18:59:05 -!- iconmaster has joined.
18:59:09 <Ngevd> I like the sound of the voice my brain assigns oerjan
18:59:43 <kallisti> Ngevd: think of monads as burritos
18:59:56 <Ngevd> What's a burrito again?
19:00:02 <kallisti> ...wat
19:00:06 <kallisti> do..
19:00:07 <kallisti> are
19:00:25 <kallisti> do british people not have burritos?
19:00:39 <Ngevd> We probably do, but Hexham's pretty damn remote
19:00:51 <Ngevd> The nearest Mexican restaurant is 21 miles away
19:01:22 <oerjan> ok, think of monads as haggis
19:01:33 <Ngevd> I know what haggis is
19:01:37 <kallisti> what
19:01:38 <elliott> trolling people with joke monad explanations is not really helpful if they don't already know what a monad is.
19:01:51 <kallisti> elliott: it's not hurtful either.
19:01:54 <Ngevd> The nearest Scottish restaurant is right here
19:01:56 <elliott> sure it is.
19:01:59 <Ngevd> I'm enjoying this
19:02:00 <kallisti> maybe if they're stupid.
19:02:17 <kallisti> they'll try to apply their logic of burritos to monads.
19:02:18 <kallisti> or something.
19:02:34 <elliott> kallisti: awesome, that gives me one (1) free card to call you stupid the next time you make a mistake
19:02:37 <oerjan> ok, think of monads as haggis in a spacesuit in the middle of the ocean
19:02:41 <elliott> what now oerjan
19:02:49 <kallisti> elliott: do you need anymore of those cards?
19:02:55 <kallisti> I think you have enough.
19:02:56 <elliott> oerjan confiscated them
19:03:10 <kallisti> Ngevd: Hexham isn't... remote
19:03:16 <kallisti> it has a substantial population
19:03:30 <kallisti> even my town has a mexican restaurant. YOUR COUNTRY IS WRONG.
19:03:31 <Ngevd> kallisti, it's remote in terms of Mexican restaurants
19:03:32 <elliott> hexham is in the texan desert
19:03:45 <Ngevd> We have at least two Italian restaurants
19:03:51 <kallisti> we have one I think
19:03:56 <kallisti> and a pizza place, if that counts (it doesn't)
19:03:58 <Ngevd> And a Greek restaurant
19:04:02 <kallisti> nope
19:04:03 <Phantom_Hoover> I agree, Hexham definitely isn't remote.
19:04:04 <Ngevd> And a French restaurant
19:04:06 <kallisti> nope
19:04:17 <kallisti> French people have food? why haven't we Americanized it yet.
19:04:23 <fizzie> I don't think there's a Mexican place in the similarly sized "city" in Finland I know of.
19:04:31 <kallisti> these are sad statements
19:04:32 <kallisti> sad cities.
19:04:54 <kallisti> do Spanish people not eat burritos?
19:04:59 <kallisti> I guess not.
19:05:00 <Phantom_Hoover> <oerjan> ok, think of monads as haggis
19:05:13 <Phantom_Hoover> They're horrible, but everyone pretends to like them to save face?
19:05:51 <kallisti> you guys are so easily traumatized by programming concepts. There's a lot of "horrible" and "bad" things, apparently.
19:06:01 <kallisti> even though... monads aren't really all that horrible?
19:06:05 <Ngevd> http://goo.gl/lMdak
19:06:22 <fizzie> This is their main "restaurant": http://www.tinatahti.fi/index.php?pinc=3 -- yes, it's the "Photos" page, and it's empty.
19:06:29 * oerjan swats Ngevd for using url shorteners -----###
19:06:37 <Ngevd> It's a bloodly long URL!
19:06:40 -!- Ngevd has quit (Quit: dinner).
19:07:14 <kallisti> oerjan: what's wrong with URL shorteners?
19:07:34 <kallisti> @tell Ngevd http://g.co/maps/5h4nd
19:07:38 <oerjan> Phantom_Hoover: precisely!
19:07:59 <kallisti> fizzie: lol
19:08:02 <kallisti> lazy bastards
19:08:03 <oerjan> kallisti: you cannot easily see where they lead
19:08:24 <kallisti> oerjan: sorry next time I'll paste http://maps.google.co.uk/maps?f=q&source=s_q&hl=en&geocode=&q=restaurant+in+hexham&aq=&sll=53.800651,-4.064941&sspn=14.745606,43.286133&vpsrc=0&ie=UTF8&start=0&hq=restaurant&hnear=Hexham,+Northumberland,+United+Kingdom&t=m&z=16
19:08:33 <fizzie> That's like, less than 512 characters.
19:08:36 <fizzie> Not long by any means.
19:08:54 -!- HackEgo has quit (*.net *.split).
19:08:56 <lambdabot> Consider it noted.
19:08:56 -!- bitc has quit (Quit: Page closed).
19:08:57 <elliott> <oerjan> kallisti: you cannot easily see where they lead
19:09:02 <elliott> and they're fragile. although i admit goo.gl will probably not die any time soon
19:09:30 <fizzie> goo.gl follows the "+ convetion" of put-a-+-at-the-end-and-you'll-get-a-page-with-the-expansion, but that's one extra step to take.
19:09:33 -!- TeruFSX_ has quit (Ping timeout: 244 seconds).
19:10:00 <elliott> That's a convention?
19:10:17 <fizzie> Well, I think one of the others did it too.
19:11:10 <fizzie> bit.ly, at least.
19:13:57 <kallisti> fizzie: have you ever ate Mexican food?
19:14:01 <kallisti> is this like
19:14:07 <kallisti> a thing that you do.
19:14:10 <kallisti> sometimes.
19:14:57 <fizzie> Oh, there's quite many Mexican places *here*, just not in the comparable-to-Hexham-maybe-except-in-#esoteric-ness-and-many-other-things-I-guess place.
19:14:58 <elliott> fizzie: More like BIT TOO LIBYAN FOR ME.
19:15:30 <fizzie> They do run j.mp too; though maybe that's BIT TOO NORTHERN MARIANA ISLANDS FOR YOU.
19:15:44 <elliott> Yes, precisely.
19:15:59 <elliott> fizzie: *JUST TOO
19:16:09 <fizzie> Right, I sort of got that too late.
19:16:32 <elliott> We should outlaw URL shorteners.
19:17:16 <kallisti> "comparable-to-Hexham-maybe-except-in-#esoteric-ness-and-many-other-things-I-guess"
19:17:19 <kallisti> ...what?
19:18:03 <fizzie> I just mean it's got about as many people in it, but I don't think there's anyone doing #esoteric from there, while from Hexham we've got, what, hundreds of guys?
19:18:10 <fizzie> And gals.
19:18:23 <fizzie> And I guess it's a bit colder?
19:18:31 -!- xandy| has quit (*.net *.split).
19:18:31 -!- coppro has quit (*.net *.split).
19:18:31 -!- Zwaarddijk has quit (*.net *.split).
19:18:31 -!- ineiros has quit (*.net *.split).
19:18:41 -!- Slereah_ has quit (Read error: Connection reset by peer).
19:18:50 <kallisti> fizzie: what does that have to do with Mexican restaurants and eating at them..
19:19:00 <elliott> kallisti: To quote Italian physicist Noam Chomsky, "damn it feels good to be a gangsta".
19:19:20 <kallisti> elliott: ....
19:19:25 -!- itidus21 has quit (*.net *.split).
19:19:32 -!- Slereah_ has joined.
19:19:38 <kallisti> You forgot the rest of that quote
19:19:58 <kallisti> "A real gangsta-ass nigga plays his cards right"
19:20:58 <fizzie> kallisti: "<fizzie> I don't think there's a Mexican place in the similarly sized "city" in Finland I know of." See, just because they don't have Mexican restaurants doesn't mean what passes for civilization around here wouldn't have them.
19:21:21 -!- Ngevd has joined.
19:21:24 <Ngevd> Hello!
19:21:45 <elliott> fizzie: The interesting thing is that that place is actually Hexham.
19:21:53 <elliott> fizzie: Finland is topologically grafted to the UK.
19:21:58 -!- EgoBot has joined.
19:21:58 -!- HackEgo has joined.
19:21:58 -!- TeruFSX has joined.
19:21:58 -!- xandy| has joined.
19:21:58 -!- coppro has joined.
19:21:58 -!- Zwaarddijk has joined.
19:21:58 -!- ineiros has joined.
19:22:11 <elliott> Whenever anyone ends up in a really cold place, they just assume they've wandered into Scotland.
19:22:14 <elliott> (Ask Phantom_Hoover.)
19:22:19 -!- itidus21 has joined.
19:22:32 <elliott> As Scotland is uninhabitably bitter and ugly, they immediately turn round.
19:23:19 -!- Slereah_ has quit (*.net *.split).
19:23:19 -!- aloril has quit (*.net *.split).
19:23:19 -!- MDude has quit (*.net *.split).
19:23:19 -!- jix has quit (*.net *.split).
19:23:20 -!- Phantom_Hoover has quit (*.net *.split).
19:23:20 -!- mtve has quit (*.net *.split).
19:23:20 -!- lambdabot has quit (*.net *.split).
19:23:20 -!- sebbu has quit (*.net *.split).
19:23:20 -!- copumpkin has quit (*.net *.split).
19:23:20 -!- Madoka-Kaname has quit (*.net *.split).
19:23:20 -!- lifthrasiir has quit (*.net *.split).
19:23:20 -!- yiyus has quit (*.net *.split).
19:23:20 -!- SimonRC_ has quit (*.net *.split).
19:24:07 -!- Slereah_ has joined.
19:24:07 -!- sebbu has joined.
19:24:07 -!- Phantom_Hoover has joined.
19:24:07 -!- copumpkin has joined.
19:24:07 -!- Madoka-Kaname has joined.
19:24:07 -!- mtve has joined.
19:24:07 -!- aloril has joined.
19:24:07 -!- MDude has joined.
19:24:07 -!- jix has joined.
19:24:07 -!- lambdabot has joined.
19:24:07 -!- lifthrasiir has joined.
19:24:07 -!- yiyus has joined.
19:24:07 -!- SimonRC_ has joined.
19:24:31 <Phantom_Hoover> AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
19:24:32 <Phantom_Hoover> AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
19:24:36 * Phantom_Hoover sobs
19:25:14 <fizzie> Apparently it's actually just 0°C in Lieksa right now. But this has been a weird crazy-mild early-winter in Finland so far. Last November was in the top three warmest Novembers in the last 50 years.
19:25:17 <Phantom_Hoover> 19:22:11: <elliott> Whenever anyone ends up in a really cold place, they just assume they've wandered into Scotland.
19:25:34 <Phantom_Hoover> Funny, since it hasn't been particularly cold here for about a year.
19:26:09 <fizzie> And the September-November period was the warmest since 1938.
19:27:01 -!- Slereah_ has quit (Ping timeout: 257 seconds).
19:27:48 <elliott> Phantom_Hoover: he says, from inside his insulated Scottish space suit.
19:27:54 <elliott> (They're made out of cardboard.)
19:28:09 <Ngevd> It's because the annual high pressure front in Siberia which means that the Gulf of Mexico doesn't stop giving the UK heat hasn't developed
19:28:09 <lambdabot> Ngevd: You have 1 new message. '/msg lambdabot @messages' to read it.
19:28:31 -!- iconmaster has quit (Quit: Ayup, this is a quit message.).
19:28:47 -!- Slereah_ has joined.
19:31:11 <fizzie> Normally the place looks like this: http://www.vastavalo.fi/albums/userpics/14685/normal_P1167142.jpg (Okay, not all of it; but the national park there is a popular spot for photos in winter-themed Christmas cards.)
19:32:21 <elliott> That's prettey.
19:32:29 <kallisti> fizzie: hmmm
19:32:35 <kallisti> ...my car windshield gets a little frosty here.
19:32:37 <kallisti> most winters.
19:33:10 <kallisti> sometimes it even snows!
19:33:43 <fizzie> http://en.wikipedia.org/wiki/Koli_National_Park -- I'm actually a bit surprised the Wikipedia article doesn't have a winter picture, I think it's an equally iconic sight.
19:34:03 <kallisti> `frink F[55] -> C
19:34:15 <fizzie> (Who keeps putting all these panoramic pictures in every Wikipedia article of a place ever?)
19:34:15 <HackEgo> 12.77777777777777778
19:34:25 <kallisti> current temp according to google
19:35:20 <Ngevd> `frink C[4] -> F
19:35:31 <HackEgo> 39.2
19:35:38 <Ngevd> ditto
19:38:41 <kallisti> fizzie: stop having a somewhat reasonable highway system.
19:38:55 <kallisti> http://upload.wikimedia.org/wikipedia/commons/1/1f/Map_of_Finland-en.svg
19:39:40 <fizzie> The "1st class roads", at least up north, might not quite be what you'd call "highways".
19:40:21 <fizzie> http://www2.liikennevirasto.fi/alk/kelikamerat/kamera-C1454101.html -- do you call this a highway?
19:41:14 <fizzie> (It's the red-yellow road from Map_of_Finland-en.svg near the "Inari" place up there in the north.)
19:41:16 <kallisti> does anyone actually live in north Norway?
19:42:02 <oerjan> yes, some people do.
19:42:11 <kallisti> fizzie: that's not too different from state highways near rural areas where I live.
19:42:15 <oerjan> (aka "most of my family")
19:42:27 <Ngevd> BUT NOBODY ELSE
19:42:48 <fizzie> http://en.wikipedia.org/wiki/Honningsv%C3%A5g -- 2367 family members of oerjan.
19:42:53 <Vorpal> kallisti, I think Assassin's Creed Revelations get repetitive after a while. It was fun for a few hours once I got the hang of the controls.
19:43:04 <Ngevd> Henxe "Johansenland"
19:43:19 <elliott> I am currently 132.387097 times better than kallisti and 195.428571 times better than Ngevd.
19:43:24 <Vorpal> oerjan, what does "Honningsvåg" mean?
19:43:25 <kallisti> Vorpal: that's a common complaint of the series, actually. Especially with the first game.
19:43:35 <Vorpal> oerjan, something wave or something scale?
19:43:35 <Ngevd> elliott, define "better"
19:43:57 <Vorpal> kallisti, hm
19:44:04 <Ngevd> Because I'm very negative on the megafonzie scale
19:44:11 <oerjan> Vorpal: i dunno, that's etymology
19:44:18 <oerjan> Vorpal: er wait
19:44:33 <kallisti> Vorpal: I always found it fun to play. But I never owned it I just played it occasionally on other people's consoles.
19:44:47 <oerjan> våg means, er, damn what's the english word
19:44:53 <elliott> vagina
19:44:53 <Vorpal> kallisti, it just lack variation. Parkour sure looks amazing but if it is just basically hold right-click w and space and tap shift every now and again...
19:44:54 <elliott> hth
19:45:02 <Vorpal> oerjan, wave? scale?
19:45:05 <kallisti> Vorpal: the second game had quite a bit more variety than the first, I think. I especially enjoyed the "assassin's tombs" which were basically especially difficult platformer-puzzles.
19:45:14 <Vorpal> oerjan, that is what våg means in Swedish
19:45:46 <oerjan> Vorpal: neither, those are bølge and vekt
19:45:51 <Vorpal> ah
19:45:59 <Vorpal> oerjan, so what is weight then?
19:46:06 <oerjan> Vorpal: oh it _can_ mean wave
19:46:10 <Vorpal> heh
19:46:13 <kallisti> Vorpal: I could see the slightly more cumbersome PC controls becoming monotonous.
19:46:15 <oerjan> Vorpal: vekt is
19:46:34 <Vorpal> oerjan, as well as scale?
19:46:41 <fizzie> oerjan: We just recently reserved one of these things ->http://www.rorbuer.no/en <- for three nights near next Easter.
19:46:59 <oerjan> Vorpal: but the relevant meaning for place names is "bay"
19:47:10 <Vorpal> kallisti, not sure I'm such a fan of platformer puzzles. Especially if they are in the dark. I had problems with that thing in a lighthouse in this game due to not being able to see clearly wtf was going on.
19:47:12 <oerjan> so, honey bay
19:47:30 <Vorpal> kallisti, like I couldn't see the dark grey ledge against the dark grey stone
19:47:38 <Vorpal> so I couldn't figure out where to jump
19:47:52 <oerjan> (btw i don't know that any of my family lives as far north as finnmark)
19:47:59 <Vorpal> oerjan, ah
19:48:07 <Vorpal> oerjan, which would be vik in Swedish
19:48:07 <kallisti> Vorpal: in the second game it was somewhat challenging to maintain a steady pass through the city without falling.
19:48:21 <Vorpal> hm
19:48:37 <kallisti> dunno I enjoyed it. But I didn't play it for hours.
19:48:39 <Vorpal> kallisti, also the city control mini game is just boring
19:48:45 <kallisti> no idea what that is.
19:48:47 <Vorpal> but you end up needing that income
19:48:48 <kallisti> must be new.
19:48:59 <Vorpal> kallisti, you never played this incarnation?
19:49:08 <Vorpal> I was under the impression you had
19:49:09 <kallisti> nope
19:49:14 <kallisti> I played the second game
19:49:18 <kallisti> and a little of the first.
19:49:39 <oerjan> Vorpal: yes vik and bukt are other words for it, våg is i think typically northern norwegian
19:49:53 <Vorpal> kallisti, basically you can send assassin's out to other cities around the Mediterranean to level up and gain influence over the city (giving you income from said city)
19:50:14 <oerjan> <Vorpal> oerjan, as well as scale? <-- and yes.
19:50:19 <Vorpal> oerjan, isn't bukt basically a less "sharp" vik?
19:50:40 <Vorpal> in Swedish I think it is
19:51:25 <kallisti> Vorpal: oh hm apparently they changed the combat system quite a bit in the third game.
19:51:28 <Vorpal> oerjan, what is "honning" then? I hope that is the Norwegian word for "honey" because that is what I first thought when I saw it "honey wave" XD
19:51:39 <Vorpal> (it is honung in Swedish)
19:51:56 <Vorpal> kallisti, I see. Can't compare it to previous incarnations
19:52:01 <Vorpal> kallisti, how do they differ?
19:52:38 <kallisti> The combat system has been modified. Striking first and offensive actions are more deadly in Brotherhood than previous games where counter-attacks were the most efficient. Before, this made the player wait until the AI struck, which slowed down the pace of fighting. The AI in this game is thus more aggressive and enemies can attack simultaneously.
19:52:56 <Vorpal> hm
19:52:56 <kallisti> To dispatch them, Ezio can use melee and ranged weapons at the same time, as well as introducing the hidden pistol in combat. After killing one enemy the player can start an execution streak to dispatch multiple enemies quickly.
19:53:17 <Vorpal> yes I noticed those streaks
19:53:26 <Vorpal> however, I can't say I'm good at them
19:53:29 <oerjan> <Vorpal> oerjan, isn't bukt basically a less "sharp" vik? <-- dunno
19:53:35 <Vorpal> never been good at combo-based combat
19:54:31 <oerjan> Vorpal: yes honning means honey although it feels strange for that to be prevalent that far north...
19:54:34 <kallisti> I recently played Batman: Arkham City which is basically all combo based
19:54:38 <kallisti> it's incredibly easy though
19:54:49 * kallisti can get 50x combos consistently
19:54:51 <oerjan> so possibly it's a distortion of something else
19:54:54 <Vorpal> kallisti, anyway there was a level where you had to freerun above water to race a boat below you with templars in it to the end. It was tricky until I figured out I basically had to hold right mouse, space and forward, and tap shift a few time to use the hookblade. Oh and steer a bit with the mouse to change the camera angle
19:55:07 <Vorpal> kallisti, maybe you are just good at that?
19:55:23 <Vorpal> anyway the combo combat made me decide to not play that game
19:55:42 <Vorpal> oerjan, you mean it is too cold for honey up there?
19:55:50 -!- PiRSquared17 has joined.
19:55:57 <oerjan> Vorpal: finnmark is more well-known for mosquitos than bees :P
19:56:00 <Vorpal> heh
19:56:32 <oerjan> and yes, iirc much of finnmark is genuinely arctic climate
19:56:36 <Vorpal> ah
19:56:44 <Vorpal> so where is this, wikipedia has no map
19:56:48 <kallisti> Vorpal: that sounds annoying, I'm bad with PC controls on games like that.
19:57:03 <Vorpal> kallisti, hm?
19:57:07 <Vorpal> kallisti, which part?
19:57:37 <Vorpal> kallisti, anyway I'm bad with gamepads. I used them for a handful of hours in my entire life
19:57:51 <Vorpal> (which is why I'm bad at them probably)
19:57:59 <Vorpal> I can manage an snes pad though XD
19:59:09 <kallisti> Vorpal: it looks to me like Revelations didn't really improve much on the gameplay.
19:59:17 <Phantom_Hoover> Wait, is Finnmark a real place.
19:59:18 <Vorpal> hm
19:59:19 <oerjan> Vorpal: http://maps.google.no/maps?hl=no&safe=off&q=honningsv%C3%A5g&gs_upl=719484l722234l7l723609l11l6l0l2l2l1l656l2219l2-2.3.0.1l8l0&bav=on.2,or.r_gc.r_pw.,cf.osb&biw=1074&bih=624&wrapid=tlif132526983959310&um=1&ie=UTF-8&hq=&hnear=0x45c9a941d0d2fa49:0xbda760a333169846,Honningsv%C3%A5g&gl=no&ei=ihf-Ts3QMM2q-Abyi7HKAQ&sa=X&oi=geocode_result&ct=title&resnum=2&ved=0CD0Q8gEwAQ
19:59:20 <kallisti> whereas AC to AC2 to Brotherhood were all improvements in gameplay.
19:59:27 * oerjan whistles innocently
19:59:33 <Phantom_Hoover> Not just a humorous combination of Finland and Denmark.
19:59:39 <Vorpal> oerjan, "Den här anslutningen är inte tillförlitlig" lol
19:59:47 <oerjan> Vorpal: what?
20:00:11 <Vorpal> oerjan, the certificate is not for google.no according to my browser. Just for google.com, google.co.uk and a shitload of other ones
20:00:13 <Vorpal> XD
20:00:23 <oerjan> Vorpal: i got no complaint
20:00:26 <Vorpal> weird
20:00:28 <kallisti> Vorpal: still AC is an awesome series. The first game was pretty much groundbreaking.
20:00:36 <Vorpal> kallisti, well sure
20:00:43 <Vorpal> kallisti, I'm not saying it wasn't
20:00:47 <oerjan> Vorpal: but then it's not https
20:00:51 <kallisti> Vorpal: YES YOU ARE OBVIOUSLY YOU ARE
20:00:56 <kallisti> :)
20:00:57 <Vorpal> oerjan, wtf why did I get https
20:01:09 <Vorpal> it redirects me to https?
20:01:40 <kallisti> "a number of new features have been attempted to make Revelations feel new and different from its predecessors. In that quest for broader variety and a unique identity from the earlier games, Revelations makes some missteps that are hard to ignore. However, the game offers more of what has been great about the franchise, and that should be enough to bring most fans to the table, even if it a poor starting point for new play
20:01:50 <kallisti> Vorpal: you should probably really play the old games
20:01:54 <Vorpal> oerjan, ah up there
20:02:02 <Vorpal> kallisti, hm
20:02:16 <kallisti> Vorpal: though playing Revelations may have spoiled you already. :P
20:02:18 <oerjan> <Phantom_Hoover> Wait, is Finnmark a real place. <-- yes it's norway's northernmost mainland county
20:02:24 <Vorpal> kallisti, possibly
20:02:24 <Phantom_Hoover> O.o
20:02:33 <Vorpal> Phantom_Hoover, why are you surprised?
20:02:38 <Vorpal> is the word odd to you?
20:02:38 <elliott> Phantom_Hoover: I was surprised too.
20:02:51 <oerjan> Phantom_Hoover: the morphemes are the same as in finland and denmark, i think
20:02:53 <Phantom_Hoover> Because if I was going to make up a fake Scandinavian country, it would probably be called Finnmark.
20:02:58 <PiRSquared17> Finnmark ... ?
20:03:14 <Phantom_Hoover> PiRSquared17, the bastard child of Finland and Denmark.
20:03:17 <Phantom_Hoover> It's in Norway.
20:03:18 <Vorpal> heh
20:03:42 <fizzie> Sort of the wrong direction, considering Denmark.
20:03:55 <Vorpal> Phantom_Hoover, what about Lappland? That is a Swedish county. (fizzie: I believe it is a Finnish county too?)
20:04:01 <PiRSquared17> lol
20:04:15 <kallisti> Vorpal: I'd recommend AC2 and Brotherhood at least.
20:04:44 <fizzie> Finnmark should be somewhere in South-Sweden.
20:04:50 <Ngevd> I've never played AC1
20:04:58 <fizzie> (Or is that where Denland is?)
20:05:06 <Ngevd> I've played Assassin's Creed: Altair's Chronicles
20:05:15 <Ngevd> For DS
20:05:15 <oerjan> Phantom_Hoover: heh i recall the yafgc comic seemed to have wanted a fake viking country and called it nordland, which is _another_ of our counties. the one where most of my family lives, btw
20:05:29 -!- quintopia has quit (Remote host closed the connection).
20:05:33 <Phantom_Hoover> One for the nuke list?
20:05:37 -!- quintopia has joined.
20:05:42 <oerjan> NO COMMENT
20:06:19 <elliott> The new klist.
20:06:44 <fizzie> Vorpal: We abolished counties at the end of 2009, but yes, we had a Lappland (Lappi in Finnish).
20:06:45 <Vorpal> Ngevd, DS? Sounds horrible
20:07:01 <kallisti> Vorpal: I really think they should have stopped focusing on Ezio and maybe added a third character.
20:07:08 <oerjan> Phantom_Hoover: finnmark is both the largest and (one of?) the least populated counties, something like alaska is for the us i think
20:07:08 <Vorpal> fizzie, I assume you still have län?
20:07:08 <kallisti> well, besides Desmond.
20:07:22 <Vorpal> kallisti, possibly
20:07:53 <fizzie> Vorpal: I was assuming län to be the closest representative of English 'county'; those are exactly what we no longer have.
20:08:55 <elliott> You *destroyed Lapland*?
20:09:09 <fizzie> elliott: Well, Germans had already burned it...
20:09:13 <Vorpal> fizzie, eh, we have län and landskap
20:09:24 <Vorpal> landskap no longer fills any official function
20:10:02 <Vorpal> well I think there might still be a heraldic symbol or such per landskap. Anyway that is the old old old system.
20:10:12 <Vorpal> fizzie, what do you have instead of län then?
20:10:21 <oerjan> fizzie: wait the germans burned lapland? they also burned finnmark.
20:11:16 <Vorpal> curse those bastards
20:11:18 <fizzie> oerjan: It's a bit of what they do. This was the time when we no longer were such good friends any more, and told them to go away.
20:11:39 * elliott wonders what the most elegantest pure memo table for rationals are
20:11:45 * elliott considers scaring oerjan away by pinging him after saying that.
20:11:56 <elliott> `addquote <oerjan> fizzie: wait the germans burned lapland? they also burned finnmark. <fizzie> oerjan: It's a bit of what they do. This was the time when we no longer were such good friends any more, and told them to go away.
20:12:00 <HackEgo> 787) <oerjan> fizzie: wait the germans burned lapland? they also burned finnmark. <fizzie> oerjan: It's a bit of what they do. This was the time when we no longer were such good friends any more, and told them to go away.
20:12:07 <Vorpal> why is some neighbour shooting fireworks atm.... Come on that is for tomorrow...
20:12:30 <oerjan> elliott: that continued fraction tree thing?
20:12:33 <elliott> I think Arcane Sentiment may be dead :(
20:12:43 <Ngevd> The Scots burnt Hexham
20:12:44 <elliott> oerjan: oh, stern-brocot?
20:12:50 <Ngevd> So did the Vikings
20:12:52 <oerjan> that was it
20:12:54 <Ngevd> And the Scots
20:12:54 <fizzie> Vorpal: We had a big reorganization of the "län" structure in 1997, in which several were merged to go from 12 to 6; and since 2010 those went away too. Now they just have six "aluehallintovirasto", "regionförvaltningsverk", which I guess do some of the same things.
20:12:57 <elliott> oerjan: that's a good idea! thanks
20:13:03 <Vorpal> fizzie, hm wikipedia translates landskap with province and län with county it seems.
20:13:11 <Phantom_Hoover> <Vorpal> why is some neighbour shooting fireworks atm.... Come on that is for tomorrow...
20:13:15 <Phantom_Hoover> The Germans are moving in.
20:13:21 <Vorpal> Phantom_Hoover, oh crap
20:13:22 <Phantom_Hoover> Sweden had it too easy last time.
20:13:34 <elliott> oerjan: oh it's as simple as just Rational -> a = (a, Rational -> a, Rational -> a)
20:13:36 <elliott> cool
20:13:52 <Vorpal> Phantom_Hoover, I just asked them if they were german. They said nein, should I trust them?
20:14:19 <Vorpal> elliott, speaking of other strangly named provinces: Medelpad
20:14:33 <Vorpal> that one always sounded odd to me, as a Swede
20:14:38 <elliott> oerjan: otoh the actual function for (Rational -> a) -> memoised form is probably ugly :(
20:14:45 <elliott> Vorpal: metapod
20:15:03 <Vorpal> heh
20:15:24 <Vorpal> also it seems landskap were replaced with län in 1634
20:15:40 <Vorpal> yet people still refer to the landskap when they say where they are from and such
20:16:45 <Vorpal> (also the plural of a Swedish word in an English sentence ends up awkward, so I skipped that there)
20:16:58 <kallisti> Vorpal: I guess the hookblade probably makes it easier to traverse the city.
20:17:14 <Vorpal> kallisti, somewhat, It gives you a bit of extra reach. Not that much really
20:17:30 <elliott> oerjan: UNLSES I'M MISSING SOME GREAT INSIGHT COUGH COUGH
20:17:34 <Vorpal> kallisti, especially useful when scaling towers and such in high profile mode.
20:17:36 <kallisti> do you start the game being able to jump upward while climbing?
20:17:53 <Vorpal> kallisti, eh you get the hookblade like 4 missions into the game or so
20:17:57 <kallisti> this is not a thing you could do in the first game, and you could only do it in AC2 after learning it from someone.
20:18:01 -!- MDude has quit (Ping timeout: 240 seconds).
20:18:04 <kallisti> Vorpal: no I think this is different.
20:18:07 <Vorpal> kallisti, and I don't think you can do that
20:18:08 <oerjan> elliott: well you'd have to construct the stern-brocot tree and annotate each node with its corresponding a, no?
20:18:17 <Vorpal> kallisti, you kind of can do it with the hookblade though
20:18:23 <kallisti> Vorpal: really? it would kind of make sense assuming linear continuity between sequels.
20:18:36 <Vorpal> kallisti, well maybe you can. I usually always use the hookblade when scaling
20:18:45 <Vorpal> since it is automatic if you have it equipped
20:18:56 <Vorpal> and I prefer that as a weapon anyway (compared to the sword)
20:19:43 <kallisti> my favorite weapon is unarmed. :)
20:19:54 <kallisti> in AC2 anyway
20:20:00 <Vorpal> that works for beating up people but not for killing them?
20:20:22 <oerjan> elliott: you could probably annotate it with the rational itself and apply fmap for trees
20:20:39 <elliott> oerjan: well yes but usually there's a more direct way of doing it... i.e. memo f = Tree (f 1) (memo (f . g)) (memo (f . h))
20:20:44 <elliott> i'm just not smart enough to figure out what g and h are :P
20:20:46 <Vorpal> kallisti, also initial starting-game cut scene sucked. It was so blatantly not using the in-game engine.
20:21:15 <Vorpal> kallisti, I was obviously ray traced, or possibly photon mapped. And used much more high def models
20:21:29 <oerjan> elliott: hm oh. well iirc the subtrees are parametrized by the bounding rationals at each end, aren't they?
20:21:38 <Vorpal> I despise games doing that. Thankfully all the remaining cut scenes are with the in game engine
20:21:40 <Vorpal> at least so far
20:21:55 <oerjan> -inf and inf for the large one, that needs some special handling
20:22:18 <kallisti> Vorpal: so you're complaining that it was.... too high definition?
20:22:36 <Vorpal> kallisti, I'm complaining that it wasn't the same definition as the rest of the game!
20:22:43 <kallisti> ah yes.
20:22:43 <elliott> oerjan: well you just need a map from the rationals to the rationals on the left and the rationals on the right of the tree
20:22:50 <elliott> (from the top)
20:22:53 <Vorpal> kallisti, besides it was upscaled on my monitor
20:23:09 <kallisti> Vorpal: apparently you learn the climb leap in Brotherhood as well. even though Ezio learns it in AC2. weird.
20:23:12 -!- derdon has joined.
20:23:14 <fizzie> oerjan: Based on the interwebs, the Germans burned your place while on their way out of the Finnish Lapland, after having burned it too. And it was the same Lothar Rendulic guy.
20:23:17 <Vorpal> kallisti, heh
20:24:07 <fizzie> He seems to have been really keen on the burning.
20:24:23 <Vorpal> kallisti, also I would love to see a photon mapped game :P
20:24:33 <Phantom_Hoover> <Vorpal> kallisti, also initial starting-game cut scene sucked. It was so blatantly not using the in-game engine.
20:24:34 <Phantom_Hoover> <Vorpal> kallisti, I was obviously ray traced, or possibly photon mapped. And used much more high def models<Vorpal> I despise games doing that. Thankfully all the remaining cut scenes are with the in game engine
20:24:47 <oerjan> elliott: hm well so we need a g such that g(-inf) = -inf, g(inf) = 0, g((a+b)/(c+d)) = (g a + g b)/(g c + g d), does that exist...
20:24:49 <Phantom_Hoover> You have really outdone yourself, you know.
20:24:57 <kallisti> lol
20:25:08 <elliott> oerjan: you realise -inf \not\in \mathbb{R} and so you don't have to handle it in g :P
20:25:11 <oerjan> iirc that (a+b)/(c+d) is the combining function for those trees
20:25:13 <Vorpal> Phantom_Hoover, you keep to your shiny rocks I keep to my immersion breaking cut-scenes.
20:25:42 <kallisti> Vorpal: I take it your not a fan of the Final Fantasy series?
20:25:45 <elliott> Vorpal: you realise the shiny rock thing was mocking you
20:25:47 <kallisti> or Starcraft.
20:25:50 <oerjan> elliott: well it's mathematically simplest to find g that way, i suspect
20:25:56 <Vorpal> kallisti, I was fine with the one I played. Which was for SNES.
20:25:56 <elliott> oerjan: fair enough :P
20:25:59 <kallisti> though starcraft 2 does have some in-engine cutscenes.
20:26:02 <Phantom_Hoover> elliott, no, they were mocking dumb prevailing HD trends.
20:26:08 <Vorpal> kallisti, and I never played starcraft
20:26:17 <Phantom_Hoover> Such as making all the rocks pearlescent to show off how good your lighting engine is.
20:26:25 <elliott> Phantom_Hoover: i mean you talking about shiny rocks after Vorpal complained
20:26:28 <elliott> also
20:26:30 <elliott> aii is so hd you guys
20:26:30 <Phantom_Hoover> Ah.
20:26:31 <elliott> so hd
20:26:48 <Phantom_Hoover> Is it infinity d.
20:27:09 <Vorpal> kallisti, but really I can accept most sort of graphical qualities as long as it is consistent within the game.
20:27:27 <kallisti> Vorpal: based on things I'm reading it seems that the climbing in Revelations is significantly less interesting because it requires fewer buttons.
20:27:42 <elliott> Phantom_Hoover: y
20:27:58 <elliott> Vorpal: -vorp "i didnt play ac1 because i wanted top gfx qual" vorp
20:28:04 <Vorpal> kallisti, that is one reason I despise Rage. (Apart from the mediocre gameplay that is). Things like the skydome and the weapon you hold are superb. Things like the fence right next to you is really really low-def
20:28:15 <Vorpal> kallisti, hm okay
20:28:23 <kallisti> Vorpal: for example to jump while climbing you have to press jump and then grab to grab the ledge above.
20:28:23 <Vorpal> elliott, at the time yes.
20:28:30 <Vorpal> elliott, I might play ac1 later on *shurg*
20:28:35 <Vorpal> depends on what I feel like
20:28:43 <Phantom_Hoover> Vorpal, HOW THE HELL CAN YOU PLAY MINECRAFT
20:28:53 <Phantom_Hoover> Do you use one of those ghastly photorealism packs?
20:28:54 <Vorpal> Phantom_Hoover, that should be answered above
20:29:04 <oerjan> argh food ->
20:29:21 <elliott> hi oerjan
20:29:22 <Phantom_Hoover> So paintings scour at the very core of your being, because they are of a different resolution to everything else?
20:29:23 <fizzie> Vorpal: To have FMVs was sort of a selling point for games at one point, after distribution media (CD) made that possible.
20:29:25 <elliott> `quote flamewar
20:29:29 <HackEgo> 324) [After a long monologue] <oklopol> i think i have to escape this heated discussion before it becomes a flamewar
20:29:35 <Vorpal> kallisti, from what I seen shift is always drop while climbing (and grab while jumping and such)
20:29:46 <Vorpal> fizzie, FMV?
20:30:01 <fizzie> Vorpal: "A Full motion video (FMV) is a video game narration technique that relies upon pre-recorded video files (rather than sprites, vectors, or 3D models) to display action in the game. While many games feature FMVs as a way to present information during cutscenes, games that are primarily presented through FMVs are referred to as full-motion video games or interactive movies."
20:30:22 <elliott> FMV = Fuck Mr. Vorpal
20:30:31 <elliott> science(tm)
20:30:35 <elliott> science facts(C)(R)
20:30:39 <elliott> science(tm) facts(C)(R)
20:30:45 <Vorpal> anyway iirc the nwn1 movies between the chapters were okay because they used a completely different art style. They showed stuff like grey scale silhouettes, or maps.
20:30:46 <elliott> (science(tm) facts(C)(R))(SM)
20:30:58 -!- kallisti has quit (Read error: Operation timed out).
20:31:06 <elliott> oerjan: ok maybe i'll just do the construct the tree thing :P
20:31:12 <Vorpal> fizzie, right
20:31:22 <Vorpal> fizzie, not a fan of those indeed
20:31:30 <fizzie> It had movies? I don't recall those at all. (Not that I'm disputing the fact.)
20:31:43 <Vorpal> fizzie, not on linux
20:31:59 <Vorpal> fizzie, there was .txt with the narration from the movies somewhere iirc
20:32:09 <Vorpal> because they couldn't license the codec for linux
20:32:13 <Vorpal> you can watch them with mplayer
20:32:26 <Vorpal> iirc they are .bik files or something. It works with some mplayer installations
20:32:33 <Vorpal> like on my desktop but not on my laptop
20:32:46 <fizzie> The modern Sonic games I think all have pre-rendered cutscenes.
20:32:54 <Vorpal> ouch
20:33:11 <Vorpal> fizzie, wait why, as far as I remember Sonic is not aiming for a realistic look /anyway/
20:33:42 <fizzie> They're not *realistic*, just more glitzy than the in-game 3D. Better water reflections and so on.
20:33:49 <Vorpal> heh
20:34:06 <Vorpal> all this tends to be pointless anyway due to compression artifacts and upscaling
20:34:07 <elliott> is bik bink
20:34:08 <elliott> yeah
20:34:18 <Vorpal> elliott, I don't know what bink is
20:34:25 <fizzie> Vorpal: Chrono Trigger's PSX version has "anime"-style animated cutscenes, incidentally.
20:34:27 <elliott> does anyone
20:34:28 <elliott> remember
20:34:29 <elliott> TOONSTRUCK
20:34:33 <elliott> if nobody remembers
20:34:36 <elliott> im severing all our friendships
20:34:37 <Vorpal> fizzie, I played that game on snes
20:34:45 <Vorpal> elliott, the name sounds familiar
20:34:56 <elliott> that had FMV up the wazoo :P
20:35:04 <Vorpal> elliott, I don't think I ever played it
20:35:09 <Vorpal> just heard the name somewhere
20:35:14 * Vorpal searches for it
20:35:27 <Vorpal> elliott, well wp says it is a point and click
20:35:46 <Vorpal> nah I never played it
20:36:07 <fizzie> Vorpal: I played it on an emulator. :p But anyway, the PSX version is pretty close to identical (no graphical upgrades or anything there; some random bonus features) except for the "anime cut scenes created by original character designer Akira Toriyama's Bird Studio and animated by Toei Animation".
20:36:27 <Vorpal> I see
20:36:39 <fizzie> And I think the DS port includes the cutscenes too.
20:36:51 <Vorpal> fizzie, I think I saw a youtube video of the cut scene where Ayla (sp?) was introduced.
20:37:09 <Vorpal> and I went like, "really, that much bare skin"
20:37:14 -!- kallisti has joined.
20:37:14 -!- kallisti has quit (Changing host).
20:37:14 -!- kallisti has joined.
20:37:46 <fizzie> Vorpal: Well, you know, there's quite a lot of skin in http://www.videogamesprites.net/ChronoTrigger/Party/Ayla/ too.
20:37:58 <Vorpal> fizzie, presumably I didn't realise how much there was from the upscaled smoothed sprite
20:38:02 <kallisti> what wait codu is still down?
20:38:09 <kallisti> this explains why the logs are this checksum stuff.
20:38:13 <Vorpal> codu is down?
20:38:22 <elliott> "Access to the webpage was denied
20:38:22 <elliott> It is likely that the server hosting the webpage has been overloaded or encountered an error. In order to avoid causing too much traffic and making the situation worse, Chromium has temporarily stopped allowing requests to the server."
20:38:23 <Vorpal> no hackego is here?
20:38:24 <elliott> :'(
20:38:27 <elliott> you betray me chrome
20:38:29 <Vorpal> ah
20:38:40 <Vorpal> elliott, chrome does what?
20:38:49 <elliott> Vorpal: it tells you how to turn it off on the next line :P
20:38:50 <Vorpal> I assume there is a button to resume that?
20:38:51 <Vorpal> ah
20:38:53 <Vorpal> good
20:39:01 <kallisti> Vorpal: it enforces good manners on the web. how horrible.
20:39:11 <elliott> not that I will bother, because refreshing youtube's 500 page was not productive
20:39:11 <Vorpal> hah
20:39:19 <elliott> i will instead refresh this denied page
20:39:41 <kallisti> oh no I just misremembered the stalker mode URL
20:39:55 <Vorpal> fizzie, also why the tail, I always wondered
20:40:05 <kallisti> 15:29 < kallisti> I think tabletop RPGs have the best graphics ever.
20:40:06 <kallisti> 15:29 < kallisti> and the gameplay engine is remarkably varied. :> :> :>
20:40:13 <kallisti> said before disconnected. important words.
20:40:25 <Vorpal> har har
20:40:55 <kallisti> also if I really want them I can have shiny rocks.
20:41:07 <kallisti> I can just imagine all the rocks to be really shiny.
20:41:08 <elliott> finally
20:41:09 <elliott> http://www.youtube.com/watch?v=xERRV7JmZk8#t=1m15s
20:41:49 <Vorpal> kallisti, game you should play at some point: Bastion.
20:41:54 <kallisti> elliott: what a lame ringtone on that phone.
20:41:54 <Vorpal> it is so unique
20:43:03 <kallisti> elliott: why are so many awesome people in this thing.
20:43:31 <elliott> because it is an awesome game
20:45:01 <kallisti> elliott: this guy draws for a living like I program for a living.
20:45:19 <elliott> lol
20:45:35 <kallisti> "must focus on bunnies"
20:48:01 -!- augur has joined.
20:49:43 <kallisti> malevelator
20:52:06 <Gregor> <---> I was never sure what the emotion was honestly
20:52:06 <Gregor> <---> So I just imagined you actually saying what you wrote and I think that got me there most of the time
20:52:06 <Gregor> <---> I'd even add some of your drawn out voice-quavers. :)
20:52:17 <Gregor> ^^^ A story about me not using the tongue-face smiley.
20:52:36 <Gregor> Apparently I have "drawn out voice-quavers"
20:52:39 <Gregor> Whatever that means.
20:52:58 <elliott> I believe I have heard Gregor's voice exactly once.
20:53:18 <Gregor> My voice is awesome[1]!
20:53:21 <Gregor> [1]: Not actually awesome
20:54:05 <elliott> kallisti: btw the sprite actually has animations for like everything that happens in the game
20:54:15 <elliott> i can't imagine how long it took to film it all
20:55:07 <kallisti> elliott: aha I thought that voice was familiar. that bird-guy that they talk to at the beginning is also a character called Choose Goose in Adventure Time.
20:55:12 <kallisti> that voice actor has a very distinct voice.
20:55:58 <kallisti> http://www.imdb.com/name/nm0071818/
20:55:58 <kallisti> wow
20:55:59 <elliott> forever destined to be a bird
20:56:01 <kallisti> that's a lot of things
20:56:05 <fizzie> Vorpal: Oh, speaking of Sonic and realism, I guess the 2006 Sonic has a sorta-wannabe-realistic-ish human too, http://www.youtube.com/watch?v=6_yFxEnqLr8
20:56:35 <fizzie> I guess that game is a bit of a "did not happen" for many people, though.
20:56:48 <elliott> kallisti: flux is homer btw
20:56:59 <kallisti> what
20:57:02 <kallisti> flux? homer?
20:57:13 <kallisti> you must think I've been paying a lot of attention
20:57:23 <elliott> kallisti: the purple guy
20:57:29 <elliott> is voiced by Dan Castellaneta
20:57:33 <kallisti> oh
20:57:38 <kallisti> Homer Simpson
20:57:43 <kallisti> I was thinking of the Greek..
20:57:47 <elliott> X-D
20:57:51 <elliott> that too.
20:59:50 <Vorpal> fizzie, sec
21:00:28 <Vorpal> fizzie, my reaction: wait that isn't a final fantasy game?
21:00:44 <fizzie> Vorpal: No, that's a Sonic game.
21:00:55 <Vorpal> really, I haven't seen sonic yet
21:01:03 <fizzie> He'll be in the video.
21:01:06 <Gregor> Oh, it doesn't have Sonic in it.
21:01:25 <fizzie> You should see the touching Sonic/Elise kiss scene, which also is in the game.
21:02:07 <Gregor> Touching/creepy
21:02:38 <Vorpal> fizzie, this... this is wrong on so many levels
21:02:40 <fizzie> Well, you know, they're both consenting adults and so on. (Though IIRC Sonic's dead at that point, so maybe he's not so consenting.)
21:03:13 <elliott> Also he's a hedgehog.
21:03:26 <Vorpal> fizzie, also is that a tron hedgehog in that video you linked?
21:03:27 <Vorpal> what
21:03:39 <fizzie> elliott: Yeah, so in Hedgehog Years he's a senior, I think.
21:03:48 <fizzie> Vorpal: That's a hedgehog from the future.
21:03:56 <Vorpal> right
21:03:57 <Vorpal> carry on
21:03:59 <elliott> It's like Vorpal has never seen a future hedgehog before.
21:04:00 <fizzie> Vorpal: You see, chaos control, time travel.
21:04:04 <Phantom_Hoover> elliott, he's an *adult* hedgehog.
21:04:23 <kallisti> elliott: http://www.youtube.com/watch?v=_xATi_9seuk
21:04:39 <Vorpal> elliott, I haven't. I never played much sonic. I played a level or two at a friend's house once
21:05:12 <fizzie> Vorpal: Anyway, the final cutscene retroactively erases the whole game's events from the timeline, so canonically speaking the game's a no-op.
21:05:40 <Vorpal> fizzie, err...
21:05:40 <fizzie> Vorpal: The future hedgehog has telekinesis, though, obviously.
21:06:04 <elliott> `addquote <Vorpal> fizzie, also is that a tron hedgehog in that video you linked? <fizzie> Vorpal: That's a hedgehog from the future. [...] <fizzie> Vorpal: Anyway, the final cutscene retroactively erases the whole game's events from the timeline, so canonically speaking the game's a no-op. <Vorpal> fizzie, err... <fizzie> Vorpal: The future hedgehog has telekinesis, though, obviously.
21:06:06 <Vorpal> fizzie, so the retcon was in the same work as it retconned?
21:06:07 <HackEgo> 788) <Vorpal> fizzie, also is that a tron hedgehog in that video you linked? <fizzie> Vorpal: That's a hedgehog from the future. [...] <fizzie> Vorpal: Anyway, the final cutscene retroactively erases the whole game's events from the timeline, so canonically speaking the game's a no-op. <Vorpal> fizzie, err... <fizzie> Vorpal: The future hedgehog has telekinesis, though, obviously.
21:06:21 -!- aloril has quit (Ping timeout: 240 seconds).
21:06:42 <elliott> fizzie: So is that game better or wose than the Shadow one (neither of which I have played)
21:06:46 <Vorpal> elliott, that isn't quote-worthy IMO
21:06:54 -!- Ngevd has quit (Ping timeout: 240 seconds).
21:06:54 <Phantom_Hoover> `delquote 788
21:06:57 <Phantom_Hoover> `quote 777
21:06:58 <HackEgo> ​*poof* <Vorpal> fizzie, also is that a tron hedgehog in that video you linked? <fizzie> Vorpal: That's a hedgehog from the future. [...] <fizzie> Vorpal: Anyway, the final cutscene retroactively erases the whole game's events from the timeline, so canonically speaking the game's a no-op. <Vorpal> fizzie, err... <fizzie> Vorpal: The future hedgehog has telekinesis, though, obviously.
21:07:01 <HackEgo> 777) <ais523> `delquote 419 * HackEgo has quit (Remote host closed the connection) * EgoBot has quit (Remote host closed the connection) * glogbot has quit (Remote host closed the connection)
21:07:14 <fizzie> It's a three-main-characters-with-storylines game. Sonic does what Sonic does; Silver (the future hedgehog) does telekinesis and self-levitation with psychic powers; and Shadow does... uh, kickboxing, or something.
21:07:22 <elliott> `addquote <Vorpal> fizzie, also is that a tron hedgehog in that video you linked? <fizzie> Vorpal: That's a hedgehog from the future. [...] <fizzie> Vorpal: Anyway, the final cutscene retroactively erases the whole game's events from the timeline, so canonically speaking the game's a no-op. <Vorpal> fizzie, err... <fizzie> Vorpal: The future hedgehog has telekinesis, though, obviously.
21:07:22 <Vorpal> elliott, I heard that sonic generations is pretty okay btw
21:07:25 <HackEgo> 788) <Vorpal> fizzie, also is that a tron hedgehog in that video you linked? <fizzie> Vorpal: That's a hedgehog from the future. [...] <fizzie> Vorpal: Anyway, the final cutscene retroactively erases the whole game's events from the timeline, so canonically speaking the game's a no-op. <Vorpal> fizzie, err... <fizzie> Vorpal: The future hedgehog has telekinesis, though, obviously.
21:07:27 <elliott> I'm a fascist, sorry.
21:07:30 <Vorpal> elliott, which is iirc the last one
21:07:38 <elliott> Vorpal: Is that the nth-reboot one?
21:07:52 <Vorpal> elliott, not sure I don't really follow the sonic franchise
21:07:56 <elliott> No, that was 4.
21:08:27 <Vorpal> elliott, I think it has both modern style and classical style levels or something like that
21:08:30 <elliott> I wonder how much aspirin Sonic takes for his headaches.
21:08:40 <Vorpal> hah
21:08:48 <fizzie> elliott: I haven't watched an LP of the Shadow game. I've just watched the 2006 Sonic, the Unleashed were-hog game, the really bizarre Sonic and the Black Knight thing, and the second-to-latest Sonic Colors one.
21:08:54 <elliott> Eagerly awaiting Sonic 5: Darker and Edgier: The Addiction.
21:08:57 <fizzie> Vorpal: I just bought Generations the other day. :p
21:09:14 <fizzie> (It was a Daily Deal at -66%, how could I resist.)
21:09:14 <Vorpal> fizzie, was Sonic and the Black knight cannon or a fan made thingy?
21:09:24 <Vorpal> fizzie, and is it a Monty Python reference?
21:09:29 <Phantom_Hoover> It was a cannon.
21:09:30 <Vorpal> fizzie, hah
21:09:33 <Phantom_Hoover> Sonic gets shot out of it.
21:09:33 <Vorpal> Phantom_Hoover, hm
21:09:36 <elliott> "Sonic and the Black Knight was de-listed in 2010, following on from Sega's decision to remove all Sonic titles with average Metacritic scores from retail stores in order to increase the value of the brand after positive reviews for Sonic 4 and Sonic Colors.[5]"
21:09:51 <Phantom_Hoover> lol
21:09:59 <Vorpal> elliott, well now /that/ is a jerk move
21:10:01 <fizzie> Vorpal: They're all real games; but it's bizarroid. It's like this fairytale-themed thing.
21:10:06 <elliott> Vorpal: FSVO jerk move
21:10:14 <elliott> Sega aren't exactly obligated to sell games they don't thinka re good :P
21:10:14 <Vorpal> elliott, well yes. There are far worse ones
21:10:19 <elliott> *think are
21:10:38 <Vorpal> fizzie, I see
21:10:45 <elliott> http://upload.wikimedia.org/wikipedia/en/c/c7/SBKCanyon1.jpg ;; HARDCORE RAILROAD GRINDING
21:10:45 <fizzie> Colors was all right. The dialogue is amusingly self-satirical, and it doesn't take itself at all seriously.
21:10:49 <elliott> So metal.
21:10:54 <Vorpal> fizzie, so is the generation one any good?
21:11:11 <Vorpal> fizzie, I was thinking about it but decided not to due to not really playing much sonic before.
21:11:16 <elliott> fizzie: That's usually a recipe for trying too hard. :p
21:11:33 <elliott> fizzie: At least Rayman 3 suffered a bit from all the sarcastic lampshading.
21:11:49 <fizzie> elliott: Well, it wasn't too grating.
21:11:50 <elliott> (But it was good enough on its other merits to not suffer too badly, so...)
21:11:55 <Vorpal> fizzie, I was thinking of picking up Alice Madness Returns recently
21:11:58 <Vorpal> didn't do it though
21:12:18 <Vorpal> I have a fairly limited budget. I did pick up Terraria and Bastion and a few other things though
21:12:24 <elliott> american mcgee's alice is so obnoxious
21:12:30 <Vorpal> elliott, oh?
21:12:39 <fizzie> Vorpal: So far it seems good; I've only played through the first three of the ten areas. Each area has two acts, first with "classic-style" mostly-2D Sonic with the classic-like controls, and the second with "modern" Sonic doing the current 2D/3D switcharoo with modern controls (homing attack and whatever).
21:12:44 <Vorpal> elliott, the platforming looked fairly fun from a youtube video I saw
21:12:46 <elliott> IT'S LIKE ALICE IN WONDERLAND BUT GRITTY AND EDGY YOU GUYS!!! RATED TEEN
21:12:47 <Phantom_Hoover> I preferred his Strawberry Shortcake.
21:13:13 <Vorpal> elliott, don't see the issue with that
21:13:17 <elliott> ~gothhicke~
21:13:23 <Vorpal> hah
21:13:23 <elliott> ~GOHTIQUE~
21:13:24 <elliott> ~GOHTIKKKUE~
21:13:27 <Vorpal> right
21:13:42 <Phantom_Hoover> Got Hickey.
21:13:49 <elliott> VINCENT VAN GOTHIC
21:13:55 <Vorpal> elliott, anyway I think you would love Terraria
21:14:01 <Vorpal> if you haven't already played it
21:14:26 <Vorpal> fizzie, does sonic work well without a gamepad?
21:14:28 <Phantom_Hoover> elliott, wait, did you play it or what.
21:14:53 <elliott> Vorpal: I doubt it.
21:14:58 -!- Klisz has joined.
21:15:00 <Vorpal> elliott, in reply to what line?
21:15:03 <fizzie> Vorpal: I don't really know, I guess a pad might be a good idea. I've been playing it with the PS3 controller I have.
21:15:05 <elliott> Terraria.
21:15:07 <Phantom_Hoover> I love how any ~modern reinvention~ of Alice in Wonderland feels the need to stick the Jabberwock in somewhere.
21:15:15 <Vorpal> elliott, it isn't like minecraft at all actually. It is more RPGish
21:15:16 <fizzie> Vorpal: All the areas are thematically lifted from earlier Sonic games; so far there's been Green Hill Zone from Sonic 1, Chemical Plant from Sonic 2, and Sky Sanctuary from Sonic & Knuckles. The rest are from the moderner games which I haven't played.
21:15:23 <Phantom_Hoover> elliott, I was totally offered a free copy of Terraria from a guy at school!
21:15:31 <Vorpal> Phantom_Hoover, did you say yes or no
21:15:32 <Phantom_Hoover> I told him to go away because he was Annoying Homestuck Guy.
21:15:38 <Vorpal> ..
21:16:01 <elliott> Vorpal: Yes, exactly: It lacks most of the elements I find interesting about Minecraft (e.g. isolation, overworld exploration) and amplifies the stupid RPG stuff Notch keeps adding.
21:16:09 <elliott> (Not intending any kind of chronological relation, just comparing.)
21:16:23 <Vorpal> elliott, it isn't trying to be minecraft though
21:16:24 <Phantom_Hoover> Weren't you praising the addition of that very stupid RPG stuff shortly after it was added?
21:16:26 <oerjan> elliott: ok thinking about it and looking at the wikipedia page (which doesn't seem to have a formula), i think possibly g x | x <= 0 = x-1 | otherwise = -1/(x+1); h x | x < 0 = 1/(1-x) | otherwise = 1+x
21:16:42 <Vorpal> Phantom_Hoover, I seem to remember that as well
21:16:51 <elliott> Vorpal: <elliott> (Not intending any kind of chronological relation, just comparing.)
21:17:02 <elliott> Phantom_Hoover: Nnno, I said the idea is nice.
21:17:02 <fizzie> Vorpal: Also the dickiest move: the PS3/Xbox360 versions of Generations contain the first MegaDrive/Genesis "Sonic the Hedgehog" game as an unlockable add-on; but the PC/Steam version doesn't. Some have speculated that's because Sega's still selling the original game in Steam as "SEGA Classics" series title.
21:17:09 <elliott> It's not nice as part of Minecraft and it turned out to be badly-executed.
21:17:16 <Vorpal> fizzie, ouch
21:17:17 <elliott> But it could make an interesting game itself, if it wasn't cra.
21:17:18 <elliott> p
21:17:19 <elliott> .
21:17:32 <Phantom_Hoover> Although ISTR liking the new terrain gen too until I actually looked at it up close.
21:17:33 <fizzie> I had read it's in there from the Generations Wikipedia article, and was all like "ooh, where can I unlock this thing".
21:17:45 <Phantom_Hoover> Well, actually, until walking through it for more than 100 metres.
21:17:45 <fizzie> Apparently the answer is "nowhere".
21:17:52 <Vorpal> fizzie, ouch
21:18:14 <fizzie> OTOH, it wouldn't have frustration-reducing savestates, like an emulator copy. :p
21:18:23 <fizzie> (But it'd be Legal(tm) and all that.)
21:18:25 <Vorpal> Phantom_Hoover, just upscaling the biome size in the old one might have worked
21:18:41 -!- aloril has joined.
21:18:46 <Phantom_Hoover> Weeellll, you'd still not've had proper oceans.
21:18:52 <Vorpal> hm
21:18:57 <fizzie> You have to pay more pretend-money (that you get from playing) to unlock infinite continues in it, separately, after unlocking the game itself.
21:19:01 <Phantom_Hoover> But they'd be an acceptable tradeoff for keeping interesting land.
21:19:14 <fizzie> (And that's just continues from start of the "zone".)
21:19:19 <Vorpal> Phantom_Hoover, so special case ocean somehow?
21:19:42 <Vorpal> fizzie, heh
21:19:50 <Phantom_Hoover> I'm kind of divided on that one.
21:19:55 <Vorpal> hm
21:19:58 <oerjan> elliott: ^^^
21:20:05 <elliott> oerjan: oh sorry
21:20:11 <elliott> oerjan: i pushed that to my stack but it got lost
21:20:14 <Phantom_Hoover> On the one hand, it seems like a good way to do it; on the other hand, special-cased biome terrain is exactly why the new terrain gen is crap.
21:20:19 <Vorpal> Phantom_Hoover, or add more detail to it in some way?
21:20:19 <oerjan> heh
21:20:34 <elliott> oerjan: that seems simple enough. although I _did_ switch to trying to figure out how to construct the tree recursively :P
21:20:45 <elliott> Phantom_Hoover: The only solution is EC terrain gen.
21:20:45 <Vorpal> hm
21:21:08 <Phantom_Hoover> elliott, clearly.
21:21:14 <fizzie> Vorpal: Also I just won "Men of War: Vietnam" from Steam's ongoing "gift pile" thing. What the doop am I supposed to do with *that*? ("The new, story-driven campaign lets you taste the explosive mix of the jungle, Hueys and rock-n-roll in 1968. The US campaign focuses on a team of elite special ops soldiers, and each one of them has a personality.")
21:21:16 <elliott> Phantom_Hoover: WHICH YOU NEED TO KEEP THINKING ABOUT
21:21:22 <elliott> Phantom_Hoover: BTW I want jungles, work out how I can have jungles somehow.
21:21:26 <Vorpal> fizzie, heh
21:21:30 <Phantom_Hoover> It's called 'biomes'.
21:21:53 <fizzie> I guess I could play it for the personalities?
21:22:02 <Vorpal> fizzie, I only won some coal + a coupon for a game I already own!
21:22:24 <fizzie> It's technically worth 30 eur. (Well, except for today, it's a daily deal at 7.49 eur at the moment.)
21:22:32 <elliott> fizzie: Sell it! OH WAIT.
21:22:46 <Vorpal> fizzie, actually I seem to have 3 coupons and 5 coal. If you want to trade or such for something? I don't know what Men Of War is though
21:22:59 <Vorpal> isn't it some hard core milsim?
21:23:01 <Vorpal> or such
21:23:04 <fizzie> Well, purely going on the name, I think you shoot people.
21:23:19 <elliott> Vorpal: It's spelled "Muslim".
21:23:20 <fizzie> I quoted the description above.
21:23:23 <elliott> And that's racist.
21:23:27 <Vorpal> right
21:23:37 <elliott> http://upload.wikimedia.org/wikipedia/en/5/56/Men_of_War.jpg ;; looks legit
21:23:46 <elliott> Except this one is 'NAM.
21:23:58 <Vorpal> fizzie, I have coupons for VVVVVV and RedOrchestra2 if you want. I'm not going to use either. VVVVVV I already know (what a dick move of Valve to give me that thus)
21:24:03 <fizzie> I do also have a "-25% off any Valve game, valid Jan 2nd through March 1st" coupon too, which is kind-of useless.
21:24:12 <Vorpal> fizzie, I have that too yes
21:24:19 <Vorpal> fizzie, err -33%
21:24:20 <Phantom_Hoover> elliott, shortly after, the man was killed due to not being able to see anything above him.
21:24:21 <Vorpal> not -25%
21:24:32 <elliott> `addquote <Phantom_Hoover> oh jesus my mother is trying to ship bear grylls with miranda hart aerio;jghaeirugha
21:24:35 <fizzie> Vorpal: They come in many amounts, yes. My wife's brother has a -50% one.
21:24:35 <HackEgo> 788) <Phantom_Hoover> oh jesus my mother is trying to ship bear grylls with miranda hart aerio;jghaeirugha
21:25:09 <Vorpal> fizzie, well, interested in trading any of the ones I have?
21:25:10 <fizzie> Vorpal: Also he won the "Valve Complete Pack" thing, which is technically worth 200 eur or so; except he had all the games already, so...
21:25:11 <elliott> Vorpal: What a dick move, they didn't give you a free game.
21:25:24 <elliott> fizzie: 200 eur? Naw
21:25:25 <elliott> Oh, worth.
21:25:34 <elliott> What, it's 24.99 pounds right now.
21:25:36 <fizzie> elliott: Well, you know, mathematically speaking.
21:25:39 <Vorpal> elliott, they could have given me a coupon for a game I didn't already own in steam!
21:25:41 <elliott> That's... that's cheaper than anything.
21:25:42 <fizzie> It's discounted at the moment. :p
21:25:58 <elliott> fizzie: Can I buy Steam games without having to actually set it up right now? :P
21:26:05 <Vorpal> elliott, no
21:26:17 <elliott> Vorpal: But there's an online store!
21:26:17 <fizzie> elliott: You need an account, but I don't think you need to install the client.
21:26:30 <elliott> fizzie: Aweeeeeesooooooome when does the discount end.
21:26:35 <fizzie> Vorpal: I don't really know. Red Orchestra 2 sounds really not very different from Men of War, and I've got VVVVVV already.
21:26:43 <Vorpal> fizzie, anyway I don't think I will do any of the daily objectives today.
21:26:53 <fizzie> Vorpal: What, not even the SpaceChem one?
21:26:58 <Vorpal> fizzie, is it hard?
21:27:07 <Vorpal> fizzie, I only done the tutorial in that game
21:27:11 <Vorpal> fizzie, it is not really my genre
21:27:28 <Phantom_Hoover> It's frustrating as hell after a bit.
21:27:39 <Vorpal> Phantom_Hoover, I meant the objective
21:27:42 <Vorpal> not the game itself
21:27:43 <fizzie> Vorpal: Oh, well, in that case it might be quite a lot of playing. It's... something like 1/4th of the way through the game, so it's not *terribly* far, but it's not right at the start either.
21:27:50 <Vorpal> fizzie, ouch
21:27:54 <fizzie> (The objective is just "reach this point".)
21:27:59 <Vorpal> I see
21:28:12 <Vorpal> I wish it was a shorter game
21:28:16 <Phantom_Hoover> Trying to build robust systems is like eating pomegranate wearing boxing gloves.
21:28:45 <Vorpal> fizzie, anyway if you want a red orchestra 2 coupon?
21:28:46 <fizzie> elliott: I'm guessing the discount will end on Jan 2nd, but that's just a guess. I'm sure they'll discount it during the next holiday whatever too, though.
21:28:56 <fizzie> Vorpal: <fizzie> Vorpal: I don't really know. Red Orchestra 2 sounds really not very different from Men of War, and I've got VVVVVV already.
21:29:00 <kallisti> can someone explain what "robust" means?
21:29:03 <Vorpal> fizzie, oh right
21:29:19 <Vorpal> fizzie, anyway Red Orchestra 2 is iirc super-realistic
21:29:19 <Phantom_Hoover> kallisti, "won't jam up under any possible set of inputs specified in the level".
21:29:20 <kallisti> for me scalable and fault tolerant comes to mind.
21:29:26 <Vorpal> fizzie, think ARMA realism level
21:29:57 <fizzie> Vorpal: I guess I'd be interested if I wanted to shoot people in Europe instead of Vietnam.
21:30:07 <Vorpal> kallisti, he means a game
21:30:10 <Vorpal> in a game*
21:30:13 <Vorpal> specific one too
21:31:00 <Vorpal> fizzie, did you pick up bastion btw?
21:31:16 <Vorpal> fizzie, I think it is quite discounted still even though it isn't a daily deal. And it is so worth it
21:31:24 <Vorpal> (if you love rpgs)
21:31:39 <fizzie> Vorpal: Based on Wikipedia, I guess Men of War is sort of tactics thing where you command more than one dude? Or something. And Red Orchestra is a first-person shooter, I think. Anyway, neither sounds very much like what I'd play.
21:32:07 <Vorpal> right
21:32:19 <kallisti> Vorpal: right I was just asking what "robust" actually means in the context of software in general.
21:32:21 <fizzie> And no, I didn't; did consider it, though. Maybe I'll consider some more.
21:32:45 <Vorpal> fizzie, watch some youtube video of it. It is probably on my top-two list of the games this year
21:32:56 <Vorpal> (shared first place with witcher 2)
21:33:17 <Phantom_Hoover> I would play Men of War if it was a strategy game where you control individual zooids in a Portuguese Man o' War.
21:34:02 <kallisti> zoids like Zoids?
21:34:10 <kallisti> *zooids
21:34:17 <Vorpal> fizzie, what about terraria?
21:34:30 <kallisti> http://en.wikipedia.org/wiki/Zoids
21:34:43 <Vorpal> according to steam I played 11 hours of bastion and 10 of terraria. And I bought both just a few days ago
21:35:48 <Vorpal> and since I completed bastion twice (once in new game+) during that time, it really doesn't take long to play. Yet it is so awesome
21:36:14 <Vorpal> I wonder if skyrim measures how long you played...
21:36:16 * Vorpal checks
21:36:35 <elliott> Phantom_Hoover: Dude... let's make that game.
21:36:41 <Vorpal> wut
21:36:44 <Vorpal> it crashed
21:36:49 <Vorpal> fuck you Bethesda
21:37:03 <Vorpal> it crashed on the main menu
21:37:22 <Vorpal> ah now it works
21:38:02 <Vorpal> hm nope
21:38:09 <Vorpal> no time spent playing
21:38:09 <kallisti> hihihi
21:38:11 <Vorpal> however
21:38:19 <Vorpal> it says 302 days passed, 81 hours slept and 692 hours waited. I guess you could calculate from that
21:38:25 <Vorpal> how much I actually spent playing it
21:38:35 <elliott> 302 days
21:38:43 <Vorpal> elliott, 302 in-game days
21:38:45 <Vorpal> ...
21:38:51 <elliott> no real
21:38:56 <Vorpal> alas no
21:38:58 <fizzie> Vorpal: The weirdest thing was the other day, I had successfully done that And Yet It Moves objective, so the Steam-installed copy worked just fine; then it suddently started to day "Fatal-ISV: (..\..\source\dgl\bitmapPng.cc @...", "Error reading PNG file: incorrect data check" after the loading screens, then quit away. Two days later, it again worked just fine.
21:39:15 <fizzie> s/to day/to say/
21:39:22 <Vorpal> fizzie, wtf
21:39:51 <fizzie> And it wasn't just a single-time fluke, I tried to start it four times consecutively and always got the same PNG file error.
21:40:02 <Vorpal> right
21:40:06 <fizzie> Though I guess it's possible Steam might have done some sneaky updating-on-the-background there.
21:40:17 <Phantom_Hoover> elliott, OK: pneumatophores are basic structural units; dactyloooids are your military; gonozooids are needed for construction; and gastrozooids produce resources.
21:40:18 <Vorpal> I hate that yes. You have to change that /per game/
21:40:22 <Vorpal> which is horrible
21:40:25 <elliott> Phantom_Hoover: Yes.
21:40:36 <Vorpal> Phantom_Hoover, which game is this?
21:41:04 <Phantom_Hoover> Siphonophore: Lord of the Sea.
21:41:14 <Vorpal> never heard of it, is it indie?
21:41:34 <Vorpal> "Siphonophorae or Siphonophora, the siphonophores, are an order of the Hydrozoa, a class of marine invertebrates belonging to the phylum Cnidaria."
21:41:35 <Vorpal> right
21:41:43 <Vorpal> Phantom_Hoover, I thought the names were too weird :P
21:42:10 <elliott> Phantom_Hoover: *Man o' War: Lord of the Sea
21:42:36 <elliott> Phantom_Hoover: Slogan: THIS SIPHONOPHORE AIN'T NO CEPHALOPHORE
21:42:47 <Phantom_Hoover> Man of War — Lord of the Sea.
21:43:12 -!- copumpkin has quit (Remote host closed the connection).
21:43:15 <Phantom_Hoover> elliott, if you lose, your man o' war is shown carrying its head.
21:43:23 -!- copumpkin has joined.
21:43:53 <Vorpal> fizzie, If I ever made a game and sold it on steam it would have loads of weird achievements. Like "Opened main menu" and even getting an achievement for getting your first achievement or something like that
21:44:14 <fizzie> They should put Achievement Unlocked and Achievement Unlocked 2 on Steam.
21:44:26 <fizzie> And then make each achievement there a daily objective.
21:44:30 <fizzie> Lots of coal for everyone.
21:44:30 <Vorpal> ah yes, I had forgotten about those
21:44:31 <elliott> fizzie++
21:44:40 <Vorpal> I should play one of them some time
21:44:47 <elliott> `quote killing myself repeatedly
21:44:50 <HackEgo> 44) <Deewiant> I spent the last minute or so killing myself repeatedly
21:44:51 <elliott> The game's legacy.
21:45:03 <fizzie> The second one had unlockable scenarios and all.
21:45:16 <Vorpal> fizzie, which one should I play?
21:45:35 <fizzie> The first one's of course the first, and you do get the idea from it just fine.
21:45:41 <fizzie> The second one is just more of the same, really.
21:46:09 <Vorpal> it seems to be available on several sites?
21:46:11 <Vorpal> wut
21:46:15 <elliott> There should just be an achievement for getting an achievement, and so once you get your first achievement your screen fills up with achievement messages and you run out of RAM and your computer crashes and when you go to look at your achivement counter it says א‭‎‏‬₁.
21:46:22 <elliott> Vorpal: Most Flash games are.
21:46:33 <Vorpal> elliott, okay which place should I go to for it
21:46:39 <elliott> The one that makes you happiest inside.
21:46:46 -!- Ngevd has joined.
21:46:49 * elliott did it on armorgames.
21:46:51 <Vorpal> well I don't know which ones are trustworthy
21:46:52 <Vorpal> right
21:46:56 <Vorpal> that is the top result anyway
21:46:58 <elliott> http://jmtb02.com/achievementunlocked/ is maybe better.
21:47:00 <elliott> Straight from TEH SOURCE.
21:47:06 <elliott> But it's Officially(tm) an Armor Games thing.
21:47:32 <Vorpal> oh god
21:48:22 <Vorpal> wut
21:48:34 -!- copumpkin has quit (Quit: Leaving...).
21:48:58 <Vorpal> what is the goal?
21:49:16 <fizzie> To get all the achievements.
21:49:54 <Vorpal> every block you touch gives an achievement...
21:50:01 <elliott> Not true.
21:50:11 <elliott> You can see the full list at the right. :p
21:50:17 <fizzie> Not every. And it calms down quite a lot once you've gotten 50 or 60% of hem.
21:50:20 <Vorpal> right
21:50:21 <Vorpal> not all
21:50:22 <Vorpal> most
21:50:49 -!- rodgort has quit (Read error: Operation timed out).
21:51:04 <fizzie> The second game has some rather curious ones, like the "have it open in two tabs at once" thing, where the second tab shows a completely different thing where you can achieve a couple more achievements.
21:51:17 <Vorpal> scrolling achievement list list achievement
21:51:19 <Vorpal> oh my
21:51:35 <Vorpal> fizzie, how can the game determine that?
21:51:43 <Vorpal> fizzie, after all I'm using a sandboxing browser
21:51:45 <Vorpal> (chrome)
21:51:47 <fizzie> I don't know; it's Flash.
21:52:14 <fizzie> I haven't checked whether it works in Chrome. I'd suppose it does, though.
21:52:24 <fizzie> Maybe it uses the Flash persistent storage thing.
21:52:26 <fizzie> Who knows.
21:52:31 <Vorpal> what are the numbers?
21:52:45 <fizzie> Integers.
21:52:49 <Vorpal> fizzie, yes but why
21:52:54 <fizzie> You can visit them in different order, for example.
21:53:02 <fizzie> The achievement names give hints.
21:53:30 <Vorpal> ah
21:53:55 <elliott> fizzie: Isn't there an achievement in #1 for reloading the page?
21:53:57 <elliott> Or was that #2.
21:54:34 <fizzie> Could be. There's all kinds of meta-stuff.
21:54:49 <fizzie> Like the "Bandwidth Exploiter: Preload the game", which I haven't figured out how not to get.
21:55:00 <fizzie> IIRC I've always just initially gotten it automatically.
21:55:06 <elliott> fizzie: That's the joke. :p
21:55:13 <elliott> You get the sponsorship screen one immediately too.
21:55:15 <elliott> And the main menu one.
21:55:29 <elliott> Flash people call all loaders "preloaders".
21:55:34 <fizzie> I guess.
21:55:42 <fizzie> "Preload" just makes it sound like something special.
21:55:55 -!- rodgort has joined.
21:56:14 <elliott> Phantom_Hoover: Guess how much SO rep I have (NO PEEKING). kallisti: Also you.
21:56:18 * elliott gloat.
21:56:20 * elliott goat.
21:56:36 <Phantom_Hoover> elliott, five tillion.
21:56:50 <elliott> Phantom_Hoover: NO BUT SERIOUSLY???? It's more than that I mean come on.
21:57:13 -!- copumpkin has joined.
21:58:35 <elliott> SHEESH.
22:00:38 <fizzie> "Clear! You Finished in 644 Seconds". Well, that was a nice and well-wasted ten minutes and a bit.
22:00:53 <fizzie> Also not much of a score. :p
22:01:29 <fizzie> The first time took quite a bit longer though.
22:02:35 <kallisti> elliott: all the rep
22:02:42 <elliott> kallisti: NO
22:02:43 <elliott> AS A NUMERIC
22:02:43 <elliott> VALUE
22:03:04 <kallisti> "100 goats"
22:03:08 <kallisti> Perl counts right?
22:03:22 <elliott> kallisti: AS ANEUREMNRCUMCIC
22:03:23 <elliott> VALUE
22:03:27 <kallisti> THIS IS A NUMERIC CONTEXT
22:03:28 <elliott> SITHHEAD!!!
22:03:28 <kallisti> THEREFORE
22:03:34 <kallisti> NUMERITC VALUE
22:03:49 <elliott> So... 100?
22:03:57 <kallisti> maybe
22:04:24 <elliott> fizzie: Ban kallisti.
22:04:30 <fizzie> Bankai.
22:04:39 <kallisti> for some reason the silent g in poignant unnerves me.
22:05:14 <fizzie> For some reason the murderous but bouncy insects of poing-ant unnerve me.
22:05:27 <elliott> @tell catseye Become cpressey dammit!
22:05:28 <lambdabot> Consider it noted.
22:05:37 <elliott> @tell cpressey FELIX IN ACTION: http://stackoverflow.com/a/8684400/1097181
22:05:38 <lambdabot> Consider it noted.
22:05:57 -!- zzo38 has joined.
22:06:23 <elliott> He's going to get that in like five years.
22:06:34 <kallisti> uh sorry Google I don't think pungent and poignant are synonyms.
22:07:05 <elliott> kallisti: GUESS A NAUMAAUMBUMBER
22:07:20 <kallisti> elliott: jiffreysnop
22:07:25 <elliott> Phantom_Hoover: UGUES A NUMBER
22:07:26 <kallisti> `words 25
22:07:33 <HackEgo> pappliatic engraphage poston mel jag esque beggy eite basto belocheta ant elufe baldank schesaun rec pula disan exha graphil henkehrbur escam sylhel trivabi embulbecom rejani
22:08:06 <Phantom_Hoover> 25
22:08:09 <Phantom_Hoover> 34946
22:08:26 <fizzie> "I bought Spiritual Survival During the Y2K Crisis last year at a Thrift Store and here is the bookmark that was left inside it: http://users.ics.tkk.fi/htkallas/diagrammatis.jpg" -- cracked.com. That's some serious religious research going on there. (Didn't want to direct-link their image.)
22:08:32 <elliott> Phantom_Hoover: NEITHER OF THOSE
22:08:37 <elliott> In fact it is between those.
22:09:01 <kallisti> > "elliott: " + (unwords $ map show [0..])
22:09:02 <lambdabot> No instance for (GHC.Num.Num [GHC.Types.Char])
22:09:03 <lambdabot> arising from a use of `GH...
22:09:09 <kallisti> > "elliott: " ++ (unwords $ map show [0..])
22:09:11 <lambdabot> "elliott: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 ...
22:09:16 <kallisti> elliott: here I've produced all the numbers
22:09:16 <elliott> fizzie: Is it bad that my first thought was "that would make good album art"?
22:12:50 -!- MSleep has joined.
22:14:30 <kallisti> I loved diagrams like this in my literature class
22:14:42 <kallisti> they were always a huge mess of lines and circles and vague concepts.
22:14:48 <zzo38> That diagram is difficult for me.
22:14:48 <lambdabot> zzo38: You have 5 new messages. '/msg lambdabot @messages' to read them.
22:14:56 <fizzie> kallisti: Did they always end up in "RELATIONAL ANARCHY !!" too?
22:15:00 <kallisti> no
22:15:10 <kallisti> they were usually about Freedom and Love and stuff like that.
22:15:26 <elliott> fizzie: Hey, you've DONE SOMETHING to zem.fi. (The non-zem.fi URL of that made me curious.)
22:15:41 <elliott> Also you have a host called β.zem.fi for some reason.
22:16:07 <kallisti> zzo38: it's a FSA, the initial state is Resekah (see the double circle)
22:16:19 <elliott> Ohh, I know what happened. fizzie was setting up a new computer and it asked for the hostname and he said "beta" but you know how it is with speech recognition.
22:16:52 <kallisti> also finnish accents.
22:16:55 <zzo38> kallisti: Doesn't it say "REBEKAH"?
22:17:05 <kallisti> zzo38: oh. yes
22:17:06 <fizzie> elliott: Yes, it's a bit messed up right now. With the faster-and-cheaper tubes came non-static IPs, and I didn't want to have the main "zem.fi" A record change all the time, so I put the local stuff into β.zem.fi which is a CNAME of a lower-TTL dynamically updated record, and let that prgmr VPS hold the main "zem.fi" thing. Maybe one day I'll put a website(tm) up there.
22:17:16 <kallisti> zzo38: I am bad at Bible.
22:17:18 <oerjan> in which elliott finally gouds [sp?] fizzie to use his op powers
22:18:03 <oerjan> *goad
22:18:17 <zzo38> Even if it is FSA, it is still difficult, there is all sorts of different lines, shapes, overlapping stuff, and so on.
22:18:23 <kallisti> "wandered off into a rape" huh, wonder how that happened.
22:18:27 <fizzie> elliott: Anyway, "beta.zem.fi" also works, I just had this weird hankering of some IDNs. It doesn't really work in e.g. this Chromium; since it thinks I don't read Greek, or some-such, it just shows "xn--nxa" instead of "β".
22:18:42 <elliott> fizzie: Apache's error message is where I saw it; it does the ponycode too.
22:18:48 <elliott> How "lame".
22:19:05 <kallisti> zzo38: Biblical characters are more difficult than computers.
22:19:14 <fizzie> Firefox whitelists by TLD, so IDNs in ".fi" get shown properly.
22:19:40 <fizzie> I don't think the TLD strategy really makes sense to apply for IDNy stuff in the not-the-second-level-domain-name.
22:19:59 <kallisti> the TLD kind of mystifies me...
22:20:12 <kallisti> like, what kind of server farm is handling all that traffic?
22:20:15 <elliott> fizzie: Maybe we should stop relying on visual appearance of glyphs for security. :p
22:20:20 <kallisti> or is that how it even works?
22:20:21 <elliott> kallisti: http://www.root-servers.org/
22:20:30 <elliott> kallisti: DNS results are cached at basically every level.
22:20:37 <elliott> Most requests you make won't ever get outside your ISP.
22:21:03 <fizzie> Firefox folks whitelist TLDs which have a published "policy" for either disallowing similar-looking glyphs, or dealing with the confusion.
22:21:08 <elliott> kallisti: But the root servers still get hammered with traffic most people can't even dream about because of bad configurations.
22:21:18 <elliott> (Do the root servers run on any special hardware config, I wonder, or just beefy commodity stuff?)
22:21:41 <fizzie> Some (many) of them are in anycast IPs that get routed to the nearest of N actual servers, at least.
22:21:52 <fizzie> And they don't run stock BIND from what I recall. :p
22:22:01 <zzo38> There is a mode to always show ASCII domain names. My program always show ASCII domain names anyways
22:22:11 <kallisti> elliott: how does my computer know where to send DNS queries to?
22:22:17 <elliott> kallisti: Your router tells it.
22:22:30 <elliott> Via DHCP.
22:22:31 <elliott> kallisti: Most likely it tells you to get your DNS results from your router.
22:22:39 <elliott> And your router talks to your ISP's DNS server.
22:22:40 <fizzie> http://en.wikipedia.org/wiki/Root_servers#Root_server_addresses -- 9 out of 13 are distributed to multiple places.
22:22:47 <kallisti> oh yes DHCP
22:22:51 <kallisti> that thing that also mystifies me.
22:22:54 -!- MSleep has changed nick to MDud.
22:22:58 -!- MDud has changed nick to MDude.
22:23:13 <fizzie> I see there's a K and I instance in Finland.
22:23:14 <elliott> kallisti: It's just a protocol for "hey, gimme an IP and a DNS server IP". :p
22:23:30 <elliott> It would be very awesome if every DNS query had to go through a single root server, to a TLD server, to a hosting company, though.
22:23:31 <kallisti> where does your router get the IP for the TLD?
22:23:38 <kallisti> ISP?
22:23:46 <elliott> kallisti: It doesn't, it just talks to the ISP.
22:23:51 <elliott> The ISP will know where the root servers are, of course.
22:23:54 <kallisti> ah okay.
22:23:58 <kallisti> that makes more sense.
22:24:06 <elliott> I believe it's only the tier-something ISPs that actually do DNS stuff, but don't quote me on that.
22:24:26 <fizzie> elliott: Those, and people like Vorpal who want to run their own DNSSEC-enabled resolvers. :p
22:24:36 <elliott> fizzie: Those whats?
22:24:38 <elliott> Oh, right.
22:24:47 <kallisti> elliott: how does my router know the IP for my ISP network hub thing.
22:24:51 * kallisti is so good at networking.
22:24:51 <elliott> fizzie: Vorpal has a measure of 0 or something.
22:25:02 <elliott> kallisti: Well, your router's sole purpose is kind of to talk to your ISP. :p
22:25:31 <fizzie> Initial DHCP request (before the client has an address at all) is sent to 255.255.255.255, and thus picked up by the DHCP server on the link.
22:25:42 <fizzie> DHCP also carries all kinds of random crap; my current ISP sticks NTP time server addresses there.
22:25:44 <kallisti> hm okay.
22:26:06 <kallisti> so it just broadcasts a DHCP request.
22:26:59 * kallisti is now wondering how broadcast addresses work.
22:27:09 * elliott decides to defer to fizzie now as he's exhausted his expertise.
22:27:32 <elliott> kallisti: The DHCP request probably doesn't go to every host on the internet, mind you :P
22:27:37 <kallisti> well yes
22:27:38 <fizzie> kallisti: That depends on what the IP's going over on. E.g. on Ethernet they're sent as broadcast frames, which are picked up by everyone on the link.
22:27:40 <kallisti> on the local network
22:27:42 <kallisti> er
22:27:44 <elliott> I'm pretty sure the ISP will just respond to any DHCP stuff addressed to 255.255.255.255.
22:27:44 <kallisti> the step above
22:27:46 <kallisti> the local network
22:27:49 <kallisti> or whatever
22:27:50 <elliott> That's sent over the wirezz.
22:27:56 <elliott> Oh, wait.
22:28:01 <elliott> I misread what kallisti was talking about.
22:28:11 <kallisti> ah okay that's how broadcast works.
22:28:18 <fizzie> And right, no-one routes 255.255.255.255 forward. It's just that the client doesn't know the network-specific broadcast address it should use at that point.
22:28:38 <elliott> fizzie: I think the inability to send packets to the entire internet is one of internetworking's greatest failures.
22:28:43 <elliott> I mean, multicast would be so simple.
22:29:02 <fizzie> elliott: Also you could then deprecate all other addresses, and then routing would be so simple too.
22:29:08 <kallisti> elliott: yes I agree I should be able to command my botnet to flood every router in the world with spam packets.
22:29:14 <elliott> fizzie: Yes.
22:29:23 <elliott> kallisti: Well, *one* packet to the entire internet would probably not do THAT much.
22:29:32 <elliott> (I don't know, maybe it would, ask fizzie.)
22:29:39 <kallisti> but I'm spamming packets constantly
22:29:42 <elliott> fizzie: Also we'd save so much space in IP packets, just drop the IP fields.
22:29:44 <kallisti> as fast as possible
22:29:50 <elliott> fizzie: And we'd never have to upgrade.
22:30:12 <kallisti> on (potentially) hundreds of network nodes (help I am bad at network terminology)
22:30:29 <elliott> WHOLE HUNDREDS?
22:30:31 <kallisti> YES
22:30:33 <elliott> That's some mighty big botnet, dude.
22:30:33 <kallisti> HUNDREDS
22:30:37 <kallisti> THOUSANDS MAYBE
22:30:43 <kallisti> how big do botnets get?
22:30:53 <elliott> Storm: 160,000 to 50 million.
22:30:57 <elliott> kallistinet: HUNDREDS TO THOUSANDS
22:31:12 <elliott> (The Storm estimates are a bit... wide: "Some have estimated that by September 2007 the Storm botnet was running on anywhere from 1 million to 50 million computer systems.[1][2] Other sources have placed the size of the botnet to be around 250,000 to 1 million compromised systems. More conservatively, one network security analyst claims to have developed software that has crawled the botnet and estimates that it controls 160,000 infected computer
22:31:12 <elliott> s.")
22:31:35 <fizzie> kallisti: Anyway, after it's gotten an IP once, as long as the "lease" for the IP it gets is still valid (those tend to be valid for a day or so), the DHCP client keeps just periodically contacting the DHCP server it knows about and saying "is it okay if I keep this address a bit longer?", and the initial "I don't know who I am and where I am" discovery process doesn't really happen except if the router's been off-link for a long while. (I do think the
22:31:35 <fizzie> clients also ask about expired leases if they're not *too* old.)
22:32:16 <fizzie> I guess if you were a dicky DHCP server you could enforce non-stable addresses, though.
22:32:43 <fizzie> "No, no, you've had that address for like a week already, give someone else a turn with it. Share and enjoy!"
22:32:51 <elliott> Someone link to that vulgar DNS comic, that will answer every question.
22:33:07 <kallisti> "the operators of the botnet began to further decentralize their operations, in possible plans to sell portions of the Storm botnet to other operators."
22:33:12 <kallisti> I would totally buy a botnet.
22:33:26 <fizzie> Think about all the bitcoins you could mine.
22:33:52 <elliott> Storm could easily take over the bitcoin network even if it's only 160k strong, couldn't it?
22:34:03 <elliott> I mean, you only need to control over half the nodes to completely break the chain thing, IIRC.
22:34:15 <fizzie> Also it would be awesome if the bitcoin mining earning potential would be >= the botnet rent you have to pay. Doesn't sound too likely, though.
22:34:31 <elliott> Failing that 160k to 50 million computers with ordinary CPUs and maybe even semi-decent GPUs is... pretty powerful.
22:34:36 <kallisti> botnet rent?
22:34:44 <kallisti> what if I just /buy/ it.
22:34:49 <elliott> BBC did that.
22:35:01 <elliott> http://news.bbc.co.uk/1/hi/programmes/click_online/7938201.stm
22:35:03 <fizzie> From what I've understood, normally people just rent.
22:35:06 <elliott> The most legal thing.
22:35:13 <kallisti> elliott: dude if I get botnet what do?
22:35:35 <elliott> kallisti: Use it to take down the spammers you work for.
22:35:54 * elliott idly dreams of using Storm to DDOS spammers.
22:36:05 <kallisti> shhh, you're not supposed to talk about that.
22:36:30 <elliott> But I did!
22:36:38 <elliott> Maybe I was JOKING.
22:36:43 <kallisti> MAYBE
22:36:45 <elliott> Maybe you just RUINED IT and INCRIMINATED YOURSELF.
22:36:55 <kallisti> maybe I was joking too, huh?
22:38:08 <kallisti> elliott: I wonder if Storm has ever DDOS'd 4chan
22:38:55 <elliott> kallisti: You realise they're used for money-making illegal activities, not for shits and giggles.
22:39:04 <kallisti> yes
22:39:55 -!- shachaf has joined.
22:40:08 <kallisti> I find the software behind such a system fascinating, despite its purpose.
22:41:01 <fizzie> I wonder if the good old Back Orifice still exists.
22:41:14 <kallisti> that it reacts to repeated malware requests by launching a DOS attack. I imagine it's also capable of patching itself otherwise it would quickly disappear.
22:41:57 <fizzie> It used to be so that you could just probe dialup network ranges with the standard BO port, and find about three to five computers with that wide open within each /24.
22:42:05 <fizzie> Presumably it's all more professional now.
22:42:19 <Vorpal> <elliott> I believe it's only the tier-something ISPs that actually do DNS stuff, but don't quote me on that. <-- looking at the DHCP config my ISP has it's own one
22:42:40 <Vorpal> <elliott> The ISP will know where the root servers are, of course. <-- that is a "well known" list
22:42:53 <elliott> Yes, it is.
22:42:56 <fizzie> Everyone *has* a DNS server, but it's anyone's guess whether they forward to their transit providers, or do full recursive queries themselves.
22:43:15 <elliott> What the fizzie bot said.
22:43:20 <Vorpal> fizzie, right
22:44:53 <elliott> :t replicate
22:44:54 <lambdabot> forall a. Int -> a -> [a]
22:46:19 <fizzie> Incidentally, the root servers only tell resolvers where each TLD's own name servers are. So [ABCDEFGHIJKLM].root-servers.net only answers queries of the form "where's .fi?" by saying "at [abcdefghi].fi, with these IP addresses", and then those servers handle all queries of "so where's foo.fi then?"
22:46:59 <elliott> fizzie: I want to see traffic statistics/hardware info, but am too lazy to google. :(
22:47:01 <fizzie> .com and .net are both hosted on [abcdefghijklm].gtld-servers.net, while .org is on Afilias' nameservers, and so on.
22:47:41 <fizzie> "A survey in 2003 [2] reports that only 2% of all queries to the root servers were legitimate. Incorrect or non-existent caching was responsible for 75% of the queries, 12.5% were for unknown TLDs, 7% were for lookups using IP addresses as if they were domain names, etc. Some misconfigured desktop computers even tried to update the root server records for the TLDs."
22:47:47 <fizzie> Most of what they get is just crap. :p
22:48:03 -!- derdon has quit (Remote host closed the connection).
22:48:22 <fizzie> [2] is a link to report titled "Wow, That's a Lot of Packets".
22:48:50 <fizzie> "Organizations operating Root DNS servers report loads exceeding 100 million queries per day." --Wow, That's a Lot of Packets.
22:49:13 <fizzie> It looks stupid in an attribution line like that.
22:49:26 -!- sebbu2 has joined.
22:49:26 -!- sebbu2 has quit (Changing host).
22:49:27 -!- sebbu2 has joined.
22:49:50 -!- sebbu has quit (Ping timeout: 255 seconds).
22:49:50 <oerjan> we shall now have to make a report titled "It looks stupid in an attribution line like that."
22:49:58 <elliott> fizzie: What, only 100 million?
22:50:08 <elliott> How big's a DNS query this side of Neptune?
22:50:13 <Vorpal> elliott, per root server I presume?
22:50:42 <fizzie> Mostly they're a single UDP packet, so less than 1500 bytes.
22:50:58 <elliott> So 140 gigabytes a day at the worst.
22:51:00 <kallisti> "A second variant of the virus, discovered in December 2008, added the ability to propagate over LANs through removable media and network shares.[18] " -- Conficker article
22:51:01 <elliott> Pfft.
22:51:03 <kallisti> that's... insane.
22:51:11 <Vorpal> elliott, "exceeding" it says
22:51:12 <Vorpal> hm
22:51:24 <elliott> Vorpal: Anything under a terabyte a day is peanuts!! :P
22:51:34 <Vorpal> true
22:51:55 <elliott> I mean, that's only 1.7 megs/sec.
22:51:58 * kallisti puts flash drive in infected computer and is now carrying a computer virus with him to any other computer he uses.
22:52:13 <Vorpal> elliott, root servers has an easy job really. The hard work is for TLD servers I expect
22:52:15 <elliott> kallisti: This is why you always wear a condom.
22:52:32 <kallisti> is that code for linux?
22:52:33 <elliott> Vorpal: Yes, let's get fizzie to dig up TLD server reports.
22:52:46 <Vorpal> elliott, I didn't say that
22:53:00 <fizzie> There's a well-known traffic amplification attack, to flood DNS servers with a very short query which generates a very long response, and a spoofed source address. If the answer is (say) 50 times longer than the query, if you send a megabyte's worth of queries per second, the spoofed source will get 50 megabytes/sec of spurious DNS answers from all around the interwebs.
22:53:09 <elliott> Vorpal: No, I was being serious, let's.
22:53:12 <Vorpal> elliott, but anyway on properly configured systems stuff like .com .net and so on will be cached pretty quickly
22:53:24 <elliott> fizzie: That sounds fun. Is that practical these days?
22:53:31 <Vorpal> elliott, there are many more entries under .com than under the root
22:53:40 <Vorpal> thus I expect much much higher load there
22:54:23 -!- oerjan has quit (Quit: Good night).
22:54:30 <fizzie> Oh, I'm sure it still works up to some degree, though maybe not quite that well. You do need to find "open resolver" style DNS servers.
22:55:51 <fizzie> And I'm pretty sure responsible such (like, say, Google's ones, which probably have fat pipes) have some sort of "do not send more than K packets/second to a single client" limits.
22:56:32 <fizzie> It's not like DNS traffic in a regular situation should consume much bandwidth at all.
22:57:16 <elliott> Unless you're using BITTORRENT OVER DNS.
22:57:25 <elliott> Oh. http://www.netrogenic.com/dnstorrent/
22:57:34 <elliott> Aw, it just works for .torrent files.
22:57:35 <elliott> Not the data itself.
22:57:57 <Vorpal> elliott, wait you joked about it and didn't know it existed?
22:58:18 <elliott> Well... yes.
22:58:30 <Vorpal> ah
22:58:31 <fizzie> You can do "IP over DNS" to use (some) non-free Wifi networks without paying.
22:58:40 <Vorpal> heh
22:58:43 <fizzie> They can't block all DNS traffic, or their own login pages wouldn't work.
22:58:53 <zzo38> fizzie: Yes I have thought of the same kind of idea
22:58:57 <elliott> Oh, how shocking, the dot-p2p thing doesn't load any more.
22:59:02 <kallisti> reading the Wikipedia article on Conficker is like "How to write a botnet: the book"
22:59:04 <fizzie> If they do happen to allow arbitrary DNS traffic, as long as you have a cooperative name server somewhere, you can talk over that.
22:59:09 <zzo38> Actually, even for use with ones that you do not ordinarily have to pay.
22:59:15 <zzo38> In case the login page won't work
22:59:31 <fizzie> http://thomer.com/howtos/nstx.html
22:59:34 <fizzie> That's the old thing.
22:59:38 <zzo38> Or in case some other things are blocked for some reason
23:00:10 <fizzie> And the linked-to iodine is a newer thing.
23:00:37 <fizzie> Packaged in Debian and everything.
23:00:53 <fizzie> It's sort of impolite for the DNS server, though.
23:01:08 <fizzie> Well, and impolite for the network operator too, of course, especially if they expect people to pay.
23:01:27 <Vorpal> heh
23:01:36 <fizzie> But at least one of the systems (maybe NSTX?) caused quite huge loads on (at least some) DNS servers.
23:01:54 -!- Ngevd has quit (Ping timeout: 240 seconds).
23:02:01 <fizzie> Possibly iodine tries to reduce that, I haven't checked.
23:03:23 <Vorpal> was looking at the current daily deals. This one sounds like it has a pretty wide scope: "Universe Sandbox"
23:03:26 <Vorpal> elliott, ^
23:04:10 <Vorpal> some pretty good stuff in the deals today though. 75% off all GTA games for example
23:05:23 <zzo38> One one WiFi that says "Free WiFi (except HTTP, HTTPS, MSN, and people who smoke inside this building while using this WiFi service)"
23:06:42 <Vorpal> so you could just ssh tunnel
23:07:08 <zzo38> Well, yes, you could use SSH tunnel.
23:07:29 <zzo38> If you don't have one then too bad
23:07:50 <fizzie> I seem to hear "AirPort Network", "JepJepJoo", "Macverkko", "THOMSON", "TS", "zuHause" and "ZyXEL" to my desk. These are all other people's private networks, though. (Except the THOMSON one in fact seems open. Curious.)
23:08:28 <zzo38> (Except for smoking is not allowed even SSH tunnel, because that is due to smoking laws instead of internet)
23:08:57 <fizzie> Oh, there's also "jepjep" in addition to "JepJepJoo". Wonder if those are related.
23:09:19 <fizzie> And the "zuHause" folks must be Germans, probably planning to burn down the building.
23:09:50 <Vorpal> fizzie, I can see 44 networks if I place my laptop in the window
23:09:53 <Vorpal> otherwise around 12
23:10:12 <Vorpal> fizzie, there are no networks around here on channel 13 though so I picked that one
23:10:16 <fizzie> There's a different set in different rooms.
23:10:21 <Vorpal> well yes
23:10:33 <fizzie> Channel 13's one of those that are not valid globally, IIRC.
23:10:55 <Vorpal> also this is is not a very urban area. Villaområde, whatever that is in English
23:11:07 <Vorpal> fizzie, exactly
23:11:14 <Vorpal> it is valid in Sweden though
23:11:35 <fizzie> Also in Finland.
23:11:56 <fizzie> "Except not on Fridays, due to bad luck." (Okay, not really. But wouldn't that be screwy?)
23:12:36 <zzo38> I suppose if you want to, you could make a WiFi network that disables channel 13 on Friday
23:13:10 <Vorpal> ...
23:13:57 <fizzie> Apparently the regulatory situation for the 5 GHz channels is ever more complicated than for regular old 2.4 GHz.
23:14:38 * Sgeo_ wonders if Befunge-98 is easier to implement in Haskell due to laziness
23:14:54 <Sgeo_> A whatever by whatever array that defaults to 0 or something
23:15:12 <Sgeo_> ...is defaults to 0 a sensible thing for Haskell arrays to do
23:15:21 <fizzie> It should default to 32, anyway. :p
23:15:42 <Vorpal> fizzie, heh
23:15:47 <Sgeo_> Although hmm, would it try to store every box in memory at once, that's no good
23:15:47 <Vorpal> fizzie, well I have a 11g network
23:16:09 <fizzie> And I don't really think functional datastructures are "easier" (than what?), based on how long it seems to take for elliott to finally finish that CCBI-killing Fungespace for Shiro. :p
23:16:30 <fizzie> The new VDSL2 box does some 11n stuff.
23:17:05 <fizzie> With 50M downstream, it probably doesn't help all that much, though; and anyway the old iBooks and the N900 don't do 11n either.
23:17:39 <fizzie> (Except that according to speedtest.net I seem to be getting around 68M downstream, I don't know what's up with that. Not that I'm exactly complaining.)
23:23:39 <fizzie> The box has a statistics page with byte counters that seem to be saturating 32-bit, because the numbers are stuck at 2147483647. I'm not sure if that's better or worse than 32-bit with wraparound. At least there (if you poll often enough) you can compute running totals yourself.
23:23:46 <kallisti> fizzie: ooooh wicked burn
23:24:22 <fizzie> kallisti: Yes, I'm expecting like eight pointed comments about speech recognition in retaliation.
23:24:38 <kallisti> fizzie: well I think the issue was that he was inventing a non-standard data structure from scratch, iirc.
23:27:24 -!- olsner has joined.
23:27:39 <kallisti> I guess a "non-functional" data structure in the context of Haskell would be, say, an opaque pointer to a mutable array.
23:28:09 <kallisti> basically a non-ADT
23:30:23 <elliott> Back.
23:30:25 -!- Patashu has joined.
23:31:00 <elliott> <fizzie> And I don't really think functional datastructures are "easier" (than what?), based on how long it seems to take for elliott to finally finish that CCBI-killing Fungespace for Shiro. :p
23:31:25 <elliott> fizzie: Only because I'm trying to do an extreme optimisation while staying pure and immutably.
23:31:28 <elliott> *immutable
23:31:50 <elliott> If I wasn't trying to emulate Oleg, it'd be done in the 3 days Shiro 1 was. :p
23:32:45 <elliott> <Vorpal> was looking at the current daily deals. This one sounds like it has a pretty wide scope: "Universe Sandbox"
23:32:46 <elliott> Vorpal: Olde
23:33:14 <elliott> <fizzie> Oh, there's also "jepjep" in addition to "JepJepJoo". Wonder if those are related.
23:33:18 <elliott> Warring Wi-Fi clans.
23:33:24 <elliott> <Vorpal> fizzie, I can see 44 networks if I place my laptop in the window
23:33:30 <elliott> Vorpal: I thought you lived in nowheretown.
23:34:09 <elliott> Sgeo_: Anyway, the problem with constructing fungespace up-front is that just moving through spaces allocates unfreeable memory.
23:34:18 <elliott> Only inserts should do that, preferably.
23:35:06 <elliott> Phantom_Hoover: Guess how many reps out of 200 I made today!
23:35:10 <kallisti> 200!
23:35:27 <elliott> Wrong! The correct answer is 305.
23:35:47 <olsner> 305? that's not over 9000, nor is it (probably) numberwang
23:35:52 <shachaf> > product [1..200]
23:35:53 <lambdabot> 788657867364790503552363213932185062295135977687173263294742533244359449963...
23:36:05 <shachaf> kallisti clearly thinks highly of you, elliott.
23:36:17 <elliott> shachaf: That was yesterday.
23:36:35 <shachaf> Oh, today isn't over yet?
23:36:45 <shachaf> Do you know what I hate, by the way?
23:36:54 <elliott> Happiness?
23:36:59 <olsner> perl?
23:37:01 <olsner> python?
23:37:01 <elliott> Relational databases?
23:37:04 <shachaf> People who make "you said <number> exclamation mark therefore you meant factorial ha ha ha!" jokes.
23:37:17 <elliott> Yes, I too hate at least one person who has made one of those jokes.
23:37:17 <olsner> i.e. elliott
23:37:27 <elliott> olsner: I'm way above that, man.
23:37:33 <shachaf> It's exactly the same joke each time.
23:37:37 <elliott> OK, slightly above.
23:38:36 <shachaf> Turns out the server running my IRC client was down.
23:39:08 <kallisti> why do you have a server running your IRC client?
23:39:11 <elliott> This is why reasonable people IRC directly; then when their IRC server is down, they can't use their computer at all.
23:39:31 <shachaf> I kept thinking the network I'm using was blocking outgoing SSH connections.
23:39:37 <shachaf> Which it *was*, some of the time, I think.
23:41:57 <shachaf> Now I need to reörder all my channels.
23:41:58 <shachaf> Ugh.
23:42:04 <shachaf> Did that Unicode character not go through?
23:42:26 <shachaf> The one between "re" and "rder".
23:42:39 <olsner> worked for me yes
23:42:41 <olsner>
23:42:47 <elliott> Worked.
23:42:55 <shachaf> Doesn't work here.
23:42:58 <shachaf> Great.
23:43:06 <shachaf> Now even most of Unicode is broken.
23:45:31 <olsner> well, obviously... everything is broken you see
23:52:23 <zzo38> If you have viewed the Agora Horoscope, have you wondered what all those lines on the chart are doing, what the numbers are doing, what "Placidus houses" means, why the glyphs for Pluto and Uranus are different to what you knew before, and what "Node" means?
23:54:56 * Phantom_Hoover → sleep
23:54:58 -!- Phantom_Hoover has quit (Quit: Leaving).
23:55:10 <elliott> Pfft, it's not even midnight.
23:55:21 <zzo38> At least, in here is not even midnight.
23:59:16 <zzo38> ?messages
23:59:16 <lambdabot> itidus21 said 8d 17h 14m 9s ago: welcome back
23:59:16 <lambdabot> itidus21 said 8d 17h 13m 17s ago: it was funny for me at the time since you were joining and leaving at a high rate. but the joke has expired
23:59:16 <lambdabot> oerjan said 5d 14h 14m 1s ago: btw, fmap' shows that T is also a contravariant functor in its first argument.
23:59:16 <lambdabot> oerjan said 12h 35m 26s ago: <zzo38> When looking at the continuation monad definitions, I notice it seems to be similar to the type for double nots <-- http://en.wikipedia.org/wiki/Curry%E2%80%
23:59:16 <lambdabot> 93Howard_correspondence#Correspondence_between_classical_logic_and_control_operators is probably relevant
23:59:18 <lambdabot> kallisti said 11h 52m 25s ago: I recall that you were interested in giving Haskell a more extensible syntax. If you look at Perl 6 you can see that it provides a way to redefine language syntax.
23:59:20 <lambdabot> Perhaps you could look at this for inspiration on how this could be done in Haskell.
23:59:34 <kallisti> lolwat
23:59:40 <kallisti> oh right
23:59:50 <zzo38> ?messages
23:59:50 <lambdabot> You don't have any new messages.
←2011-12-29 2011-12-30 2011-12-31→ ↑2011 ↑all