I am playing around with Repa, and the code below can compile and run.
import qualified Data.Array.Repa as R
--t:: R.Array R.U (R.Z R.:. Int) Float
--t = R.fromListUnboxed (R.Z R.:. (10::Int)) ([1.0..10]::[Float])
main = do
let x = R.fromListUnboxed (R.Z R.:. (10::Int)) ([1.0..10]::[Float])
print x
I believe (from check in ghci) that x has the type signature that I have declared t to have, but I get this error if I uncomment everything associated with t:
Illegal operator ‘R.:.’ in type ‘R.Z R.:. Int’
Use TypeOperators to allow operators in types
what is the correct way to resolve the use of an type operator/constructor in type declarations? (I will google some more, but would like to ask anyway too learn more)