[Haskell-cafe] Packing Haskell values into a C array

Anthony Cowley acowley at seas.upenn.edu
Sat Apr 26 20:13:54 UTC 2014

> On Apr 26, 2014, at 3:53 PM, Niklas Hambüchen <mail at nh2.me> wrote:
> Using a Storable vector is what I mostly do.
> It goes nicely with rendering arrays of objects using OpenGL
> `BufferObject`s, using `fromVector` from
> http://hackage.haskell.org/package/GLUtil-0.6.4/docs/Graphics-GLUtil-BufferObjects.html#v:fromVector.

I second this recommendation. If you are doing frequent updates on a small subset of these values, I have most of an interface for doing so, but I haven't bundled it into GLUtil yet, so let me know (better: open an issue on github) if the existing interface just doesn't work for you.


>> On 26/04/14 19:24, Michael Baker wrote:
>> I've thought of several things to try including:
>>  * Only allocate an array when the number of circles changes.
>>  * Convert a circles into a C struct and "poke" them directly into an
>> existing array instead of going through the intermediate form of a list.
>>  * Do some manual memory management and index each circle into a
>> preallocated array, only updating the values of the array that
>> correspond to circles which have changed.
> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe

More information about the Haskell-Cafe mailing list