[GHC] #14196: Replace ArrayArray# with either UnliftedArray# or Array#
GHC
ghc-devs at haskell.org
Tue Feb 20 19:59:26 UTC 2018
#14196: Replace ArrayArray# with either UnliftedArray# or Array#
-------------------------------------+-------------------------------------
Reporter: andrewthad | Owner: (none)
Type: feature request | Status: new
Priority: normal | Milestone:
Component: Compiler | Version: 8.2.1
Resolution: | Keywords:
| LevityPolymorphism
Operating System: Unknown/Multiple | Architecture:
| Unknown/Multiple
Type of failure: None/Unknown | Test Case:
Blocked By: | Blocking:
Related Tickets: | Differential Rev(s):
Wiki Page: |
-------------------------------------+-------------------------------------
Comment (by andrewthad):
If `UnliftedNewtypes`, described in https://github.com/ghc-proposals/ghc-
proposals/pull/98, is accepted, it will be trivial to reimplement
`ArrayArray#`, and its related functions:
{{{
newtype ArrayArray# = ArrayArray# (UnliftedArray# ByteArray#)
}}}
It's not important to use `ByteArray#` here. You could use any unlifted
type since you're just going to unsafe coerce it when you pull in out or
put it in. I guess these operators would need to go in `GHC.Exts` or
something like that, which would probably still break some people's code
since we all love to import `GHC.Prim` so much, but at least it provides a
good backwards-compatibility option.
I'll wait to see if `UnliftedNewtypes` is accepted. If so, I'll write this
up as a proposal.
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/14196#comment:6>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list