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

Eq and Show instances for SBV #241

Closed
LeventErkok opened this issue Feb 23, 2017 · 2 comments
Closed

Eq and Show instances for SBV #241

LeventErkok opened this issue Feb 23, 2017 · 2 comments

Comments

@LeventErkok
Copy link
Owner

It would be nice to remove Eq and Show instances for SBV.

  • Show instance seems to be relatively easy to remove; compilation issues can probably be worked around by using "<symbolic>" in the non-concrete case, which is what happens anyhow.

  • Eq instance is tricky. We want Bits (SBV a). But in Haskell, Bits class has Eq as its super-class, which necessitates the Eq (SBV a). This is unfortunate. What's not clear to me is why the Bits class require Eq? This seems to be an oversight, and perhaps might be good to take it with the proposals process to see if it can be removed.

@LeventErkok
Copy link
Owner Author

Fixed one half of this, by removing the Show instance. The other half (Eq instance) has a new ticket: #301.

@LeventErkok
Copy link
Owner Author

Wohoo! Actually the Show instance is kind of "required" since otherwise we can't just apply symbolic value producing functions to constants and have their values shown. Silly me.. Reverted the changes.

LeventErkok added a commit that referenced this issue Jul 4, 2017
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

1 participant