[Haskell-cafe] Re: Weird ghci behaviour?

Bulat Ziganshin bulat.ziganshin at gmail.com
Wed Nov 14 04:30:27 EST 2007

Hello Simon,

Wednesday, November 14, 2007, 11:28:23 AM, you wrote:

> I can think of some other possibilities:

> (a) It would be possible to record in the .hi file the fact that
> there originally *was* a top-level 'x', and so produce the message
> you suggest.  But it'd be one more thing to implement, document, and maintain.

and this will increase amount of recompilation for large projects

> (b) We could decide *never* to use compiled modules (M.o) for
> home-package modules, but only for other-package modules.  Then at
> least all the home-package modules would have their names in scope. 
> So the home package would be always interpreted.  (The home package
> is the modules of your current project, not installed as a
> "package".)  This'd be pretty easy.

it may be great if such behavior enabled by some option, such as
-force-recomp. in many cases, we need to run compiled code inside ghci

how about such variant?

d) when printing message about undefined symbol, add note about
reloading sources:

"Symbol `x` undefined; if it's a top-level symbol in some loaded
module M, please reload this module source-wise: :load M.hs"

and implement directive ":load M.hs" as interpreted loading of the

Best regards,
 Bulat                            mailto:Bulat.Ziganshin at gmail.com

More information about the Haskell-Cafe mailing list