RFC: general sequences

Malcolm Wallace Malcolm.Wallace at cs.york.ac.uk
Tue May 24 06:23:40 EDT 2005


Ross Paterson <ross at soi.city.ac.uk> writes:

> A general implementation of sequences (based on work with Ralf Hinze)
> 
> 	http://www.soi.city.ac.uk/~ross/software/html/Data.Sequence.html

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

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.

Regards,
    Malcolm


More information about the Libraries mailing list