Removing -fext-core

Richard Eisenberg eir at
Sun Apr 27 16:10:32 UTC 2014

+1 from me

I’ve been meaning to say essentially the same thing as you just did. We all seem to concentrate on *adding* things to GHC; it’s a bit refreshing to consider *removing* something.

Echoing Austin somewhat:

- Anyone using external core is either working with an old GHC or is kludging quite a bit, as it’s horribly rotten compared to “internal” core.

(For what it’s worth, I’m responsible for much of the rot. When I started working on Core, external core was just enough rotten already that I didn’t feel compelled to keep it up to date... but now it’s in a sorry state, indeed.)

- With the GHC API, the ability for plugins, and HERMIT[1], I think external core’s utility has been eclipsed.

- GHC actually contains a parser for external core, which is type-checked during compilation, but its functions are never actually called anywhere! This is a sure sign of Something Wrong.



On Apr 27, 2014, at 9:14 AM, Austin Seipp <austin at> wrote:

> Hello all,
> Recently I was wondering something: is there any reason to keep
> -fext-core around? In particular, it's been broken for a while at this
> point, see GHC bug #5630[1]
> As far as I'm aware there really aren't any users of it still around
> these days, at least none working with a modern GHC. And it seems like
> if people were to need access to Core, they could use a plugin or some
> such to get direct access to what they want.
> Simon mentioned removing ExtCore in face of replacing it with IfaceSyn
> in the compiler. I'm not entirely sure how much work that would be to
> bring it all up to scratch if people needed it, but maybe it's worth
> thinking about.
> One other issue is a notion of semantics which is present in External
> Core, but we also now have a documented semantics for GHC's core
> language as well (which has evolved quite a bit), so I don't know how
> much that matters.
> So long story short: I don't think anyone is using it, maintaining it,
> and it seems subsumed by more recent events.
> Therefore, if nobody objects, I'd vote to remove -fext-core from GHC,
> unless someone is willing to step up and really maintain it. If you're
> using it, you should probably speak up soon I'd imagine...
> [1]
> -- 
> Regards,
> Austin Seipp, Haskell Consultant
> Well-Typed LLP,
> _______________________________________________
> ghc-devs mailing list
> ghc-devs at

More information about the Glasgow-haskell-users mailing list