User-friendly access to SmallArray# and SmallMutableArray#

The only user-friendly wrappers I can find for SmallArray# and SmallMutableArray# are in Data.Discrimination.Internal.SmallArray in the discrimination package. What are the chances that we could get something like that in the array package, or possibly some other GHC boot package? I can't use discrimination in containers! David

I've been talking to Dan Doel about adding them to `primitive`, possibly w/
backwards compatibility wrappers.
On Wed, Jun 22, 2016 at 1:01 PM, David Feuer
The only user-friendly wrappers I can find for SmallArray# and SmallMutableArray# are in Data.Discrimination.Internal.SmallArray in the discrimination package. What are the chances that we could get something like that in the array package, or possibly some other GHC boot package? I can't use discrimination in containers!
David
_______________________________________________ Libraries mailing list Libraries@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries

That's great, but primitive is not a GHC boot library, and it depends on
transformers, ..., so I'm still stuck copying code into containers (the
copy I made from discrimination falls back to MutableArray#).
On Jun 22, 2016 8:58 PM, "Edward Kmett"
I've been talking to Dan Doel about adding them to `primitive`, possibly w/ backwards compatibility wrappers.
On Wed, Jun 22, 2016 at 1:01 PM, David Feuer
wrote: The only user-friendly wrappers I can find for SmallArray# and SmallMutableArray# are in Data.Discrimination.Internal.SmallArray in the discrimination package. What are the chances that we could get something like that in the array package, or possibly some other GHC boot package? I can't use discrimination in containers!
David
_______________________________________________ Libraries mailing list Libraries@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries

On Wed, Jun 22, 2016 at 1:01 PM, David Feuer
The only user-friendly wrappers I can find for SmallArray# and SmallMutableArray# are in Data.Discrimination.Internal.SmallArray in the discrimination package. What are the chances that we could get something like that in the array package, or possibly some other GHC boot package? I can't use discrimination in containers!
Depending on what you have in mind, I do have some (relatively) user-friendly wrappers in the unreleased new version of bytestring-trie. I mention because I'm planning on moving those wrappers into containers (and making them public so bytestirng-trie can reused them) once I get a chance to add the AMT implementation for IntMap this autumn. -- Live well, ~wren

From a core libraries perspective it'd be good to have these in one place. Right now we have them in primitive.
If we're going to start duplicating *that* much code, it seems it'd be
worth incurring the dependency, which would get David his transformers
dependency in turn.
-Edward
On Sat, Jun 25, 2016 at 9:46 PM, wren romano
On Wed, Jun 22, 2016 at 1:01 PM, David Feuer
wrote: The only user-friendly wrappers I can find for SmallArray# and SmallMutableArray# are in Data.Discrimination.Internal.SmallArray in the discrimination package. What are the chances that we could get something like that in the array package, or possibly some other GHC boot package? I can't use discrimination in containers!
Depending on what you have in mind, I do have some (relatively) user-friendly wrappers in the unreleased new version of bytestring-trie. I mention because I'm planning on moving those wrappers into containers (and making them public so bytestirng-trie can reused them) once I get a chance to add the AMT implementation for IntMap this autumn.
-- Live well, ~wren _______________________________________________ Libraries mailing list Libraries@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries
participants (3)
-
David Feuer
-
Edward Kmett
-
wren romano