Gosh, it worked. So I wasn't crazy or remiss, rather, I just didn't know how deep the rabbit hole was. Thanks! One odd thing still. I tried to run #+begin_src haskell :set prompt-cont "" #+end_src and like other times before trying to run Haskell blocks it complained saying executing Haskell code block... org-babel-script-escape: ‘org-babel-script-escape’ expects a string so I add :results output to the #+begin line and it works. Would anyone know what that is about? On Thu, May 30, 2019 at 3:25 PM Bruno Barbier wrote: > > Hi Lawrence, > > > Lawrence Bottorff writes: > > > I've been trying to get Haskell to work in babel code blocks for a long > > time. A year or so ago I tried and eventually gave up. I tried again > > recently . . . same old problems, i.e., the code block is evaluated > > exclusively by the ghci REPL, which doesn't understand or play well with > an > > org babel code block. > > > ... > > Soooo, any ideas? > > I'm using the header arguments: > > > :prologue ":{\n" :epilogue ":}\n" > > > > to request org to insert those multiline tags :{ :} > (so, I'm not using ":set +m"). > > I'm defining these header args as headline properties (so that I don't > have to enter them again and again). Something like that: > > #+begin_example > ,** A title > :PROPERTIES: > :header-args:haskell: :prologue ":{\n" :epilogue ":}\n" > :END: > #+end_example > > I'm telling ghci to not insert a prompt, when waiting for the end of a > multiline. > > #+begin_src haskell > :set prompt-cont "" > #+end_src > > > Configured like this, it seems to be working quite well for me (great > job org and GHC teams!). > > > #+begin_src haskell > doubleSmallNumber x = > if x > 10 > then x > else x * 2 > #+end_src > > No error. > > #+begin_src haskell > let > showMe :: Int -> [String] > showMe x = [show x, show $ doubleSmallNumber x] > in > [ ["x", "doubleSmallNumber x"] > , showMe 3 > , showMe 13 > ] > #+end_src > > #+RESULTS: > | x | doubleSmallNumber x | > | 3 | 6 | > | 13 | 13 | > > > > My config: > > | ghci | 8.6.3 | > | emacs | 26.1 | > | org | 9.2.3 | > | OS | linux | > > > If it doesn't work for you on GNU/Linux, post the example and I will try > it on my computer (sorry, I won't be able to help you with Microsoft > Windows though). > > > > Bruno > > > > LB >