I'm guessing that since Haskell's ghci is not a full-fledged REPL, you can't really use it for defining functions in orgmode source blocks, i.e.,
#+begin_src haskell
doubleMe x = x + x
#+end_src
isn't allowed in the ghci. But then
#+begin_src haskell
let doubleMe x = x + x
#+end_src
works, but
#+begin_src haskell
let doubleSmallNumber4 x = if x > 0
then x
else x*2
#+end_src
complains about parsing the else
. I'm assuming Haskell and orgmode simply don't play well together -- at least when it comes to using orgmode source blocks . . . or am I missing something?