Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Question about Changes to HERMIT.Monad and HERMIT.Dictionary #144

Open
anshulmalvi opened this issue Aug 7, 2015 · 6 comments
Open

Question about Changes to HERMIT.Monad and HERMIT.Dictionary #144

anshulmalvi opened this issue Aug 7, 2015 · 6 comments

Comments

@anshulmalvi
Copy link

I am trying to compile conal/hermit-extras with the latest version of hermit (1.0.0.0) using ghc 7.10.2 but am running into the the compile error listed below. I think hermit-extras requires hermit-0.5.0.1 or greater.
HERMIT.Extras relies on symbols that are no longer exported from HERMIT.Monad and HERMIT.Dictionary. Has the functionality been removed or refactored? Thanks

[1 of 1] Compiling HERMIT.Extras ( src/HERMIT/Extras.hs, dist/build/HERMIT/Extras.o )

src/HERMIT/Extras.hs:126:12:
Module ‘HERMIT.Monad’ does not export ‘HasHscEnv(..)’

src/HERMIT/Extras.hs:126:51:
Module ‘HERMIT.Monad’ does not export ‘RememberedName(..)’

src/HERMIT/Extras.hs:126:70:
Module ‘HERMIT.Monad’ does not export ‘saveDef’

src/HERMIT/Extras.hs:126:78:
Module ‘HERMIT.Monad’ does not export ‘lookupDef’

src/HERMIT/Extras.hs:126:88:
Module ‘HERMIT.Monad’ does not export ‘getStash’

src/HERMIT/Extras.hs:137:27:
Module ‘HERMIT.Dictionary’ does not export ‘inScope’

src/HERMIT/Extras.hs:138:5:
Module ‘HERMIT.Dictionary’ does not export ‘buildTypeable’

@anshulmalvi anshulmalvi changed the title Changes in HERMIT.Monad and HERMIT.Dictionary Question about Changes to HERMIT.Monad and HERMIT.Dictionary Aug 7, 2015
@xich
Copy link
Member

xich commented Aug 7, 2015

Note that (as discussed in #141) 7.10.2 is not recommended with HERMIT right now. 7.10.3 should fix things, when it is released.

Regarding changes:

src/HERMIT/Extras.hs:126:12:
Module ‘HERMIT.Monad’ does not export ‘HasHscEnv(..)’

getHscEnv now requires a LiftCoreM constraint. HasHscEnv is no more.

src/HERMIT/Extras.hs:126:51:
Module ‘HERMIT.Monad’ does not export ‘RememberedName(..)’

src/HERMIT/Extras.hs:126:70:
Module ‘HERMIT.Monad’ does not export ‘saveDef’

src/HERMIT/Extras.hs:126:78:
Module ‘HERMIT.Monad’ does not export ‘lookupDef’

src/HERMIT/Extras.hs:126:88:
Module ‘HERMIT.Monad’ does not export ‘getStash’

These stash-related functions were refactored away in favor of using lemmas. The functionality in HERMIT.Dictionary.Remembered should get you back on track. For instance, the expression constT (saveDef (RememberedName lab) def) could be replaced by rememberR (fromString lab).

src/HERMIT/Extras.hs:137:27:
Module ‘HERMIT.Dictionary’ does not export ‘inScope’

inScope is now in HERMIT.Context

src/HERMIT/Extras.hs:138:5:
Module ‘HERMIT.Dictionary’ does not export ‘buildTypeable’

This is fixed in 449a7de

@anshulmalvi
Copy link
Author

Thanks! This helps

@andygill
Copy link
Member

@anshulmalvi - we should do a phone meeting to chat about HERMIT, and how KU can sync up/help. If you are going to ICFP, we can chat there. We want to make HERMIT usable by others.

@anshulmalvi
Copy link
Author

Hi @andygill ,

Thanks for reaching out. I am still getting up to speed with what HERMIT is and how @conal uses it in his lambda-ccc and circat projects. I would at least like to learn the basics to make our conversation productive. Besides the resources on http://ku-fpg.github.io/software/hermit/ do you recommend any other materials that may help me? Thanks

Anshul
PS: I will not be attending ICFP.

@andygill
Copy link
Member

Thanks. I'm talking to Conal tomorrow, and I'll mention you are interested in these projects.

@anshulmalvi
Copy link
Author

@andygill yes. Initially my interest is in understanding @conal's lambda-ccc. He and I are also in touch.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants