Skip to content

Change Monad polymorphism#20

Closed
omelkonian wants to merge 2 commits into
masterfrom
hyper-ultra-monad-polymorphism
Closed

Change Monad polymorphism#20
omelkonian wants to merge 2 commits into
masterfrom
hyper-ultra-monad-polymorphism

Conversation

@omelkonian

Copy link
Copy Markdown
Collaborator

Suggestion by @UlfNorell to also allow for mapping the input/domain level, which further enables non-polymorphic instances.

(Based on #19)

@omelkonian

Copy link
Copy Markdown
Collaborator Author

@UlfNorell Ouch, unification issues really make things tedious..

@UlfNorell

Copy link
Copy Markdown
Member

It's a little surprising that it's that much worse than the ultra-polymorphism version.

@WhatisRT

WhatisRT commented Jun 4, 2025

Copy link
Copy Markdown
Collaborator

That's a nice idea! Can we use a tactic argument to default the first level mapping to id to solve the unification issues? If that works the overhead is contained in the class definitions (Functor, etc.) where you have to manually pass the first level mapping correctly and then all the places where you want to have a different first mapping.

@omelkonian

Copy link
Copy Markdown
Collaborator Author

Closing in favour of #19

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

Successfully merging this pull request may close these issues.

3 participants