evalUArrayExpr (Scale y (Vector x)) = Vector z where
  z = listArray (1,n) [(x ! i) * y | i<-[1..n]] where
    n = snd $ bounds x
evalUArrayExpr (Scale y (Vector x)) = Vector z where
  z = listArray (1,n) [(x ! i) * y | i<-[1..n]] where
    n = snd $ bounds x
evalUArrayExpr (Scale y (Vector x)) = Vector z where
  z = listArray (1,n) [(x ! i) * y | i<-[1..n]] where
    n = snd $ bounds x