00:01:36 <tazjin> stepkut: I can't think of more than 2 cons for Hamlet, any ideas? :P
00:02:49 <stepcut> tazjin: the wacky syntax, and the fact that the haskell expressions you can embed are rather limited, and that it is only good for generating blaze-html ?
00:03:02 <tazjin> > wacky syntax
00:03:03 <lambdabot>   Not in scope: `wacky'Not in scope: `syntax'
00:03:08 <tazjin> But it's almost HTML
00:03:12 <tazjin> I don't consider that a wacky syntax
00:03:30 <tazjin> I like it a *lot* more than blaze :P
00:03:45 <stepcut> I like it more than blaze, but less than hsx, which is even more HTMLy
00:07:20 <tazjin> Hmm, listing cons is hard. I'm not sure about whether the limited set of embeddable expressions is a con, because it limits the "mixing application-logic and view code" problem
00:07:50 <tazjin> What do our Yesod friends think about this .. *pokes luite*
00:08:26 <stepcut> mixing is something that should be left up to the developers, not some artificial limitation
00:09:13 <stepcut> you can't force people to write good code
00:09:21 <stepcut> but you can prevent them from doing it
00:09:34 <luite> tazjin: sorry i missed the discussion. I'm personally in favour of adding better haskell support to hamlet
00:10:14 <tazjin> Hmm, I think I'll take a neutral stance and will neither add a pro nor a con for this :P
00:10:16 <stepcut> practically speaking, it is easier to use web-routes with HSX than hamlet, because HSX allows you to embed arbitrary monads, so you can use the RouteT monad directly and write, <a href=SomeRoute>some route</a>, even though HSX itself knows nothing about web-routes
00:10:30 <stepcut> in hamlet, support for type-safe routes had to be baked in
00:10:35 <luite> tazjin: an often heard con of hamlet is that it's different enough from html that existing code highlighting breaks
00:10:47 <luite> and that you can't just paste html snippets
00:11:42 <stepcut> the biggest con of HSX over hamlet is that, right now, it can generate some pretty horrible error messages (though, their bark is worse than their bite). Though, I have proposed a possible fix for that to niklas. Also the haskell-src-exts GSoC project will help with that as well
00:11:46 <tazjin> Oh yeah, and in addition to that QuasiQuotes generally destroy all syntax highlighting in a Haskell file
00:12:10 <luite> bah blame your stupid haskell highlighter instead ;p
00:12:26 <stepcut> tazjin: depends on your editor -- donri says that his vim mode actually does better  with the QQ stuff because it clearly delimits the boundaries
00:13:06 <tazjin> Oh right, I wanted to try that - he sent it to me. I'm using Sublime Text most of the time and vim only when I'm watching TV shows
00:13:40 <luite> vim when watching tv shows? that's interesting
00:16:32 <tazjin> luite: http://cl.ly/G5qh
00:17:19 <stepcut> tazjin: ha! I was going to ask if you were using alpha transparency or two screens
00:17:45 <luite>  hehe
00:17:55 <luite> i don't watch tv shows so i use emacs ;p
00:18:14 <tazjin> I tried using my second monitor for it but that was a lot more distracting :P
00:18:21 <tazjin> Somehow I'm still very productive with this setup
00:18:28 <luite> btw don't you have haskell problems with that horrible os you seem to be running :p
00:18:35 <stepcut> I think by the end of summer, there will be very few reasons to use hamlet over hsx
00:18:38 <stepcut> that is my goal anyway :)
00:19:11 <tazjin> luite: No, why would I? :P
00:19:24 <stepcut> ACTION uses X11+xmonad on OS X to connect to a linux box for development while using OS X for everything else
00:19:27 <luite> oh because ghc seems to be kind of buggy here on OS X
00:19:42 <tazjin> Hrmm, not at all for me
00:20:00 <stepcut> luite: hard to use netflix and spotify under linux though.. which are important development tools ;p
00:20:03 <tazjin> stepcut: You run xmonad on OS X? That's interesting. Can you take a screenshot?
00:20:14 <stepcut> tazjin: I do, but only for X11 apps obviously
00:20:15 <luite> stepcut: hmm, i don't have either
00:20:20 <stepcut> ACTION googles how to take a screen shot again
00:20:23 <luite> don't think netflix is available here
00:20:29 <tazjin> CMD+Alt+3
00:20:31 <luite> spotify probalby is
00:20:49 <stepcut> that will do fullscreen ?
00:20:51 <tazjin> luite: Where are you from?
00:21:12 <luite> netherlands
00:21:34 <tazjin> It's available there :P
00:21:53 <tazjin> Go get it, it's one of the best inventions since  hrmm *meditates*
00:21:55 <luite> netflix.com says that it's not yet available
00:22:00 <tazjin> No, Spotify
00:22:10 <luite> oh right, yeah i knew that
00:22:42 <tazjin> and @stepcut: Yeah, +3 is fullscreen. +4 is sizeable area, +4 + space -> window selector
00:27:56 <stepcut> tazjin: -SHIFT-3
00:28:06 <tazjin> Oh sorry, right, yeah
00:28:06 <stepcut> at least it was for me
00:28:17 <tazjin> I just press keys, I don't usually type their names :P
00:32:10 <stepcut> http://i.imgur.com/J5Gjl.png
00:32:25 <alpounet> stepcut, yay, another spotify user!
00:32:35 <stepcut> :)
00:33:31 <tazjin> stepcut: Interesting. Also, is that the blog post about the new routing system? :P
00:33:56 <stepcut> yup
01:43:47 <stepcut> tazjin: arrows and categories and RankNTypes, oh my!
13:38:26 <donri> stepcut: http://darcsden.com/dag/happstack/changes
13:38:55 <donri> stepcut: i was thinking we should make it easier to store the key in acid-state
13:39:00 <donri> stepcut: but Key has a macKey :: ByteString -> Skein_512_256
13:39:07 <donri> stepcut: can you make safecopy instances for functions?
13:44:35 <stepcut> you can not make safecopy instances for functions
13:45:02 <donri> i'll file a bug and ask if that's necessary
13:45:44 <stepcut> k
13:46:00 <donri> i suspect the idea is to make it harder to compromise the key, maybe
13:46:09 <donri> not sure
13:48:30 <stepcut> is there anything else we want to change before making a new release? More haddock comments is the only thing I can  think of
13:53:17 <donri> can't think of anything
16:06:36 <stepkut> donri: I am send a hackage package deprecation request.. so far I am listing, happstack-facebook, formlets-hsp, web-routes-mtl, and web-routes-transformers.. can you think of anything else ?
16:07:00 <stepkut> yesod-core maybe ? :p
16:07:39 <stepkut> oo
16:07:49 <stepkut> happstack-{util|data|state|ixset}
16:14:44 <donri> getting rid of the competition are we
16:15:27 <donri> there are packages that are not yours/"ours" too that are really quite outdated
16:15:34 <donri> happstack-{auth,helpers}?
16:16:24 <stepkut> I am not the maintainer for those.. so I would have to ask.
16:16:39 <stepkut> I suspect that patch-tag still uses happstack-helpers :p
16:17:09 <donri> it runs on happstack 5 eh
16:17:13 <stepkut> ah
16:18:08 <donri> stepkut: web-routes-regular, is it deprecated or merely "not preferred"?
16:18:25 <stepkut> donri: mostly it is 'I don't use it'
16:24:51 <donri> maybe just change the description to recommend -th and -boomerang instead
16:25:12 <stepkut> yeah
16:25:38 <donri> btw i find when using -th i want it to be hyphenated-lowercase
16:26:07 <donri> ShowPage Int -> /show-page/x
16:26:28 <stepkut> it is ambiguous
16:26:46 <donri> i don't see how?
16:27:04 <stepkut> hmm. the hyphen version isn't actually..
16:27:13 <donri> hyphen is illegal in identifiers and value constructors must be Capital cased
16:27:18 <stepkut> yeah
16:27:53 <stepkut> ShowPage -> 'showpage' && Showpage -> 'showpage' would be trouble. But with the hyphen it works fine.
16:27:56 <donri> and if you have PageURL it becomes page-u-r-l :D
16:28:25 <stepkut> I think it would be neat if you could pass some transformation rules to derivePathInfo .. but I have not figured out how to do that yet
16:28:41 <stepkut> donri: ah..
16:28:41 <stepkut> donri: that is trouble :)
16:28:59 <donri> shrug, we could have a derivePathInfoLC separately
16:29:32 <stepkut> or $(derivePathInfo 'classic ''Foo) ?
16:29:39 <donri> or that
16:30:13 <donri> or call them like, 'verbatim and 'pretty :)
16:30:18 <stepkut> I would definitely like to see some way to make derivePathInfo more extensible, customizable
16:30:23 <stepkut> yeah
16:31:08 <donri> we could make PageURL be page-url and accept the ambiguity with the argument that you won't mix case style within one type
16:31:22 <donri> data Troll = PageURL | PageUrl
16:31:28 <stepkut> or maybe we just need an algorithm that is both pretty and safe such that you wouldn't really care to do something else
16:32:03 <donri> of course, relying on the programmer not being stupid is anti-haskell
16:32:19 <stepkut> :)
16:32:33 <stepkut> well, it is TH code.. we can detect that case at compile time
16:32:43 <stepkut> we know all the constructors, so we can check for collisions
16:32:44 <donri> true :P
16:33:18 <donri> and then we could revert to page-u-r-l to avoid it!
16:33:34 <stepkut> or tell the programmer to get their act together
16:33:35 <donri> feels kinda insane, but might be just what we actually want. duno.
16:34:25 <stepkut> if we do something to handle potential collisions at compile time.. I would very much consider making this the default behavior for derivePathInfo
16:34:40 <stepkut> the current implementation is correct -- but ugly enough that people notice
16:34:55 <donri> yea. it's not *really* important because -th is mostly for development
16:35:07 <donri> but it's still annoying to see that ugliness ...
16:35:08 <donri> :P
16:35:09 <stepkut> your proposal is much prettier.. and can be made correct, even if it looks a bit silly in the rare collision cases
16:35:24 <stepkut> well, -th is mostly for development.. because what it generates is so ugl
16:35:26 <stepkut> ugly
16:35:39 <donri> (and if made pretty, maybe -th could actually be good enough for simple apps)
16:35:49 <stepkut> if you know the transformation rules, you might design your type names such that the mapping is fine
16:37:07 <stepkut> what would be extra neat, is if you could do derivePathInfo and get reasonable defaults, but then do, (''SomeConstructor, toFunc, fromFunc) to override specific constructors
16:37:42 <stepkut> I really like the lower-case hyphen proposal though..
16:37:44 <stepkut> make it so!
16:39:38 <donri> i'll have a look later, dinner now!
16:41:31 <stepkut> sweet!
17:02:53 <LambdaDusk> ACTION looms.
17:03:28 <stepkut> :)
17:04:04 <LambdaDusk> I am making progress!
17:04:06 <LambdaDusk> I think
17:04:08 <LambdaDusk> I am not sure
17:04:16 <LambdaDusk> how can you tell with haskell?
17:04:27 <stepkut> :)
17:04:43 <LambdaDusk> I changed to acid-state
17:04:46 <stepkut> nice
17:05:34 <LambdaDusk> and spent the day to wire in the type
17:05:44 <stepkut> is that good or bad?
17:06:28 <LambdaDusk> I hope it's good because I have spend 6 hours on it
17:06:31 <LambdaDusk> and now
17:06:35 <stepkut> :)
17:06:37 <LambdaDusk> I am stuck once again
17:06:39 <stepkut> oh ?
17:06:56 <LambdaDusk> I also went open source: https://github.com/scan/ponyfolder
17:07:06 <LambdaDusk> anyway, I want to use web-routes
17:07:15 <LambdaDusk> I am not sure if I must, but I think I should
17:07:22 <stepkut> k
17:07:30 <stepkut> you don't have to.. but I think it is a good idea
17:08:20 <LambdaDusk> So do I
17:08:22 <LambdaDusk> but
17:08:31 <LambdaDusk> I have made 2 tries to wire it in
17:08:34 <LambdaDusk> both failed
17:08:37 <stepkut> hmm
17:08:57 <LambdaDusk> I don't want to rewrite my Monad entirely because I spend so much time working on it
17:09:06 <LambdaDusk> But i need to add RouteT, I think
17:09:16 <stepkut> yeah.. that should not be a big deal
17:09:20 <LambdaDusk> which is not the problem as such
17:09:22 <stepkut> newtype PonyServerPartT e m a = PonyServerPart (RouteT SiteMap (RWST PonyContents () PonySession (ServerPartT (ErrorT e m)) a))
17:09:31 <LambdaDusk> yep
17:09:42 <LambdaDusk> and then how to change runPonyServer?
17:10:02 <LambdaDusk> I couldn't figure it out, unfortunately
17:10:10 <stepkut> one moment
17:11:43 <LambdaDusk> I think I need to pull the runPonyServer into the Main.hs, too
17:12:20 <LambdaDusk> because I need the monad type in my handlers and I need the handlers to run the Server if I use RouteT
17:13:23 <stepkut> http-enumerator is deprecated btw, you should use http-conduit now
17:14:28 <LambdaDusk> oh really
17:14:39 <stepkut> yup
17:14:41 <LambdaDusk> I thought enumerator is happstack?
17:14:49 <LambdaDusk> then I can use authenticate, too
17:15:49 <stepkut> happstack does not use enumerator
17:15:55 <stepkut> there is a happstack-authenticate library
17:16:01 <stepkut> which uses authenticate
17:17:27 <LambdaDusk> "The requested resource was not found: no such package 'happstack-authenticate'"
17:17:36 <stepkut> it is not on hackage yet
17:17:47 <LambdaDusk> oh ok
17:18:04 <stepkut> darcs get http://src.seereason.com/happstack-authenticate/
17:18:15 <stepkut> it used to be listed on the old website, guess I did not add it to the new one yet
17:18:16 <LambdaDusk> happstack uses conduit or something else?
17:18:21 <stepkut> nope
17:18:30 <stepkut> happstack uses plain-old lazy IO for the moment
17:18:35 <stepkut> we are looking to switch to pipes
17:18:44 <stepkut> but first the next version of pipes has to come out
17:18:45 <luite> what's the status of exception and early termination handling in pipes, is there an acceptable slution now?
17:19:06 <stepkut> luite: dunno, I am waiting for the other pipes library to come out first
17:19:18 <luite> the not -core version?
17:19:23 <stepkut> yeah
17:19:47 <luite> conduit had a number of fairly subtle bugs regarding lazyness, memory leaks, buffering and exceptions :(
17:20:03 <stepkut> yup
17:20:31 <LambdaDusk> so, uh, any idea so far?
17:21:23 <luite> i think they've been solved now, but i wonder what pipes will get, perhaps the design is a bit better
17:21:33 <stepkut> LambdaDusk: one moment, I was installing the build dependencies
17:21:46 <LambdaDusk> ok no problem
17:24:33 <LambdaDusk> let me get this, aren't enumerator, conduit and pipes basically to solve the same problem?
17:24:41 <stepkut> yup
17:25:06 <stepkut> it's a hard problem to solve :)
17:25:27 <LambdaDusk> I see
17:25:36 <LambdaDusk> why was enumerator insufficient?
17:26:44 <luite> for yesod is was insufficient because it didn't have a good way to handle exceptions, without running the whole web application in the enumerator monad transformer
17:27:11 <LambdaDusk> I remember I read about that
17:28:19 <donri> luite: doesn't it also fail to finalize resources early?
17:29:48 <luite> oh right, that's another one, but i'm not sure if a complete replacement would've been required to do that
17:31:08 <LambdaDusk> and lazy is not sufficient because it uses exponential memory
17:34:29 <luite> oh hadn't heard about that
17:34:42 <luite> but it gives you much less control about exceptions and finalization in any case
17:34:43 <donri> duno but lazy IO has other issues
17:35:35 <LambdaDusk> I think I read that somewhere, that a lazy datastructure can use a lot more memory than a strict despite being fully evaluated
17:35:56 <donri> for example readFile will hit the FS every time you ask for a Char, rather than first reading the whole file or larger chunks into memory
17:36:04 <donri> ...i think.
17:36:37 <donri> which is terrible with mechanical drives
17:36:42 <luite> LambdaDusk: well in any case, it's much easier to have mem leaks with lazy stuff
17:36:50 <LambdaDusk> I see
17:36:56 <luite> the conduit/enumerator pattern encourages more or less constant space
17:37:14 <luite> while with lazy things, just one remaining reference to some part of your data will cause all of it to be retained
17:37:42 <LambdaDusk> memory leaks in Haskell, why =/
17:37:58 <LambdaDusk> is like drowning in a desert
17:38:19 <luite> i think they're quite common, since it's actually quite difficult to reason about that kind of thing
17:38:32 <luite> and optimization settings can have a huge impact
17:38:49 <donri> then you throw concurrency and parallelism into the mix
17:39:22 <luite> hmm, i thik those issues are orthogonal in haskell, at least more than in most other langs
17:42:01 <LambdaDusk1> ubuntu crashed =(
17:45:27 <stepkut> :(
17:55:40 <donri> stepkut: web-routes is darcs-1 :(
17:55:47 <stepkut> donri: I can fix that!
17:56:10 <stepkut> one moment
17:56:11 <luite> will happstack be the last remaining project on darcs? ;)
17:56:31 <donri> stepkut: i already recorded a patch
17:56:37 <stepkut> donri: k
17:56:42 <stepkut> donri: what's the problem then?
17:56:42 <donri> WHAT DO
17:56:52 <donri> stepkut: can't put it on darcsden (or patch-tag?)
17:57:04 <stepkut> donri: yeah, you'll have to do darcs send -o foo.dpatch and email it to mo
17:57:05 <stepkut> me
17:57:08 <donri> without converting, but if i convert it says that you won't be able to merge it
17:57:14 <stepkut> but I will upgrade the repo after I apply the patch
17:57:20 <donri> k
17:58:33 <donri> /bin/sh: vim: command not found
17:58:33 <donri> /bin/sh: emacs: command not found
17:58:33 <donri> /bin/sh: emacs: command not found
17:58:33 <donri> /bin/sh: nano: command not found
17:58:38 <donri> nice one darcs
18:00:59 <donri> stepkut: did you get it?
18:01:07 <stepkut> yup
18:01:37 <donri> it's not the complete solution with all that smartness we discussed
18:01:41 <donri> just "page-u-r-l" for now :P
18:01:47 <stepkut> k
18:03:23 <donri> it hurt my brain just to decipher this template haskell so the rest will take more effort :P
18:04:28 <LambdaDusk1> wonder if someone could write a template function "haskell" that compiles haskell code =D
18:04:52 <donri> what do you mean?
18:04:59 <donri> template haskell runs haskell code at compile time
18:05:12 <donri> it's exactly what it's *for*
18:08:47 <LambdaDusk1> I mean like
18:09:01 <LambdaDusk1> [haskell| plain haskell code |]
18:09:21 <luite> [| |] is for haskell exprs
18:09:45 <LambdaDusk1> nevermind
18:09:53 <LambdaDusk1> stepkut: Got any hints for me, yet?
18:10:10 <luite> LambdaDusk1: not sure what you mean otherwise
18:10:20 <stepkut> LambdaDusk1: almost done
18:16:09 <donri> LambdaDusk1: $(runQ [| 1 + 1 |]) -- this becomes "2" at compile-time
18:19:33 <stepkut> LambdaDusk1: so.. I am not quite sure what the argument you pass to runPonyServer is for
18:19:57 <stepkut> LambdaDusk1: and so I am not quite sure how to implement what you want
18:20:33 <LambdaDusk1> the argument is the monad of the handlers, as seen in Main.hs
18:20:40 <stepkut> yes.. but why?
18:21:01 <stepkut> should runPonyServer have any built in routes? or only what is passed to it ?
18:21:09 <LambdaDusk1> because it runs the server...?
18:21:19 <LambdaDusk1> only what is passed to it
18:21:38 <LambdaDusk1> if I have done a design mistake then just tell me
18:21:46 <stepkut> so, the argument needs to be changed to something like, Sitemap -> PonyServerPart Response, ?
18:21:54 <stepkut> I am not sure what you are trying to achieve..
18:22:27 <stepkut> runPonyServer is a library, and you build different apps based around it ?
18:26:56 <LambdaDusk1> no, actually just this one
18:27:04 <LambdaDusk1> I don't quite understand what is the problem
18:28:00 <stepkut> why pass the routes to runPonyServer instead of just having runPonyServer call some function that defines the routes directly
18:29:02 <LambdaDusk1> uh
18:29:38 <LambdaDusk1> I am open for anything, feel free to correct my code or tell me off for it
18:29:57 <stepkut> so, here is the issue.. right now you define some routes like, dir "favicon.ico" $ serveFile (asContentType "image/x-icon") "./static/favicon.ico", which could be defined in the ServerPart monad
18:31:11 <LambdaDusk1> well, it is given to the runPonyServer to run?
18:33:18 <stepkut> if we extend the PonyServerPart to include RouteT.. then we would generally need to evaluate the PonyServerPart inside of a context where we know the routing function, (url -> [(Text, Maybe Text)] -> Text), which we generally only know inside of implSite
18:33:37 <stepkut> but implSite also usually adds a prefix to ensure the urls it generates/parses are unique
18:33:55 <stepkut> but, if we add that prefix to dir "favicon.ico", then it is not going to work
18:35:15 <stepkut> if you go here, and scroll down to the code block with main:
18:35:18 <stepkut> http://www.happstack.com/docs/crashcourse/WebRoutes.html#web-routes-demo
18:35:36 <stepkut> you will see that we usually avoid that problem by putting simple static resources outside of the App monad
18:36:04 <LambdaDusk1> I have read that and tried to work alongside it
18:36:24 <stepkut> but.. I am not sure if that would work for you because I am not clear what you are trying to do
18:36:59 <LambdaDusk1> just add Routes?
18:37:00 <stepkut> normally you do not use 'dir', 'path' etc inside RouteT
18:37:12 <LambdaDusk1> I would change that, of course
18:37:31 <LambdaDusk1> so you're saying I can't add RouteT to the monad type
18:37:32 <LambdaDusk1> ok
18:37:36 <LambdaDusk1> that is fine
18:37:37 <stepkut> you can
18:37:48 <LambdaDusk1> no no, then static wouldn't work
18:38:03 <LambdaDusk1> but
18:38:11 <stepkut> do the things that call 'dir', 'path' etc  need to be in the PonyServerPart monad ?
18:38:21 <stepkut> that can be made to happen..
18:38:24 <LambdaDusk1> not really
18:38:34 <stepkut> everything is possible, but I am just not clear what the requirements are
18:38:43 <LambdaDusk1> they would be the static resources
18:39:11 <stepkut> so you could have, runPonyServer :: ServerPart Response -> (Sitemap -> PonyServerPart Response) -> IO ()
18:39:12 <LambdaDusk1> I only need my dynamic/rendered pages with templates handled by web-routes
18:40:46 <stepkut> the other option is to set the prefix used by implSite to "" so that things like dir "favicon.ico" still work.. but that introduces the risk of the web-routes paths colliding with the dir based paths
18:43:04 <LambdaDusk1> I am also a bit confused about web-routes because I couldn't find where exactly I declare the exact urls for the handlers
18:44:19 <stepkut> LambdaDusk1: there are several places.. if you call derivePathInfo then they are created automatically from the type names. you could instead use boomerang to specify the mapping. Or you can write PathInfo instances by hand, or you can just provide a pair of functions that basically do url -> Text and Text -> Maybe url
18:45:00 <LambdaDusk1> runPonyServer :: ServerPart Response -> (Sitemap -> PonyServerPart Response) -> IO () should be what I am looking for...
18:45:20 <stepkut> k
18:45:21 <stepkut> one moment
18:49:19 <LambdaDusk1> http://www.sdtimes.com/link/36534
18:50:56 <mightybyte> LambdaDusk1: Heh, that was making the rounds last week.
18:51:04 <LambdaDusk1> awww
18:51:10 <LambdaDusk1> hi mighty
18:51:22 <LambdaDusk1> sorry, snap and I... it just wasn't meant to be
18:52:10 <mightybyte> lol, whatever works for you
18:52:13 <luite> according to tiobe, functional programming is dying anyway
18:52:44 <LambdaDusk1> wtf?
18:53:24 <luite> functional programming 3.9%, down 0.3 percent point since last year
18:53:42 <stepkut> ok.. I have the changes made.. how do I send them to you?
18:53:46 <stepkut> I did a git clone of your repo
18:54:35 <LambdaDusk1> do a pull request? or just make a gist with the two files.
18:54:52 <LambdaDusk1> lots of thanks to you, stepkut!
18:54:54 <luite> according to that, object oriented and logic are still winning
18:55:13 <LambdaDusk1> luite: Depends on what counts as a functional programming language
18:55:17 <stepkut> to make a pull request I have to create an account on github, fork your repository and then click pull request, just to send you a simple patch !?!
18:55:29 <stepkut> cheap no good toy :p
18:56:00 <LambdaDusk1> stepkut: I didn't know you weren't on github! Then hpaste or pastie or put it on a server...?
18:56:05 <LambdaDusk1> how much is it?
18:56:07 <stepkut> I am on github
18:56:20 <stepkut> just not willingly :p
18:56:27 <stepkut> I didn't fork before I did a clone
18:56:30 <stepkut> am I screwed?
18:56:46 <LambdaDusk1> as I said, make a multi-file gist (if necessary)
18:56:49 <luite> no you can change the remote
18:56:56 <luite> and then push to your own
18:57:12 <luite> i always forget the git commands for that though :(
18:57:17 <stepkut> :)
18:57:21 <luite> it's a text file in ./.git
18:57:30 <stepkut> ACTION likes darcs send
18:59:40 <stepkut> apparently you commited stuff since I did my pull
19:00:46 <LambdaDusk1> uh
19:04:03 <LambdaDusk1> only the cabal file, adding web-routes
19:06:04 <stepkut> was enough to cause a conflict :)
19:06:32 <LambdaDusk1> I am worst programmer
19:08:00 <stepkut> do I need to do anything special when resolving this conflict? Or just edit and commit ?
19:08:27 <donri> latter
19:08:46 <donri> git diff to see the conflicts
19:09:16 <LambdaDusk1> so sorry
19:09:34 <stepkut> pull request sent
19:10:50 <LambdaDusk1> many thanks!
19:11:01 <stepkut> no problem
19:11:47 <LambdaDusk1> ACTION brony-hugs.
19:12:13 <donri> is that a brother pony?
19:12:40 <LambdaDusk1> it's a bro-pony
19:13:08 <stepkut> :)
19:13:15 <LambdaDusk1> http://en.wikipedia.org/wiki/Brony
19:14:30 <LambdaDusk1> why is the happstack server so fast
19:15:03 <stepkut> LambdaDusk1: why wouldn't it be?
19:15:48 <LambdaDusk1> I dunno, but node and ruby always had a 0.1s waiting time
19:16:38 <stepkut> well, Haskell has a pretty good optimizing compiler and very good concurrency
19:17:48 <LambdaDusk1> indeed
19:17:58 <LambdaDusk1> why dont the world realise this?
19:20:55 <mightybyte> Because the world, as a general rule is not that bright.
19:24:41 <LambdaDusk1> "Which part of "Which part of "Which part of "Recursion is dangerous" don't you understand?" don't you understand?" don't you understand?"
19:25:10 <LambdaDusk1> well thanks for the help, stepkut
19:25:23 <stepkut> LambdaDusk1: no problem
19:25:24 <LambdaDusk1> why is there stepkut and stepcut
19:25:37 <stepkut> LambdaDusk1: my home machine and my laptop
19:25:46 <stepkut> LambdaDusk1: I could set up an irc proxy, but I haven't
19:25:46 <LambdaDusk1> amazing
19:30:26 <LambdaDusk1> aw man I ran out of alcohol
19:30:33 <stepkut> :)
19:30:57 <LambdaDusk1> I always miss the Ballmer Peak
19:31:04 <stepkut> I've got plenty, come on over!
19:31:24 <LambdaDusk1> swim through the atlantic
19:31:37 <stepkut> ride on the back of shark!
19:32:20 <LambdaDusk1> I'm not drunk enough to do that
19:32:30 <stepkut> I am going to take a break, move locations, and then consider digestive-functors 0.3
19:32:39 <LambdaDusk1> wait what am I typing... of course I am!
19:33:08 <donri> narwhals are preferred if you want to be a reddit hit
19:36:21 <LambdaDusk1> narwhales are swimming up to new england?
19:37:19 <donri> if you're drunk, anything is possible!
19:39:05 <LambdaDusk1> Though if I commit a act of heroism, I'd love to remember it
19:39:14 <LambdaDusk1> oh no stepkut died
19:40:38 <donri> but stepcut lives!
19:43:22 <LambdaDusk1> zombie stepcut
19:48:28 <donri> the king is dead, long live the king!
19:50:13 <LambdaDusk1> you can only use that when lettings someone drop into a stampede
19:50:34 <donri> is the brony making lion king references now
19:53:25 <LambdaDusk1> I am a deep character
19:54:28 <donri> now i sort of want to watch the lion king
19:54:31 <donri> nostalgia :D
19:54:47 <donri> the swedish voice of scar is awesome
19:56:26 <LambdaDusk1> the german versions of anything sucks
19:56:38 <LambdaDusk1> it's like the language has a boredom factor
19:57:01 <donri> http://youtu.be/3rJODmZtvuI
20:00:14 <LambdaDusk1> sounds like the song is backwards
20:01:17 <donri> haha
20:16:06 <LambdaDusk1> anyway, good night
23:51:35 <stepkut> blah. Tried to use digestive-functors 0.3 and the very first thing that happened was a runtime failure due to not using the same String value in all locations
23:51:41 <stepkut> for the field name
23:53:07 <mightybyte> tanstaafl
23:54:19 <stepkut> I should fork digestive-functors 0.2 and rename it to formlets :p
23:55:00 <mightybyte> lol
23:55:48 <luite> isn't it going to be renamed anyway? i heard some talk about that, dunno if it was serious
23:55:57 <stepkut> oh ?
23:56:01 <mightybyte> That would be great.
23:56:44 <luite> hehe, ok... i thought that might have been part of the joke, forking an older version and then beating them to the new name :p
23:56:46 <mightybyte> I nominate "intestine" :P
23:58:13 <stepkut> luite: no... digestive-functors < 0.3 is a rewrite of formlets. digestive-functors 0.3 is something else..
23:58:33 <luite> how old is 0.3?
23:58:51 <stepkut> luite: a month or two ?
23:58:59 <luite> ah right, i haven't used it then
23:59:04 <luite> sorry for being lazy ;p