What do you assume when you see fromListN in a library?

John Ky newhoggy at gmail.com
Fri Feb 28 05:58:09 UTC 2020


I expect it to pre-allocate space for N elements and populate the vector
until there are no more elements or the vector is full and return a vector
that has a size the minimum of the length of the input list and N.

To me size hint is definitely not what I want because it hides
performance/allocation bugs.

If it is possible to modify the function type then I would have it return a
tuple of a vector with maximum size N as well as the remainder of the list.

On Fri, 28 Feb 2020, 2:41 pm Zemyla, <zemyla at gmail.com> wrote:

> I'm kind of the opposite. I think the number given to fromListN should be
> a "size hint", not a redundant coding of the size of the list given.
>
> On Thu, Feb 27, 2020, 21:31 chessai . <chessai1996 at gmail.com> wrote:
>
>> I expect a list with precisely length N, and reject anything else. IIRC
>> both primitive and vector do this
>>
>> On Thu, Feb 27, 2020, 6:54 PM Carter Schonwald <
>> carter.schonwald at gmail.com> wrote:
>>
>>> Hey everyone:
>>> When you see fromListN as a function in a library, do you assume /
>>> presume it’s expecting an exactly N element list ? Or do you
>>> expect/tolerate other behavior ?
>>>
>>> Should it reject shorter lists?
>>>
>>> Should it truncate or reject longer lists?
>>>
>>> A corner case of this came up in some bug discussion I was having
>>> regarding vector,  and I shall claim and or presume that most folks assume
>>> exact size with prompt rejection of too long or too short.
>>>
>>> Thoughts please ?
>>>
>>> -Carter
>>> _______________________________________________
>>> Libraries mailing list
>>> Libraries at haskell.org
>>> http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries
>>>
>> _______________________________________________
>> Libraries mailing list
>> Libraries at haskell.org
>> http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries
>>
> _______________________________________________
> Libraries mailing list
> Libraries at haskell.org
> http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/libraries/attachments/20200228/9c9dc4f9/attachment.html>


More information about the Libraries mailing list