06:02:27 <levi> Hmm, the HSX parser and AST have a weird field in the XTag data type.  It's a Maybe Exp that shows up after the attributes but before the closing > of the start tag.  Anyone know what it's for?
06:08:20 <levi> Is it supposed to be a haskell expression that represents some more attributes?
06:09:56 <levi> Hmm, that must be what it is.
16:56:52 <stepcut> levi: yes. makes it easy to do things like <a href="foo" (if b then ["class":="bar"] else [])>
16:56:59 <stepcut> or whatever
17:01:01 <levi> Once I tracked down all the code and actually worked through it, it became clear that's what it was for.  That probably ought to be mentioned in some documentation somewhere.
17:01:38 <levi> At first I thought it might be for some obscure XML syntax I'd never heard of before, so I went down entirely the wrong research path. :)
17:03:13 <donri> hsx docs in general could be improved
17:07:10 <levi> Do any exist aside from haddock and the crash-course?
17:07:56 <donri> there's the original hsp paper
17:08:11 <donri> stepcut: got a working link for that?
17:08:13 <levi> Ah, I never ran into that one.
17:10:22 <donri> dcc would probably not work :p
17:10:30 <donri> what's a good file dump site these days
17:11:03 <levi> Did you try to dcc me?  That may explain the little error message in the minibuffer.
17:12:27 <levi> Is it the paper by Erik Meijer and Danny van Velzen?
17:12:34 <levi> I found it, if that's the one.
17:13:02 <donri> hm no, by niklas
17:13:59 <donri> blah people say dropbox is easy
17:14:12 <donri> this is insanely difficult
17:14:36 <levi> Heh.
17:15:14 <levi> OK, I found that one too.
17:15:26 <donri> http://dl.dropbox.com/u/27968322/hsp.pdf
17:15:33 <donri> OK
17:21:54 <levi> I didn't realize you could pattern-match on the XML expressions.
17:24:14 <levi> What would be really handy is being able to pattern match on a concrete syntactic representation of JSON.  Things seem to be moving away from XML for RPC data interchange.
17:26:39 <levi> Of course, maybe parsing JSON into Haskell data structures and pattern matching on them is a better thing to do anyway.
17:35:29 <donri> yea probably
17:35:35 <donri> but you could probably do the former with harp
17:35:44 <donri> (which is what hsx uses)
17:36:44 <donri> or you could use pattern QQs
17:37:30 <donri> getError [p| {error: e} |] = e -- or something
17:37:43 <donri> uh, not [p||]
17:38:01 <donri> rather you'd have a json QQ that implements quotePat
17:41:55 <levi> Looks like Aeson makes parson JSON into Haskell pretty easy.
17:42:00 <levi> Heh, parsing.
17:42:44 <donri> parson JSING
17:50:07 <stepkut> levi: http://www.happstack.com/docs/crashcourse/Templates.html#hsx-attr-list
17:50:10 <stepkut> levi: ;)
17:50:49 <donri> crash course is currently the best resource for hsx, despite hsx not being a happstack package ^_^
17:51:30 <stepkut> I have worked on HSP quite a bit though.. fixed a number of bugs and made some significant design changes
17:51:44 <donri> i'm not complaining :)
17:51:47 <stepkut> me neither
17:51:55 <stepkut> it's nice to not be the maintainer of something :p
17:52:00 <donri> =)