01:28:02 <Gracenotes> hm.. if you pass a rather large argument to an Update function, is it going to have to be serialized?
03:28:26 <fxr> happstack tutorial is the worst tutorial I ever read...
03:43:54 <stepcut> Gracenotes: yep
03:44:07 <stepcut> fxr: tutorial.happstack.com or the happstack crash course ?
03:44:32 <fxr> former
19:11:36 <McManiaC> stepcut: ping
19:11:51 <stepcut> McManiaC: what's up ?
19:12:01 <McManiaC> stepcut: could you help me with some template haskell?
19:12:08 <stepcut> possibly
19:12:16 <McManiaC> ok
19:12:23 <McManiaC> what I want to do is:
19:14:26 <McManiaC> basicly, I have some "foo :: Int -> ExpQ"
19:14:58 <McManiaC> now I want to generate "enduser" functions with "$(map foo [1..10])" in my library
19:15:06 <McManiaC> how can I add a type to these functions?
19:15:43 <McManiaC> and, is there a list on what "syntactic sugar" TH offers? like [|..|] [d|..|] '' stuff etc? I only found the haddock pages...
19:18:22 <stepcut> you want to add a type signature ?
19:18:42 <McManiaC> yep
19:18:55 <stepcut> there is a way to do that..
19:20:05 <McManiaC> is $(map ...) even correct? I think I have to use some FunD stuff (since I'll need a name), but I dont know how to "run" a DecQ ?
19:20:45 <stepcut> I dunno..
19:20:56 <stepcut> it's been a long time since I did any real TH coding
19:21:02 <McManiaC> hm ok
19:21:41 <stepcut> http://old.nabble.com/splices-in-type-signatures-td4869603.html
19:22:04 <stepcut> you use SigD to create a type signature I think
19:23:27 <McManiaC> what exactly is ''Int ?
19:27:19 <stepcut> beats me :)
19:27:31 <McManiaC> ok
19:27:58 <aavogt> it's the name of the type Int
19:31:25 <McManiaC> ''Int :: Name
19:31:26 <McManiaC> ah
19:31:26 <McManiaC> :)
19:55:29 <McManiaC> http://npaste.de/dp/ ← how could I get this to work? :S
19:56:08 <McManiaC> oh wait nvm
20:12:50 <McManiaC> Ferry/Combinators.hs:189:2:
20:12:50 <McManiaC>     Type constructor `Q' used as a data constructor
20:12:50 <McManiaC>     In the pattern: Q a1
20:12:51 <McManiaC>     In the definition of `tuple_4[a3R3]':
20:12:51 <McManiaC>         tuple_4[a3R3] Q a1 Q a2 Q a3 Q a4 = Q (TupleE a1 a2 [a3, a4])
20:12:56 <McManiaC> any ideas? aavogt?
20:14:01 <McManiaC> the function should be something like "tuple_4 (Q a1) (Q a2) ... = Q (TupleE a1 a2 [...])" (this Q has nothing to do with the TH Q!)
20:20:27 <McManiaC> geee thats a lot of work, just to generate a tuple
20:20:27 <McManiaC> :O
20:21:16 <McManiaC> http://npaste.de/dq/ :O
20:21:21 <McManiaC> spot the mistake lol
20:34:30 <aavogt> McManiaC: use 'Q instead?
20:39:10 <McManiaC> woah
20:39:11 <McManiaC> thx
20:39:19 <McManiaC> tuple_4
20:39:20 <McManiaC>   :: (QA a1, QA a2, QA a3, QA a4) =>
20:39:20 <McManiaC>      Q a1 -> Q a2 -> Q a3 -> Q a4 -> Q (a1, a2, a3, a4)
20:39:21 <McManiaC> :))
21:31:06 <McManiaC> hmm TH is a pain to debug :S
21:44:03 <stepcut> yeah
21:44:10 <stepcut> though ddump-splices helps
21:45:32 <McManiaC> ddump?