Ist es möglich, den GHC-API zu verwenden, um ein Programm zu ändern, während es kompiliert?

StackOverflow https://stackoverflow.com/questions/3864766

  •  28-09-2019
  •  | 
  •  

Frage

Ich möchte die Umsetzung einer Compiler-Optimierung testen, indem sie in den GHC Kompilierungsvorgang Huckepack und Veränderung seiner Darstellung Kern. Die Idee wäre, so etwas wie:

runGhc (Just libdir) $ do
   ...
   c <- compileToCoreModule targetFile
   compileCoreToObj False (modify c)
   ...

Dabei gilt modify die Kern Darstellung nimmt und gibt die modifizierte Version. Dieser Code ist jedoch nicht (auch wenn modify tut nichts) mit dem nicht sehr hilfreich Nachricht:

expectJust mkStubPaths

Alle Ideen, wie diese Arbeit zu machen, oder ob es sogar möglich, eine Codetransformation auf diese Weise zu implementieren?

War es hilfreich?

Lösung

Das klingt wie ein Fehler in compileCoreToObj mir. Bitte melden Sie es .

Andere Tipps

hat GHC Unterstützung für Plugins jetzt, die erscheinen, genau das zu tun, was Sie wollen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top