15:39:05 <bonobo> can I use logger inside Update or Query monads?
15:39:30 <stepcut> hmm
15:39:35 <stepcut> does logger use IO ?
15:39:54 <stepcut> I think it must..
15:40:09 <stepcut> so probably not
15:51:16 <bonobo> logger is in IO
15:51:30 <bonobo> Update&Query are database monads
15:51:56 <stepcut> yeah, you can't do IO in Update and Query
15:52:24 <bonobo> well, my idea is this: inside of Update I typically have some logic
15:52:36 <bonobo> something that cares about data consistency
15:52:51 <bonobo> I'd like to log what got accepted and what got rejected
15:53:04 <bonobo> both debugging and security reasons
15:53:52 <stepcut> you can have your update code return the log data as a value, and then write the log outside the Update
16:08:49 <bonobo> hmm
16:09:13 <bonobo> since Updates can restart returning the log is probably the only good idea
16:09:32 <bonobo> what do you think about snapframework?
16:49:25 <stepcut> bonobo: might be nice to port happstack-server to use their iteratee based backend
16:52:09 <bonobo> libev is also a very good idea, I think
16:53:37 <stepcut> happstack needs more developer resources
16:53:48 <stepcut> but people seem more interesting in making their own thing instead
16:56:53 <mightybyte> There's something about mass and momentum
16:57:22 <stepcut> oh ?
16:57:51 <mightybyte> ...that tends to be harder to move.
16:58:01 <stepcut> I guess
17:03:01 <mightybyte> stepcut: Comments like "this is the first time a haskell web framework has looked usable, so i'm quite excited" seem to provide some degree of validation for the approach we took.
17:03:31 <stepkut> mightybyte: perhaps
17:15:00 <bonobo> haskell has more web frameworks now than any other language :)
17:15:10 <mightybyte> lol
17:15:25 <stepkut> :)
17:15:35 <bonobo> stepkut: we could make happstack process more open
17:15:42 <stepkut> bonobo: in what way ?
17:15:57 <bonobo> well, let me enumerate
17:16:02 <stepkut> indeed!
17:16:16 <bonobo> 'darcs send' tries to send patches to ssess
17:16:23 <bonobo> which work like /dev/null :)
17:16:38 <bonobo> happstack.com still has the HAppS log
17:16:39 <stepkut> hmm, that should definitely send them to the happstack mailing list
17:16:39 <bonobo> logo
17:16:47 <stepkut> it does ?
17:17:01 <bonobo> I don't think so
17:17:21 <bonobo> happstack tutorial is maintained outside of happstack and is out of sync sometimes
17:17:36 <stepkut> sorry, I am sure darcs sends them to ssess, I mean that it really needs to be changed to send them somewhere sensible
17:18:04 <bonobo> http://hackage.haskell.org/packages/archive/happstack/0.5.0.2/logs/failure/ghc-6.12
17:18:05 <stepkut> bonobo: yeah, I am trying to write a more modernized tutorial that stays in sync and reflects more modern practices
17:18:11 <bonobo> it does not build on hackage
17:18:25 <stepkut> ugh
17:18:30 <bonobo> which is minor point, but the docs are available only there :)
17:18:38 <stepkut> only there ?
17:18:49 <bonobo> and... well... web page looks ugly :)
17:19:13 <stepkut> yeah, there is a lot to do, but not enough people doing it :)
17:19:27 <stepkut> though we did get some sweet ixset patches!
17:19:30 <bonobo> oh, yes, there are docs on the happstack.com! I found them just now :)
17:19:36 <stepkut> :)
17:19:54 <bonobo> there are plenty of ixset patches coming
17:19:57 <mightybyte> stepkut: Yes, I was very happy to see the ixset activity.
17:20:19 <stepkut> I think the problem is not a lack of openness, but poor performance on my part to get people excited about contributing
17:20:38 <bonobo> stepkut: it is absolutely not about you
17:20:57 <stepkut> bonobo: oh ?
17:21:34 <bonobo> compare to snoyman... is he getting a lot of contribs to yesod?
17:21:57 <stepkut> bonobo: dunno. But I wish I could convince him to contribute to happstack :)
17:22:34 <stepkut> bonobo: I did get him to contribute to web-routes, though, which was very useful
17:23:55 <bonobo> well
17:24:02 <stepkut> but happstack itself needs more man power
17:24:06 <bonobo> I had good time contributing here :)
17:24:08 <stepkut> :)
17:24:39 <bonobo> happstack needs more appealing home page :)
17:24:43 <stepkut> totally!
17:24:46 <bonobo> this is web framework dammit :)
17:24:57 <stepkut> at least the happstack webpage is written in happstack now :)
17:25:01 <stepkut> and served by happstack
17:25:16 <stepkut> the log bot needs to be rewrite to use that new irc library though :-/
17:25:36 <stepkut> how can we make the homepage more appealing ?
17:25:59 <stepkut> I am pretty convinced that the biggest issue with happstack adoption right now is documentation
17:27:58 <bonobo> there is that guy that offered some help, let him do whatever he wishes :)
17:28:36 <stepkut> bonobo: yeah, I am trying too.. haven't heard much from him in the last month :-/
17:28:43 <bonobo> documentation seems to be quite ok for me
17:28:46 <stepkut> bonobo: I like his stuff and don't really want to interfer
17:29:01 <bonobo> it is above haskell library average anyway :D
17:29:02 <stepkut> bonobo: it's better than what we got :)
17:29:29 <bonobo> user comment system ala php would be cool
17:29:56 <stepkut> yeah, people keep talking about writing something like that for hackage..
17:30:08 <bonobo> hsp is tough, one error and you get a couple of screenfulls of ghc error messages :)
17:30:37 <bonobo> hjscript is beyond my level of comprehension :)
17:30:47 <bonobo> ixset is slow
17:30:48 <stepkut> hjscript is a bit wacky
17:30:59 <stepkut> I am not really sure how to fix this error, http://hackage.haskell.org/packages/archive/happstack-data/0.5.0.2/logs/failure/ghc-6.12
17:31:02 <bonobo> I haven't looked into transaction system yet
17:31:18 <bonobo> stepkut: I have no idea either
17:31:34 <bonobo> can we have haddock plus SOURCE on happstack.com?
17:32:48 <stepkut> bonobo: what do you mean? The 'source' links for haddock files on happstack.com work..
17:33:39 <bonobo> oh... yes...
17:33:42 <bonobo> I see
17:33:49 <bonobo> I was convinced they did not
17:34:00 <stepkut> :)
17:34:01 <bonobo> why? I don't know...
17:34:06 <stepkut> dunno
17:34:17 <stepkut> I do wish the docs would build on hackage though
17:34:39 <bonobo> well, if I have trouble finding something then either it is too late today or it is really too late today :)
17:35:40 <stepkut> :)
17:37:21 <bonobo> how do I change things in happstack tutorial? is there a repo somewhere?
17:38:02 <stepkut> yes
17:38:15 <stepkut> http://tutorial.happstack.com/tutorial/run-tutorial-locally
17:44:28 <stepkut> there is also my new tutorial, that is still in the early stages, http://src.seereason.com/~jeremy/happstack-crashcourse/index.html
17:44:41 <stepkut> needs css love badly
17:45:02 <stepkut> but I am focusing on content for now
17:45:13 <stepkut> hoping that James will come up with a theme for us
17:46:02 <stepkut> hmm, I don't see where darcs is finding the ssess@gmail.com addr for darcs send :-/
17:46:08 <stepkut> grep failed me!
17:47:39 <Lycurgus> ACTION discovers there are 4 all total, yesod, salvia, hack, and happs/happstack
17:48:02 <stepkut> Lycurgus: wash
17:48:18 <Lycurgus> come again?
17:48:29 <stepkut> are you talking about web frameworks ?
17:48:30 <bonobo> stepkut: turbinado!
17:48:40 <Lycurgus> stepkut: yes
17:48:51 <bonobo> hsp, harp was a web framework
17:48:57 <stepkut> there are also turbinado (abandon) and wash/cgi
17:49:08 <Lycurgus> ah
17:49:14 <bonobo> HAppS is in hackage still, so mixes things up
17:49:22 <stepkut> hsp is sort-of a framework, though these days it is mostly just used with HAppS
17:49:29 <stepkut> s/HAppS/Happstack/
17:50:22 <bonobo> hsp isn't a framework anymore, but still...
17:50:29 <Lycurgus> so five active and a bunch of non framework apps
17:51:12 <bonobo> Creating patch to "http://patch-tag.com/r/mae/happstack"...
17:51:14 <bonobo> Patch bundle will be sent to: sseses@gmail.com
17:51:16 <Lycurgus> this would be the premiere one iff ...
17:51:26 <stepkut> bonobo: right, trying to figure out how to change that
17:51:38 <bonobo> _darcs/preferences/mail ?
17:51:41 <bonobo> or something?
17:52:11 <stepkut> bonobo: I tried that.. no effect
17:52:36 <stepkut> I am asking in
17:52:38 <stepkut> #darcs now
17:54:05 <Lycurgus> are any of these packages actually used on the haskell web sites like hackage?
17:55:25 <stepkut> Lycurgus: can you rephrase that ?
17:56:33 <Lycurgus> are any of the haskell sites such as hackage based on haskell web packages?
17:56:46 <Lycurgus> s/based/running/
17:56:58 <Lycurgus> and if so which
17:57:03 <stepcut> Lycurgus: there is an unreleased version of hackage that is written using happstack
17:57:11 <stepcut> Lycurgus: patch-tag.com is based on happstack
17:57:22 <stepcut> Lycurgus: gitit uses happstack as well
17:57:23 <Lycurgus> are those the same?
17:57:37 <Lycurgus> i c so three diff
17:57:41 <stepcut> yes
17:57:47 <Lycurgus> two in actual use
17:57:54 <stepcut> scrolls.com as well
17:58:06 <stepcut> happstack.com is a happstack app
17:58:26 <stepcut> there are some other ones I don't know about I think
17:58:47 <stepcut> I'm working on one that should be released soon I hope
17:58:56 <Lycurgus> gitit.com produces a white screen
17:59:58 <stepkut> yeah, gitit is just the projcet name for a wiki written using happstack+darcs. Not sure where a running instance is off-hand
18:00:32 <stepkut> here is one -> http://tweaklabs.org/
18:03:36 <Lycurgus> thanks
18:04:37 <stepkut> ok, darcs send now uses a sensible email address !
18:04:37 <Lycurgus> so still looks like the main instrinsic value of choosing a haskell based web framework is job security
18:05:01 <stepkut> Lycurgus: can you help us fix that ?
18:05:26 <Lycurgus> maybe stepkut, today my blood sugar is low though :)
18:05:32 <stepkut> Lycurgus: :)
18:08:39 <bonobo> stepkut: good :)
18:10:09 <bonobo> stepkut: how about killing happstack-tutorial? it is scary :)
18:10:22 <bonobo> guestbook is beautiful
18:10:32 <bonobo> your new stuff looks promising too
18:10:53 <stepkut> bonobo: once the crashcourse is done we can make it standard over the tutorial
18:18:36 <stepkut> hmm, the -fno-warn-unused-binds is not working in happstack-state.cabal :(
18:19:44 <stepkut> oh
18:19:59 <stepkut> wrong warning, I want, -fno-warn-unused-do-bind
21:46:28 <dons> any thoughts on running happstack on top of the snap server?
21:48:10 <stepkut> dons: it would be nice to use the iteratee backend, thought it is currently tangled up in the rest of the code
21:48:15 <stepkut> s/thought/though/
21:49:01 <stepkut> to run happstack on the snap server backend, we would just need, the Response, Request, and PortNum -> (Request -> IO Response), functions
21:50:46 <stepkut> it would not be a drop in replacement, though it could be easy to port many apps
21:51:04 <dons> yeah, that'd be attractive
21:51:08 <dons> share infrastructure
21:51:24 <stepkut> it would be more attractive to me if they had just patched happstack to start with :p
21:51:50 <stepkut> well, not exactly
21:52:07 <stepkut> it would be nice if there was something like wai that everyone could actually agree on
21:53:39 <stepkut> it would be nice if happstack did not have it's own special backend
21:54:06 <stepkut> I started an experimental port to wai, but, it is not clear that is gaining much traction
21:54:45 <stepkut> I could just as easily port to the snap backend, but not sure I want to do that if it does not gain traction either
21:55:35 <stepkut> I don't really want to add yet another custom iteratee backend to happstack, too many already. But there is no clear choice on what to use, wai, snap, hyena, etc
21:56:06 <stepkut> the only advantage to adding something to happstack directly is that it might increase the chances of being backwards compatible
21:56:21 <stepkut> but it's not really that big of a deal.. would rather have less code to maintain
21:58:14 <stepcut> but I think happstack needs most at the moment is better documentation, branding, and promotion