Skip to content

Unexpected omissions from submodule exports (e.g., RIO.Vector.iforM_) #250

@genovese

Description

@genovese

I have recently started using RIO and am liking it a lot so far. I have been surprised several times at omitted exports from RIO submodules that do not appear to be unsafe, unchecked, or partial. For example, iforM and iforM_ are not exported from RIO.Vector et al. even though they are exported from Data.Vector* and imapM, imapM_, forM, and forM_ are all exported from RIO. Similarly, unzip and unzipWith are not exported from RIO.Seq (though available as munzip and unzipWith' methods on internal instances) even though they are from Data.Sequence.

Are these inadvertent omissions or is there a guiding rationale behind them? If the latter, it would be helpful if the reasons were clarified in the documentation. Using RIO.* as a nice and coherent alternative to Data.* is handy, but less so if one has to check and special case imports of functions that fit the RIO conditions but are missing.

Thanks

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