
| It seems that GHCi outputs the contents of the variable you've created | when there's only one of them.
Indeed, that is documented behaviour (first bullet here: http://www.haskell.org/ghc/docs/latest/html/users_guide/ch03s04.html#ghci-st... ) Perhaps it's confusing behaviour? If so do suggest an alternative.
why not simply do what the flag suggests, either always try to print the bind-result, or never? i assume there has been a use case where this special case has been found useful/necessary? as for earlier questions/suggestions in this thread:
Is there a way to make GHCi not print the result of an action but still make my variables get bound?
This seems to be a common question (I myself asked it recently), so I've added an entry to the GHCi page on the wiki.
Ideally, it would be nice if this were discoverable from within GHCi, but I'm not sure how this would best be done.
i've run into this myself!-) there is a patch pending for ghc head (so it may not be in 6.8.1:-( that would show the GHCi-specific flags together with the GHCi options: Prelude> :set options currently set: none. GHCi-specific dynamic flag settings: -fno-print-explicit-foralls -fprint-bind-result -fno-break-on-exception -fno-break-on-error -fno-print-evld-with-show other dynamic, non-language, flag settings: .. so you'd at least know which possibly relevant flags there are, and if the names are not expressive enough, the :help would point you to the flag reference: :help .. Options for ':set' and ':unset': +r revert top-level expressions after each evaluation +s print timing/memory stats after each evaluation +t print type after evaluation -<flags> most GHC command line flags can also be set here (eg. -v2, -fglasgow-exts, etc.) for GHCi-specific flags, see User's Guide, Flag reference, Interactive-mode options ..
I've always wondered if ghc(i) --help should be a bit more instructive, or perhaps if there were a man page that lay somewhere between the --help message and the manual in terms of comprehensiveness. It's a pretty major jump from a short description of 4 command line options (only one of which I have ever used) to the entire manual, with a ~10 page table of contents.
please note that the flag reference, which was pointed to earlier in this thread, is just such a summary, and there's a subsection dedicated to GHCi-specific options. there isn't much in that section in 6.6.1: http://www.haskell.org/ghc/docs/latest/html/users_guide/flag-reference.html#... but in ghc head and the upcoming 6.8, you'll find most of the GHCi-related flags summarized there. hth, claus