Skip to content

MVector data instances are exposed from Unboxed and Unboxed.Mutable #492

Description

@meooow25

module Data.Vector.Unboxed (
-- * Unboxed vectors
Vector(V_UnboxAs, V_UnboxViaPrim), MVector(..), Unbox,

module Data.Vector.Unboxed.Mutable (
-- * Mutable vectors of primitive types
MVector(..), IOVector, STVector, Unbox,

I was confused as to why Vector data instances are not exposed but MVector instances are.

Then I found #49 (comment) which explains why exposing them is unsafe, which is fair. But then there is no reason to expose the MVector instances. This wasn't answered in #49.

I would expect this to consistent between Vector and MVector. Or perhaps this issue is known but the MVector instances are not hidden to avoid breakage?

Activity

  1. Shimuuar commented on May 3, 2024

    @Shimuuar
    Contributor

    Yes mutable vector were exposed early in the development for some reason. And yes hiding them is a breaking change

  2. meooow25 commented on May 3, 2024

    @meooow25
    Author

    Thanks, that answers the question! Please close this if there is nothing to be done about it.

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions