Thanks for the response. I completely get your point. But the question is there any work arounds to get it working. Even `myNum<a.Type>(x:10)`

doesn't work for the same reason.

Here is the actual problem I'm trying to solve.

I want to get some generic piece of code tested for many permutations of value And here is the piece of code which is currently doing the job.

```
func testMaxRowColumnLimitMatrix() {
Matrix<Int>(Int.max, Int.max)
Matrix<UInt>(Int.max, Int.max)
Matrix<Double>(Int.max, Int.max)
Matrix<Float>(Int.max, Int.max)
Matrix<Int>(Int.max, Int.min)
Matrix<UInt>(Int.min, Int.max)
Matrix<Double>(Int.min, Int.max)
Matrix<Float>(Int.max, Int.min)
... etc etc
}
```

As you can see it is lot of code with repeated items All I wanted was a permutations of of Int.Max and Int.min values to be tested on the different `Numeric`

type of data.

To avoid such a duplicate of code I am trying to write a code which goes as follows.

```
func testMinMaxValuesLimitMatrix() {
let maxMin = [Int.max, Int.min]
let type: [Any] = [Int(1), Float(1.0), UInt(1), Double(1.0)]
for t in type {
for (i,m) in maxMin.enumerated() {
Matrix<(type(of: t))>(maxMin[i], m)
}
}
}
```

I want to avoid repeating the same code.Is there any better alternative to solve such problems.