Skip to content
  • Marcin 'Qrczak' Kowalczyk's avatar
    [project @ 2001-03-25 09:57:24 by qrczak] · 9bff24a3
    Marcin 'Qrczak' Kowalczyk authored
    Promote (//) from a function to IArray method with an inefficient
    default definition. This completely compatible change allows efficient
    implementations of (//) for particular types.
    
    Explicitly define efficient (//) for Array and UArray.
    
    Use unsafeFreeze* instead of freeze* in (//), accum and accumArray
    for Array and IArray.
    
    Remove showList in instance Show Array (the default definition does
    the job).
    
    Add Eq, Ord and Show instances for UArray. (Would be simpler if types
    in instance contexts were not required to be type variables. I didn't
    use -fallow-undecidable-instances but defined instances for individual
    element types separately.)
    
    Add unsafe{Freeze,Thaw}/{STArray,IOArray,IOUArray} rules.
    
    Fix thaw/IOUArray rule (nobody uses IOUArrays in the ST monad!).
    9bff24a3