Request: withArrayLength

Manuel M T Chakravarty chak at
Mon Mar 22 19:51:54 EST 2004

On Tue, 2004-03-23 at 05:55, Sven Panne wrote:
> Once upon a time, I wrote:
> > Adrian Hey wrote:
> > 
> >> [...] I think..
> >>
> >>  withArrayLength :: Storable a => [a] -> (Ptr a -> Int -> IO b) -> IO b
> >>
> >> would be useful because you often need the length in a foreign function
> > 
> > I would support that, similar situations happened a few times in my
> > OpenGL/GLUT stuff.
> > 
> >> and I guess withArray must pre-calculate the length before allocating
> >> storage in any case [...]
> > 
> > Yep.
> There has been no other response yet, so I'd like to raise this issue again.
> If we decide to add this to the module, it should be documented in the FFI
> addendum as well, BTW. Any opionions?

I think we need to decide how the further development of the FFI will
proceed.  Given that Version 1.0 of the Addendum is frozen, I am not in
favour of changing the Addendum anytime soon and certainly not for small
matters, such as a convenience function.

We might want to accumulate extra useful functions in the implementation
in an *extra* module and once there is enough interesting functionality
in there, we can start talking about Version 1.1 of the Addendum.

Does this sound like a sensible approach?


More information about the FFI mailing list