| Ah, of course. I was a bit confused, as: | | main = putStrLn (show ( let a = 1# in I# a )) | | does bind, and compile. But I guess that's because it isn't at the | top level? Correct. Top level => you can't see the scope of the 'let', and typing is kind of incremental. It's easier if everything has a uniform representation there. S