I've found the name Curve a bit confusing as a trait impl'd on ProjectivePoints, especially since in @RustCrypto we have an elliptic_curve::Curve trait which is impl'd on ZSTs representing properties/types for a specific elliptic curve.
I think Curve is supposed to be a trait for an element of an elliptic curve group (and has Group as a supertrait already), and as such might be better named CurveGroup.
I've found the name
Curvea bit confusing as a trait impl'd onProjectivePoints, especially since in @RustCrypto we have anelliptic_curve::Curvetrait which is impl'd on ZSTs representing properties/types for a specific elliptic curve.I think
Curveis supposed to be a trait for an element of an elliptic curve group (and hasGroupas a supertrait already), and as such might be better namedCurveGroup.