Skip to content

[ design ] Re-exports from Algebra.Properties.X #2804

Description

@jamesmckinna

Reading over #2695 and its antecedent PRs #2688 and #2692 , I have the feeling that we still haven't quite got the API right for Properties modules:

  • it's not obvious that we do, but I think we should, reexport the axioms from the underlying isX : IsX ... substructure, otherwise we are left in the (slightly?) uneasy position of having to make multiple re-imports to get the 'widest possible' API (so perhaps the design question is more: "how wide should the API be?")
  • we certainly don't consistently re-export Algebra.Properties.Y y for each sub-bundle y :Y which is re-exported publicly by bundle X, but again, I think that we should (which, if nothing else, would encourage us to improve consistency in naming such properties)

Group is the first really intricate version of the phenomenon, where some recent retrofitting #2251 manages to re-export the underlying Loop and Quasigroup properties, but we still don't re-export the Monoid (and hence Semigroup) properties for the underlying monoid object.

We should improve our documentation of what we (think that we should) do, and try to ensure that we do, indeed, do it!

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions