Simon Peyton-Jones wrote:
>
> | At the time of writing, I am waiting for yet another long
> | Haskell re-make of
> | lots of modules to complete. The frustrating thing is, that
> | at least 90% of these
> | remakes are actually completely unnecessary.
>
> OK, I have heard your cries, and have f
| At the time of writing, I am waiting for yet another long
| Haskell re-make of
| lots of modules to complete. The frustrating thing is, that
| at least 90% of these
| remakes are actually completely unnecessary.
OK, I have heard your cries, and have fixed GHC.
Try it.
Simon
Part of the problem right now seems to be that GHC is wrongly rewriting (or
perhaps touching) the .hi file even though nothing in it is altered.
(This is clear because -hi-diffs is also on and not reporting anything).
Thus even though I'm using -Onot -recomp it's still recompiling everything.
| At the time of writing, I am waiting for yet another long
| Haskell re-make of
| lots of modules to complete. The frustrating thing is, that
| at least 90% of these
| remakes are actually completely unnecessary.
I've often wondered how to improve this.
I'm very reluctant to duplicate info
> Sigbjorn Finne wrote:
> >
> > Seems like you're not using -recomp.
> No I'm not. What about documenting it somewhere?
Good point. I'll add a note about it.
Perhaps -recomp should be the default?
Cheers,
Simon
> There is another less serious problem. Suppose that B had
> imported C only
> to export it again (either by listing it in the export list, or not
> having any export list at all). However I think the best way to deal
> with this is simply to copy over all the types and other information
> fro
George Russell <[EMAIL PROTECTED]> writes:
>
> Sigbjorn Finne wrote:
> >
> > Seems like you're not using -recomp.
> No I'm not. What about documenting it somewhere?
>
I think that's a fine suggestion which GHC HQ will probably
do something about (Section 3.7.4 doesn't actually mention
it by
George Russell wrote:
>
> Sigbjorn Finne wrote:
> >
> > Seems like you're not using -recomp.
> No I'm not. What about documenting it somewhere?
I take that back. I AM using it in the big program I mentioned, but I still
get huge swathes of unnecessary compilations. Maybe it needs to be still c
Sven Panne wrote:
> George Russell wrote:
> > [...] Supposing you now make a change to C. For example, suppose
> > you add a line
> >pangle = "pangle"
> > to the end of C, and add "pangle" to the list of exports from C.
> > Then you recompile C. You will find that C.hi now has a new version
Sigbjorn Finne wrote:
>
> Seems like you're not using -recomp.
No I'm not. What about documenting it somewhere?
Seems like you're not using -recomp.
--sigbjorn
> -Original Message-
> From: George Russell [mailto:[EMAIL PROTECTED]]
> Sent: Friday, February 25, 2000 8:53 AM
> To: [EMAIL PROTECTED]
> Subject: Importing instances without pangling Make
>
>
Jon Fairbairn wrote:
> I'm afraid I've not gone through your detailed suggestions, but in the
> short term, would a crude hack that I used to use with Algol68C help?
No, fraid not. GHC already does this hack anyway. Algol68C didn't have
interface declarations. Still, nice to find someone else w
George Russell wrote:
> [...] Supposing you now make a change to C. For example, suppose
> you add a line
>pangle = "pangle"
> to the end of C, and add "pangle" to the list of exports from C.
> Then you recompile C. You will find that C.hi now has a new version
> number "2".
Strange, this i
Malcolm Wallace wrote:
> Wrong. If B imports C and has no export list, nothing from C is
> re-exported, only definitions from B itself, with the single exception
> of C's instance decls.
OK, but this has no influence at all on my suggestions except to make
them work slightly better.
George Russell wrote:
> This scheme is not the cleverest that could be devised. For example it is
> still necessary to recompile whole chains of modules if you add an import
> declaration. (Not to a system library, imports from those are counted as
> "stable" in GHCs and my system.) To fix this
> Suppose that B had imported C only
> to export it again (either by listing it in the export list, or not
> having any export list at all).
Wrong. If B imports C and has no export list, nothing from C is
re-exported, only definitions from B itself, with the single exception
of C's instance decl
> At the time of writing, I am waiting for yet another long Haskell re-make of
> lots of modules to complete. The frustrating thing is, that at least 90% of
> these
> remakes are actually completely unnecessary.
I'm afraid I've not gone through your detailed suggestions, but in the
short term,
17 matches
Mail list logo