
Hi Neil,
Well, for the record, I've used both CPP and string gaps extensively. And all I've done is to be careful to run CPP only where needed (and avoid string gaps there), which seems rather sensible to me anyway, string gaps or not.
Having two "features" which can't be used together in the same file seems ridiculous.
Again, CPP is not part of Haskell as such, and I hope it won't become part either. So anyone using CPP with Haskel should know what they are doing. True, it so happens that CPP does get use a fair bit with Haskell for various reasons, and there is some dedicated tool support for CPP. So it would be good if the version of CPP used through a Haskell tool chain was Haskell aware.
It gets much worse if you decide "ghc --make -cpp" is the way you want to build your application, as we used to do for Yhc.
Wouldn't {-# LANGUAGE CPP #-} be a viable option in the, presumably rather few, files where CPP really is used? (That's also rather good documentation for the reader of the file, incidentally.) Again, running an entire project through CPP just because a few files needs CPP-ing, is something I at least would try to avoid.
I suggest that if string gaps don't get removed, then GHC should fix its -cpp flag.
Would be nice, but probably not an H' discussion topic, unless you're arguing that some kind of CPP facility is mandated by the H' standard? Best, /Henrik -- Henrik Nilsson School of Computer Science The University of Nottingham nhn@cs.nott.ac.uk This message has been checked for viruses but the contents of an attachment may still contain software viruses, which could damage your computer system: you are advised to perform your own checks. Email communications with the University of Nottingham may be monitored as permitted by UK legislation.