13:45:03 <astroboy> stepcut, stepkut: a question about "style": I'm instantiating HashMap with Version and Serialize, where should I do that in my code base? ghc -Wall complains, and it's right (as always) 13:57:53 <astroboy> also, you suggested to use genSaltIO. is that better than using "genRandom", then generating a ByteString from that and then using "makeSalt"? 14:00:21 <astroboy> I mean, does "getRandom" uses /dev/urandom as well or is it some pseudo-random numbers generator? 14:00:33 <astroboy> I guess it has to be some pseudo random number 14:00:36 <astroboy> geeenerator 14:01:05 <astroboy> since we have to be out of the IO monad 14:01:07 <astroboy> mhm 17:48:49 <astroboy> stepcut, stepkut: ping? 20:00:45 <stepkut> git is sooo confusing 20:05:11 <stepkut> I don't know how people can think that 'git format-patch' is better than 'darcs send' 20:31:44 <balor> stepkut: it's not. I think it's just that git was in the right place at the right time. 20:32:06 <stepkut> balor: i think it is more that it had the 'right' author 20:35:04 <balor> stepkut: Yeah. Though it is nice to have a tool that *most* of the world agrees on. Not svn/bzr/hg/darcs/... 20:35:23 <stepkut> balor: most of the world agreed on cvs at one point.. didn't make it nice :) 20:35:46 <balor> no, but thankfully we've moved on from CVS 20:36:07 <stepkut> alas, most of the world is still stuck on java/php/python/c++ 20:49:05 <balor_> How do I get parts of the URL in a "postSubmssion :: ServerPartT IO (HSP XML)" i.e. the form is posted to /verb/foo/bar and I need to get foo and bar? 20:50:16 <stepkut> I take it 'foo' and 'bar' are dynamic not static ? 20:50:33 <balor_> yeah 20:52:35 <stepkut> main = simpleHTTP nullConf $ dir "verb" $ path $ \foo -> path $ \bar -> do ok $ "I got " ++ foo ++ " and " ++ bar 20:53:01 <balor_> cool 20:53:04 <balor_> thanks 20:53:59 <stepkut> path uses the FromReqURI class to convert path info segments to haskell values. There we are just using the FromReqURI String instance 20:54:29 <stepkut> http://www.happstack.com/docs/crashcourse/RouteFilters.html#variable_path_segments 21:00:16 <wires> Hi! does anyone know about other haskell projects similar to happstack-state? Not that I'm not happy with it, I'm just investigating what there is in haskell world :) 21:00:34 <stepkut> wires: similar in what way ? 21:00:54 <wires> "prevailer" like 21:01:14 <wires> memory stores, distributed, etc. 21:01:35 <stepkut> I do not know of anything else that is not just an interface to something like redis, etc 21:01:44 <wires> ok 21:03:54 <wires> so do I understand it correctly that happstack state allows me to store full histories of data + application of functions in a distributed sharded manner? 21:04:36 <stepkut> hmm 21:05:16 <stepkut> storing the 'full histories' is more of a detail of how things are implemented.. not a feature in itself 21:05:36 <stepkut> distributed is currently supported, sharding is being add in this release cycle 21:06:03 <wires> distribution now is only for failover or read scaling ? 21:06:21 <stepkut> wires: multi-master I believ 21:06:32 <wires> ah ok 21:06:40 <wires> and, 21:06:54 <stepkut> not sure.. I knew how the old distributed code worked, I have not looked at the newer code yet 21:09:44 <wires> ok, thanks. I will look into details of happstack-state 21:10:50 <stepkut> wires: cool. It's not well documented yet.. but improving and documenting it is the primary focus of this release cycle 21:11:33 <wires> I'm reading http://happstack.com/docs/crashcourse/HappstackState.html#happstack_state now :) 21:11:42 <stepkut> wires: cool 21:12:34 <wires> btw, have there been any benchmarks or comparisons made between the various web frameworks, in particular Snap, Yesod, Happstack 21:12:58 <wires> that you know of? 21:13:57 <stepkut> wires: yes.. though none that are currently up to date 21:14:58 <wires> too bad 21:15:03 <wires> ok, thanks stepkut 21:15:05 <stepkut> wires: in terms of speed, the warp backend is the fastest by a factor of 2 or more (used by yesod). Snap 0.4 and Happstack 6.0 are pretty close in speed I think. 21:15:33 <stepkut> wires: there is a haskell-web-rosetta project in progress that will compare the frameworks in terms of coding up different tasks 21:15:36 <wires> warp is based on libev no? 21:16:09 <stepkut> wires: focused haskell-web-rosetta is focused on the 'usuability' of the frameworks -- not speed testing 21:16:22 <wires> stepkut: haskell-web-rosetta, that sounds nice; do you have a link? 21:16:55 <stepkut> I believe warp just uses the normal GHC IO manager. In GHC 7, though the IO manager is based on libev 21:17:14 <stepkut> wires: https://github.com/snoyberg/haskell-web-rosetta 21:17:32 <stepkut> wires: not very complete yet though 21:17:36 <wires> nice, nice, thanks... 21:17:58 <stepkut> wires: Happstack 8 is likely to switch to the warp backend 21:18:24 <stepkut> wires: unless snap or hyena make significant progress by then 21:18:28 <wires> what are your estimate dates for the releases? 21:19:08 <stepkut> none yet.. just released 6 a few days ago. Haven't planned out the next releases in enough details yet 21:19:20 <stepkut> also depends on what people volunteer to do 21:19:36 <wires> ah, congratulations on 6 then :) 21:20:24 <stepkut> thanks! 21:21:37 <wires> alright, thanks I'm going to read some code, bye 21:21:48 <stepkut> sweet 22:20:42 <balor_> Can one turn a webST into a webHSP? 22:47:59 <balor_> fun "Emitted event to unknown component"