Suppose I am defining a function that operates on any two real numbers. 
Which of the following ways of specifying types is preferred (in terms of 
idomatic Julia and performance considerations) and why?

```julia

function foo1(x::Real, y::Real) = ...

function foo2{ T<: Real}(x::T, y::T) = ...

function foo3{T <: Real, S <: Real}(x::T, y::S) = ...
```

Reply via email to