RFC: general sequences
Ross Paterson
ross at soi.city.ac.uk
Tue May 24 06:39:49 EDT 2005
On Tue, May 24, 2005 at 11:23:40AM +0100, Malcolm Wallace wrote:
> Is Sequence intended to be a symmetric structure, or is it intended
> to be left-biased? The constructors seem to go for symmetry, but
> many of the other operations are left-biased. For instance:
>
> index
> adjust
> update
> take
> drop
> splitAt
>
> all count from the left end of the Sequence. Wouldn't it be useful
> to have the equivalent right-biased operations too?
>
> indexL indexR
> adjustL adjustR
> updateL updateR
> takeL takeR
> dropL dropR
> splitAtL splitAtR
Fair point. They wouldn't cost much, and the structure should be
symmetrical.
> Also, there was debate at the time of the Haskell'98 committee about
> whether the list operations with an Int argument would be better
> taking an Integer. I believe the consensus was positive towards
> unbounded Integer, but it was important for the standard to be
> backwards compatible, so Int remained. However, with a new library,
> you have the opportunity to get it right from the start.
Perhaps Integral, like List.generic*, would be a good idea.
The structure uses Ints internally, though.
More information about the Libraries
mailing list