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

Implement default instances of typeclasses. #56

Open
wants to merge 8 commits into
base: develop
Choose a base branch
from

Conversation

griwes
Copy link
Member

@griwes griwes commented Aug 26, 2020

No description provided.

Comma expressions shall be dead from this point onwards.
This way the code in default_instance_expression can just become a function,
and we have one AST node kind less to worry about.
…resentation.

Start building the instance selector functions.
There's a few minor refactors in this commit as well, like finally
making builtin_types return things that don't need unwrapping with get,
but the title line is the soul of the changes.

Name handling is now done top-down, not bottom-up; every layer knows its
_full_ name as soon as it is possible. This simplified scope handling,
removed the need for scope generators, and enabled default instances.
Generally a lot of things are now how they should've been from the
start.

Anyway, it's now possible to import a default instance. Nice. Only...
a... year? in the works.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

Successfully merging this pull request may close these issues.

None yet

1 participant