I'm guessing Haskell and org-mode Babel aren't really a great match? After installing haskell-mode, I've tried

#+begin_src haskell 
doubleMe x = x + x 
#+end_src

which isn't working . . . because it isn't allowed in the ghci?

#+begin_src haskell 
let doubleMe x = x + x 
#+end_src

works. However,

#+begin_src haskell
let doubleSmallNumber4 x = if x > 0
                            then x 
                             else x*2 
#+end_src

complains of a parsing error on else. How does Haskell work in org mode?

LB