Skip to content

Instantly share code, notes, and snippets.

@evrim
evrim / gist:4076142
Created November 15, 2012 01:49
parallel & tail recursive vectorSpace
vectorSpace_F2'' 0 acc = acc
vectorSpace_F2'' n acc = vectorSpace_F2'' (n-1) $ concatMap f acc
where f x = a `par` [a,(Bir:x)]
where a = (Sifir:x)
vvectorSpace_F2 n = vectorSpace_F2'' n [[Sifir],[Bir]]
main = do
print $ length $ vvectorSpace_F2 $ 2^5
@evrim
evrim / vectorSpace1
Created November 14, 2012 14:58
applicative linear algebra
vectorSpace ∷ (Enum a1, Eq a, Num a1, Num a, Ord a1) ⇒ a1 → a → [[a1]]
vectorSpace q 0 = [[]]
vectorSpace q n | q > 0 = (:) <$> [0..q-1] <*> (vectorSpace q $ n - 1)
vectorSpace _ _ = error "vectorSpace"
*Main Numeric.LinearAlgebra> length $ vectorSpace 2 (2^3)
256
*Main Numeric.LinearAlgebra> length $ vectorSpace 2 (2^4)
65536
We couldn’t find that file to show.
We couldn’t find that file to show.
We couldn’t find that file to show.