|
Re: special handling of "Main.hs" contradicts Report: msg#00076lang.haskell.glasgow.bugs
Ross Paterson wrote: > On Fri, Apr 25, 2003 at 09:51:55AM +0100, Simon Marlow wrote: > > [Mark Tullsen <mtullsen@xxxxxxxxxxx> writes:] > > > The report leads one to believe "module Main where ..." > > > should export > > > all top-level entitities just the same as if we were > > > defining a module by another name. > > > > Yes, we're aware this is a bug (see my first message in this thread). > > However, I think we're going to declare it as a known > > divergence from the report, for two reasons: > > > > - It's highly unlikely that you need to import Main, so > > you'll never notice the difference. If you *do* need more > > exports from Main, then write 'module Main(module Main) where'. > > I expect it would be confusing for GHCi users. > > > - interpreting 'module Main where' as 'module Main(main) where' > > leads to more efficient code (we have lots of examples > > that do this, I believe). > > How about just suggesting that users write 'module Main(main) where' > to get more efficient code? I second Ross's opinions. Here's a situation that I just encountered that argues for his approach. I'm developing a program. I usually compile it (using `ghc`) after making changes, so I can run some batch tests. Sometimes I want to do some interactive exploration, in which case I invoke `ghci` on it. Without the artificial `module Main (module Main) where`, ghci sees none of the top-level entities in the main module in its compiled form. I have to artificially change the source file and :reload to see these entities. Dean
|
|
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| Previous by Date: | Re: special handling of "Main.hs" contradicts Report, Ross Paterson |
|---|---|
| Next by Date: | problems with GHC.Conc.forkProcess, Dean Herington |
| Previous by Thread: | Re: special handling of "Main.hs" contradicts Report, Ross Paterson |
| Next by Thread: | loading package util on Linux, Dean Herington |
| Indexes: | [Date] [Thread] [Top] [All Lists] |
| News | FAQ | advertise |