Implement `calloc{,Bytes,Array,Array0}` allocators

Luite Stegeman stegeman at gmail.com
Sun Nov 30 17:24:48 UTC 2014


+1 here too

additionally for GHCJS this is a no-brainer since ArrayBuffers (used for
data storage when Addr# / Ptr is involved) are initialized to 0 on
allocation, making calloc no more expensive than malloc.


On Sat, Nov 29, 2014 at 5:05 PM, Oleksandr Petrov <
oleksandr.petrov at gmail.com> wrote:

> Hi everyone,
>
> There is a proposal [1] (with implemented revision) to implement zero-initialising
> versions
> of malloc{,Bytes,Array,Array0}
>
>    - Add calloc and callocBytes to Foreign.Marshal.Alloc.
>    - Add callocArray and callocArray0 to Foreign.Marshal.Array.
>
> The benefit is that you can allocate required amount of memory and be
> certain that it will be cleared
> (set with zeroes) before you use it. Original discussion took a place in
> `fillBytes` [1] and was
> publicised on that mailing list [2].
>
> Please share your thoughts.
>
> Thank you.
>
> [1] https://phabricator.haskell.org/D527
> [2] https://phabricator.haskell.org/D461#11541
> [3] https://www.haskell.org/pipermail/libraries/2014-November/024251.html
>
>
>
>
> --
> alex p
>
> _______________________________________________
> Libraries mailing list
> Libraries at haskell.org
> http://www.haskell.org/mailman/listinfo/libraries
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/libraries/attachments/20141130/7cd4deeb/attachment.html>


More information about the Libraries mailing list