01:22:29 <HugoDaniel> :D
01:23:02 <stepkut> :D
01:24:07 <stepkut> what are we happy about anyway?
01:25:45 <HugoDaniel> happstack-clientsession 7.0.0
01:25:50 <stepkut> ah
02:00:45 <HugoDaniel> ahah
02:00:47 <HugoDaniel> irregular news :D
02:00:48 <HugoDaniel> win
02:02:18 <stepkut> :)
02:04:11 <stepkut> It's a good thing I kept notes along the way, because I totally forgot half the things that happened since the release of 7
02:05:20 <HugoDaniel> :D
02:06:00 <HugoDaniel> i must sleep
02:06:02 <HugoDaniel> 3am
02:06:05 <HugoDaniel> ttyl
02:12:03 <tazjin> stepkut: Congratulations, I think that was the first time I ever read a newsletter
02:26:30 <stepcut> tazjin: nice!
02:27:51 <stepcut> I have already started the second issue.. but there is nothing in it yet :)
02:27:54 <tazjin> It's also kept me from sleeping because I'm now back to trying to get hamlet, web-routes & boomerang to play together nicely
02:28:02 <tazjin> even though I have to attend a wedding in t-6!
02:28:10 <stepcut> !
02:28:32 <stepcut> I should look at how to use hamlet + web-routes
02:29:00 <stepcut> or finish fixing hsx so that it is superior to hamlet in every way
02:30:43 <tazjin> the only thing I'm running against is the way hamlet does URL rendering
02:31:59 <tazjin> I might be missing something here because I haven't used type safe URLs before, but as I see it web-routes showURL takes a value of the data type holding the sitemap in the context of a RouteT, because that contains the domain etc.
02:33:03 <tazjin> but Hamlet just wants the sitemap data and basically a function url -> [(Text, Text)]-> Text -- the web-routes functions that look like this also have [(Text, Maybe Text)] which could be fixed easily, but hmm.
02:33:14 <stepcut> are you using hamletToResponse ?
02:34:08 <stepcut> there are a lot of ways to structure your code but if you are using RouteT, you can call askRouteFn to get the url -> [(Text, Text)] -> Text argument
02:34:09 <tazjin> no, I'm using toResponse $ hamlet render, where hamlet is the template and render is the rendering function I'm still writing
02:34:30 <tazjin> At the moment my code is pretty much the definition of unstructured :P
02:34:42 <stepcut> yeah. that is all hamletToResponse anyway
02:35:10 <stepcut> so, you should be able to call, askRouteFn and pass that to the hamlet function
02:35:17 <tazjin> Okay, lets see
02:35:21 <tazjin> If this works I can finally go to bed :P
02:35:33 <stepcut> and since that gets annoying fast, you can write a little helper function
02:38:49 <stepcut> http://code.google.com/p/happstack/issues/detail?id=194
02:40:39 <tazjin> askRouteFn returns a url -> [(Text, Maybe Text)]-> Text
02:40:54 <tazjin> so I need to change that to a url -> [(Text, Text)]-> Text
02:42:19 <stepcut> ah
02:42:20 <stepcut> odd
02:43:48 <stepcut> anyway, going that way is easy
02:44:54 <tazjin> Why's that a Maybe value anyways? I thought query parameters had to be key/value pairs?
02:47:35 <stepcut> it used to only be [(Text, Text)], but I had to change it to [(Text, Maybe Text)] to interoperate with yesod in some way
02:49:53 <stepcut> the query string is technically anything that appears between ? and #
02:50:18 <stepcut> the key=value; encoding is used for GET form requests.. but you can put other things there as well
02:50:34 <donri> I think there is a technical difference between "?key" and "?key="
02:50:40 <donri> maybe that's what the Maybe encodes
02:51:44 <tazjin> hmm, so technically Hamlet doesn't cover that case?
02:52:26 <stepcut> I guess not.. which is odd because yesod is where I copied it from
02:52:37 <stepcut> only michael snoyman knows why
02:53:21 <donri> ACTION installed an ssd and a new hdd and have been messing with a new OS install, thus not on IRC
02:53:28 <donri> new package releases, yay!
02:54:12 <tazjin> Also, does anyone in this room ever sleep?
02:55:25 <donri> no, sleep can lead to race conditions
02:55:33 <donri> proper event handling is better
02:57:48 <tazjin> Hrrmm
02:59:59 <stepcut> donri: I released your package.. hope that is ok :p
03:00:22 <donri> that was the idea :)
03:00:34 <donri> i hope you tested it first because i didn't :D
03:00:42 <stepcut> ACTION is going to practice contortion and then engage in some proper event handling
03:00:55 <stepcut> donri: it built what could be wrong!
03:01:01 <donri> exactly!
03:01:11 <stepcut> donri: I did have to patch the .cabal file a bit though to make hackage happy
03:01:45 <tazjin> I'm feeling experimental, I'll try clientsession when I come back from that wedding tomorrow night
03:02:02 <tazjin> drunk coding + experimental package = success
03:02:20 <donri> stepcut: yea i just stubbed that cabal file to get it to build with cabal
03:02:34 <stepcut> sweet!
03:02:50 <stepcut> if it sucks it's all donri's fault :p
03:02:51 <donri> tazjin: avoid success at all cost!
03:03:05 <donri> stepcut: shh let's blame michael
03:03:14 <stepcut> yeah, I mean michael's fault
03:03:28 <tazjin> Okay
03:03:38 <tazjin> if it breaks I'll send a bunch of angry e-mails to michael
03:03:50 <stepcut> excellent!
03:04:06 <donri> better do it publicly
03:04:15 <tazjin> Right
03:04:29 <tazjin> I'll blog how angry I am with Michael, without making it clear what exactly is making me angry
03:04:37 <tazjin> and then I'll send it to all Haskell-related mailing lists
03:04:39 <stepcut> haha
03:04:41 <tazjin> and of course post to reddit
03:05:01 <stepcut> you should blame it on quasi-quotes even though clientsession doesn't use any
03:05:25 <tazjin> And I'll say that "the ridiculous amount of Template Haskell in both Happstack and Yesod made me switch back to PHP!" (<- which I never used btw)
03:05:34 <stepcut> :)
03:05:54 <donri> aaaand of course i can't even use ghc binary releases on new fedora
03:06:00 <donri> too recent libgmp
03:06:11 <stepcut> :(
03:07:28 <tazjin> I'll embed this ridiculous piece of code as an explanation for why I'm angry: http://hpaste.org/67364
03:07:31 <tazjin> without any further explanation
03:07:47 <tazjin> Needs more brackets
03:08:27 <tazjin> donri: Can't you specify the libgmp path and just get an older version as well?
03:09:16 <stepcut> hahah
03:09:41 <stepcut> it says 'justify' right in the code.. how much more justification do you need?
03:10:16 <tazjin> Yes, right
03:10:39 <tazjin> It will start a flamewar that will shake all Haskellers for years to come
03:13:28 <donri> or i can just yum install @haskell and get 306 system packages for ghc 7.0.4
03:14:55 <donri> ACTION has cognitive dissonance about cabal packages and system package management
03:16:14 <tazjin> Well, at least system package managers can uninstall :P
03:16:24 <donri> ghc-pkg unregister
03:16:49 <tazjin> Of course, but you've still got some stuff lying around
03:16:59 <donri> rm -rf /
03:18:25 <donri> i have to try that in a vm or something sometime. according to man rm it should refuse it by default.
03:21:44 <tazjin> If you obfuscate it it doesn't, though
03:24:07 <tazjin> Also my hamletboomerangwebrouteshappstack-experiment succeeded, I can now go to bed and rest peacefully
03:26:53 <tazjin> good 'night' everyone.
03:30:49 <donri> good night tazjin
03:31:08 <donri> @time tazjin
03:31:09 <lambdabot> Local time for tazjin is Saturday, April 21, 2012 5:31:20 AM Central European Summer Time
03:31:09 <donri> ;)
03:32:06 <tazjin> ACTION returns to his computer, toothbrush in hand, attracted by a distinct sound coming from an IRC client
03:32:27 <tazjin> Oh yes, thanks for reminding me that I have to be all festive very soon.
13:17:34 <donri> @time stepcut
13:17:35 <lambdabot> Local time for stepcut is Saturday, April 21, 2012 8:17:47 AM Central Daylight Time
13:17:41 <donri> good morning!
13:18:12 <donri> i tested clientsession and it seems to work fine
13:18:24 <donri> but (as expected) the lack of instances for hsx gets annoying fast :P
13:18:59 <donri> guess we need a happstack-clientsession-hsp?
13:39:55 <jaspervdj> stepcut: ping/mail me if you have any trouble with blaze-html-0.5 and happstack
14:34:11 <donri> maybe blaze-markup makes the XMLGenerator idea easier
14:34:59 <donri> still not sure what "the point" is, but if there turns out to be one :D
15:57:55 <stepkut> donri: makes it easier.. but slow
15:58:28 <stepkut> donri: I think the right solution is a trblaze that directly calls the functions like, p, div, etc
15:59:06 <donri> oh, yea that makes more sense
15:59:43 <stepkut> there are a few potential upsides -- one is that we already have a combinator based version of the library
15:59:50 <stepkut> aka, blaze-html
16:01:39 <donri> might be a good alternative to hsp-identity
16:01:46 <stepkut> yeah
16:01:57 <donri> but can't mix in same file
16:02:05 <stepkut> right
16:02:16 <stepkut> well, you can with the QQ version
16:02:22 <donri> sure
16:04:15 <stepkut> but.. more important at the moment is getting a working hsx, etc on hackage :)
16:24:42 <stepkut> jaspervdj: hmm. the biggest issue is going to be that digestive-functors-blaze for digestive-functors 0.2 does not work with new blaze
16:33:30 <stepkut> I guess the time has come to upgrade to digestive-functors 0.3 or fork 0.2
16:34:00 <donri> :)
16:36:17 <donri> i still vaguely suspect lenses could work out somehow... probably not as applicative though
16:37:38 <stepkut> donri: get crackin' then!
16:38:11 <donri> maybe if you get me some LSD first
16:39:25 <donri> result: acid-state; formlets as state transformations using lenses, created while under the influence of acid.
16:40:44 <stepkut> sweeet
16:40:52 <donri> \o/
16:41:27 <donri> more seriously, formlets as state computations might actually work better than applicative functors for ajaxy stuff?
16:41:45 <stepkut> dunno
16:41:52 <stepkut> sounds great though :p
16:41:56 <donri> :D
16:43:01 <donri> i mean like, "validate the record resulting from running this state computation on this existing record" and you're only modifying a single field in the record because it's ajax validation
16:43:18 <donri> wasn't that what you meant by digestive-functors not being optimal for ajax heavy apps?
16:43:23 <donri> you said something about that anyway
16:43:47 <stepcut> yeah
16:44:23 <donri> actually, doesn't really need state computations just lens setters...
16:46:51 <donri> someone pay edwardk to figure out and implement this!
20:09:15 <stepkut> I wonder if scoutess can use this somehow, http://www.reddit.com/r/haskell/comments/slify/til_cabal_has_a_principled_mechanism_for_handling/
23:18:44 <LambdaDusk> anyone having some experience with the ClientSessionT monad transformer?
23:29:34 <stepcut> LambdaDusk: not yet.. donri is possible the only person with experience so far
23:29:49 <stepcut> LambdaDusk: what seems to be the issue ?
23:29:54 <LambdaDusk> I seem to have kind of solved it, I think
23:30:00 <stepcut> k
23:30:08 <LambdaDusk> sorry to bother ^^
23:30:17 <stepcut> I hope to look at it and write a tutorial soon, but there are some other things on my plate first
23:30:25 <stepcut> need to get out the updated happstack.com
23:30:43 <LambdaDusk> I was trying to shove it into my own server monad
23:32:15 <LambdaDusk> I have lost the source where I had solved some of the troubled, too
23:37:02 <LambdaDusk> ah well, trying again tomorrow
23:37:05 <LambdaDusk> bye