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

Add Contravariance #29

Open
FintanH opened this issue Jul 27, 2018 · 3 comments
Open

Add Contravariance #29

FintanH opened this issue Jul 27, 2018 · 3 comments
Labels
good first issue Good for newcomers Open Source Labelling open source contributions

Comments

@FintanH
Copy link
Contributor

FintanH commented Jul 27, 2018

Add contravariant functor i.e.:

λ(f : Type → Type)
→ { contra = ∀(a : Type) → ∀(b : Type) → (b → a) → f a → f b }

Should probably go under Contravariant/Functor/Type

Along with this we could add Coyoneda and other functionality.

@FintanH FintanH added the good first issue Good for newcomers label Jul 27, 2018
@sellout
Copy link
Contributor

sellout commented Jul 27, 2018

Should probably go under Contravariant/Functor/Type

What if we put this in Functor/Contravariant/type and moved Functor to Functor/Covariant/type Then we could also add bifunctor as Functor/Product/type and profunctor as Functor/Profunctor/type.

@sellout
Copy link
Contributor

sellout commented Jul 27, 2018

And yeah, for Yoneda/Coyoneda maybe want the same structure – e.g., Yoneda/{Contra|Co|Prod}/type

@FintanH
Copy link
Contributor Author

FintanH commented Aug 5, 2018

Another addition is mentioned in the comment here #31 (comment)

@FintanH FintanH added the Open Source Labelling open source contributions label Sep 9, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
good first issue Good for newcomers Open Source Labelling open source contributions
Projects
None yet
Development

No branches or pull requests

2 participants