What are the preconditions of newArray#

Simon Marlow marlowsd at gmail.com
Tue Aug 23 22:31:17 CEST 2011

You could make it a precondition of copyArray#, although that's slightly 
less pleasant from a user's perspective.


On 23/08/11 21:04, Johan Tibell wrote:
> It could well be that it's some later primop that's failing due to the
> empty size, like my new copyArray# primop. If that's the case I could
> fix it but I would probably would have to add a branch to the
> copyArray# primop, which I'm reluctant to do.
> On Tue, Aug 23, 2011 at 9:47 PM, Simon Marlow<marlowsd at gmail.com>  wrote:
>> An Array# of size zero is a perfectly reasonable thing.  If it doesn't work,
>> it should (and I vaguely recall making it work at some point in the past,
>> but perhaps I failed to add a test and as a result it has rotted...)
>> Cheers,
>>         Simon
>> On 22/08/11 17:08, Johan Tibell wrote:
>>> I agree (unless it has a performance cost). I had to fix a couple of
>>> bugs in my code associated with generating zero-length arrays.
>>> On Mon, Aug 22, 2011 at 5:54 PM, Edward Kmett<ekmett at gmail.com>    wrote:
>>>> It would still be nice to have a consistent base case.
>>>> On Mon, Aug 22, 2011 at 3:43 AM, Johan Tibell<johan.tibell at gmail.com>
>>>> wrote:
>>>>> On Mon, Aug 22, 2011 at 5:55 AM, Edward Z. Yang<ezyang at mit.edu>    wrote:
>>>>>> stg_newArrayzh in rts/PrimOps.cmm doesn't appear to give any
>>>>>> indication,
>>>>>> so this might be a good patch to add.  But I'm curious: what would
>>>>>> allocating Array#s of size 0 do? Null pointers? That sounds
>>>>>> dangerous...
>>>>> I would imagine that a zero sized array would be a StgArrPtrs header
>>>>> with its size field set to 0. It's not a very useful thing to have, I
>>>>> admit. If someone (Simon?) can confirm that we don't intend to support
>>>>> zero-length array I'll push a patch that adds a comment.
>>>>> Johan
>>>>> _______________________________________________
>>>>> Glasgow-haskell-users mailing list
>>>>> Glasgow-haskell-users at haskell.org
>>>>> http://www.haskell.org/mailman/listinfo/glasgow-haskell-users

More information about the Glasgow-haskell-users mailing list