Skip to content
Snippets Groups Projects
This project is mirrored from ssh://github.com/haskell/array.git. Pull mirroring updated .
  1. Nov 26, 2024
  2. Nov 15, 2024
  3. Oct 17, 2024
  4. Sep 08, 2024
  5. Aug 25, 2024
  6. Aug 24, 2024
    • Lei Zhu's avatar
      9399614c
    • Lei Zhu's avatar
      Building ci · 300e346a
      Lei Zhu authored
      300e346a
    • meooow's avatar
      Add fold functions for arrays · 9dd4cc32
      meooow authored and Lei Zhu's avatar Lei Zhu committed
      At the moment it is quite difficult to perform some folds on some
      arrays.
      
      * In general, arrays can be folded over by folding over the range of
        indices and then indexing into the array. This is a little cumbersome,
        and also inefficient when folding right-to-left because Ix does not
        offer reversed range generation.
      * Alternately, Array has a Foldable instance which works great, but
        UArray cannot be Foldable. Folds on UArray can instead be done via
        elems. Due to list fusion, this works out well for some folds (foldr,
        foldl'), but not others (foldr').
      * For mutable arrays, there are no alternate ways to fold.
      
      This commit adds some commonly used folds for arrays and mutable arrays
      to improve this situation.
      9dd4cc32
    • Lei Zhu's avatar
      Add since annotation for genArray · 47143aad
      Lei Zhu authored
      47143aad
  7. Jul 25, 2024
  8. May 17, 2024
  9. Mar 08, 2024
  10. Feb 29, 2024
  11. Feb 28, 2024
  12. Jan 26, 2024
  13. Nov 08, 2023
  14. Sep 27, 2023
  15. Sep 08, 2023
  16. Jul 09, 2023
  17. Jul 02, 2023
  18. Jun 18, 2023
  19. Jun 15, 2023
  20. May 04, 2023
  21. Apr 25, 2023
  22. Feb 13, 2023
  23. Dec 08, 2022
  24. Jul 11, 2022
  25. Apr 29, 2022
  26. Feb 21, 2021
    • John Ericson's avatar
      Revert "[Cmm Sized] Adjust" · 3e4334a6
      John Ericson authored
      In old GHC:
      
          I8# :: Int# -> Int8
          indexInt8OffAddr# :: Addr# -> Int# -> Int#
          ...
      
      In upcoming GHC 9.2:
      
          I8# :: Int8# -> Int8
          indexInt8OffAddr# :: Addr# -> Int# -> Int8#
          ...
      
      Both of those work with the last array release, where the only
      requirement is merely that the constructor and primops agree, i.e.:
      
          exists alpha.
          I8# :: alpha -> Int8
          indexInt8OffAddr# :: Addr# -> Int# -> alpha
      
      In current GHC HEAD, we had
      
          I8# :: Int8# -> Int8
          indexInt8OffAddr# :: Addr# -> Int# -> Int#
      
      and it was only because `Int8# /= Int#` that we needed the commit being
      reverted. we are about to fix the primops to match the constructors in
      accordance with the final 9.2 design, and so we don't need that commit
      anymore.
      
      This reverts commit c7a696e3.
      3e4334a6
Loading