Understanding bind in template haskell