I've been considering sneaking in the Core into the iface as `mi_rules`
with specially chosen names and activation `NeverActive`. The benefit of
this is that we can hijack the compilation pipeline, but still remain
compatible with versions of GHC going quite a while back.

On 20/10/21 18:03, Moritz Angermann wrote:
Right, my understanding is that they are not sufficient however, as Michael
layed out here
https://gitlab.haskell.org/ghc/ghc/-/wikis/Core-interface-section#unfoldings

This should be linked together better. We'll improve this.

On Wed, Oct 21, 2020 at 5:56 PM Simon Peyton Jones <simo...@microsoft.com>
wrote:

Thanks Mortiz



That wiki page is about extensible interface files in general. It says
nothing about specifically putting Core terms into interface files.



For the Core part, since GHC already puts Core into unfoldings, the simple
thing is just to expose all unfoldings, no?



Simon



*From:* ghc-devs <ghc-devs-boun...@haskell.org> *On Behalf Of *Moritz
Angermann
*Sent:* 21 October 2020 10:36
*To:* Ben Gamari <b...@well-typed.com>
*Cc:* Edward Yang (ezy...@cs.stanford.edu) <ezy...@cs.stanford.edu>;
ghc-devs@haskell.org
*Subject:* Re: Fat interface files?



Just to make sure we are aware of all the ongoing efforts. We've been
working on ebedding Core into interface files as well.

Josh has updated the Wiki page here
https://gitlab.haskell.org/ghc/ghc/-/wikis/Extensible-Interface-Files
<https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgitlab.haskell.org%2Fghc%2Fghc%2F-%2Fwikis%2FExtensible-Interface-Files&data=04%7C01%7Csimonpj%40microsoft.com%7C644d055c20ed4377753c08d875a4cfa1%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637388698431720509%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C2000&sdata=5xMRK5FF7OKifyceURAEkcNzo6naUzvLkRWnsCto7pc%3D&reserved=0>
.



Cheers,

 Moritz



On Wed, Oct 21, 2020 at 12:06 AM Ben Gamari <b...@well-typed.com> wrote:

Hi Edward,

While chatting with the ghc-ide folks recently I realized that it would
be useful to be able to preserve Core such that compilation can be
restarted (e.g. to be pushed down the bytecode pipeline to evaluate TH
splices).

As I recall this is precisely what you implemented in your "fat
interface file" work. Do you recall what the state of this work was? Do
you have a branch with last-known-good work? Do you recall any tricky
questions that remained outstanding?

Cheers,

- Ben
_______________________________________________
ghc-devs mailing list
ghc-devs@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs
<https://nam06.safelinks.protection.outlook.com/?url=http%3A%2F%2Fmail.haskell.org%2Fcgi-bin%2Fmailman%2Flistinfo%2Fghc-devs&data=04%7C01%7Csimonpj%40microsoft.com%7C644d055c20ed4377753c08d875a4cfa1%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637388698431720509%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C2000&sdata=ETWa%2BwN2LQyoi4NVDdNktv%2BUiQMfWvvj5rg5HdL24Tk%3D&reserved=0>


Attachment: signature.asc
Description: PGP signature

_______________________________________________
ghc-devs mailing list
ghc-devs@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs

Reply via email to