¿Es posible utilizar la API de GHC de modificar un programa durante la compilación de ella?

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

  •  28-09-2019
  •  | 
  •  

Pregunta

Quiero probar la implementación de una optimización del compilador llevando a cuestas en el proceso de compilación GHC y alterar su representación Core. La idea sería tener algo como:

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

donde modify toma la representación Core y devuelve la versión modificada. Este código, sin embargo, falla (incluso cuando Modificar no hace nada en absoluto) con el mensaje no es muy útil:

expectJust mkStubPaths

¿Alguna idea sobre cómo hacer este trabajo, o si es aún posible llevar a cabo una transformación código de esta manera?

¿Fue útil?

Solución

Eso suena como un error en compileCoreToObj a mí. Por favor, informan que .

Otros consejos

GHC tiene soporte para plugins ahora, que parecen hacer exactamente lo que quiere.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top