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"