@@ -26,7 +26,6 @@ module Math.NumberTheory.Primes.Sieve.Eratosthenes
2626
2727import Control.Monad (when )
2828import Control.Monad.ST
29- import Data.Array.Base
3029import Data.Bit
3130import Data.Bits
3231import Data.Coerce
@@ -374,17 +373,17 @@ psieveFrom n = makeSieves plim sqlim bitOff valOff cache
374373
375374{-# INLINE delta #-}
376375delta :: Int -> Int
377- delta = unsafeAt deltas
376+ delta = U. unsafeIndex deltas
378377
379- deltas :: UArray Int Int
380- deltas = listArray ( 0 , 7 ) [4 ,2 ,4 ,2 ,4 ,6 ,2 ,6 ]
378+ deltas :: U. Vector Int
379+ deltas = U. fromList [4 ,2 ,4 ,2 ,4 ,6 ,2 ,6 ]
381380
382381{-# INLINE tau #-}
383382tau :: Int -> Int
384- tau = unsafeAt taus
383+ tau = U. unsafeIndex taus
385384
386- taus :: UArray Int Int
387- taus = listArray ( 0 , 63 )
385+ taus :: U. Vector Int
386+ taus = U. fromList
388387 [ 7 , 4 , 7 , 4 , 7 , 12 , 3 , 12
389388 , 12 , 6 , 11 , 6 , 12 , 18 , 5 , 18
390389 , 14 , 7 , 13 , 7 , 14 , 21 , 7 , 21
@@ -397,28 +396,28 @@ taus = listArray (0,63)
397396
398397{-# INLINE byte #-}
399398byte :: Int -> Int
400- byte = unsafeAt startByte
399+ byte = U. unsafeIndex startByte
401400
402- startByte :: UArray Int Int
403- startByte = listArray ( 0 , 7 ) [1 ,3 ,5 ,9 ,11 ,17 ,27 ,31 ]
401+ startByte :: U. Vector Int
402+ startByte = U. fromList [1 ,3 ,5 ,9 ,11 ,17 ,27 ,31 ]
404403
405404{-# INLINE idx #-}
406405idx :: Int -> Int
407- idx = unsafeAt startIdx
406+ idx = U. unsafeIndex startIdx
408407
409- startIdx :: UArray Int Int
410- startIdx = listArray ( 0 , 7 ) [4 ,7 ,4 ,4 ,7 ,4 ,7 ,7 ]
408+ startIdx :: U. Vector Int
409+ startIdx = U. fromList [4 ,7 ,4 ,4 ,7 ,4 ,7 ,7 ]
411410
412411{-# INLINE mu #-}
413412mu :: Int -> Int
414- mu = unsafeAt mArr
413+ mu = U. unsafeIndex mArr
415414
416415{-# INLINE nu #-}
417416nu :: Int -> Int
418- nu = unsafeAt nArr
417+ nu = U. unsafeIndex nArr
419418
420- mArr :: UArray Int Int
421- mArr = listArray ( 0 , 63 )
419+ mArr :: U. Vector Int
420+ mArr = U. fromList
422421 [ 1 , 2 , 2 , 3 , 4 , 5 , 6 , 7
423422 , 2 , 3 , 4 , 6 , 6 , 8 , 10 , 11
424423 , 2 , 4 , 5 , 7 , 8 , 9 , 12 , 13
@@ -429,8 +428,8 @@ mArr = listArray (0,63)
429428 , 7 , 11 , 13 , 17 , 19 , 23 , 29 , 31
430429 ]
431430
432- nArr :: UArray Int Int
433- nArr = listArray ( 0 , 63 )
431+ nArr :: U. Vector Int
432+ nArr = U. fromList
434433 [ 4 , 3 , 7 , 6 , 2 , 1 , 5 , 0
435434 , 3 , 7 , 5 , 0 , 6 , 2 , 4 , 1
436435 , 7 , 5 , 4 , 1 , 0 , 6 , 3 , 2
0 commit comments