static-tensor-0.1.0.0: tests/CoreDump/Tensor/GenerateSing.hs
{-# LANGUAGE TypeApplications #-}
{-# LANGUAGE TypeInType #-}
module CoreDump.Tensor.GenerateSing where
import Data.Kind
import Data.Singletons
import Data.Tensor.Static
import GHC.TypeLits
import TensorInstances ()
-- FIXME: Generates terrible Core possibly because of https://ghc.haskell.org/trac/ghc/ticket/14170
generateSing_ :: Tensor '[2, 3, 4] Float
generateSing_ =
generate @'[2, 3, 4] @Float @([Nat] -> Constraint) @SingI $ \p ->
case fromSing $ singByProxy p of
[i, j, k] -> fromIntegral $ i * 12 + j * 4 + k
_ -> undefined