      scalar :: ScalarType s -> s -> LLVM.Constant
      scalar (SingleScalarType s) = single s
      scalar (VectorScalarType s) = vector s

      single :: SingleType s -> s -> LLVM.Constant
      single (NumSingleType s) = num s

      vector :: VectorType s -> s -> LLVM.Constant
      vector (VectorType _ s) (Vec ba#)
        = LLVM.Vector