Skip to content

Move basic typeclasses into cats-kernel #777

Description

@rklaehn

Cats will lose the dependency on algebra. In order for algebra and spire to depend on cats, there needs to be a small and stable core of essential typeclasses (algebra and spire will not want to depend on all of cats).

This core should contain at least

Eq
Order/PartialOrder
Semigroup/Monoid/Group
Show

I think it would be OK to have the core not that small, since the main concern from the algebra side is not .jar size but binary compatibility concerns. So if it is an advantage to have e.g. SemigroupK and MonoidK in there as well, that would be fine IMHO.

@non maybe just having all of algebra depend on cats-core is also acceptable. The only thing I really want to avoid is having duplicated typeclasses in cats and algebra.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions