Ответ 1
Используя пример Nanashi, ключ - это ошибка, когда вы вызываете f(g())
julia> g() = (1, 2, 3)
g (generic function with 1 method)
julia> f(a, b, c) = +(a, b, c)
f (generic function with 1 method)
julia> g()
(1,2,3)
julia> f(g())
ERROR: no method f((Int64,Int64,Int64))
Это означает, что это дает кортеж (1, 2, 3)
в качестве входа в f
без его распаковки. Чтобы распаковать его, используйте многоточие.
julia> f(g()...)
6
Соответствующий раздел в руководстве Julia находится здесь: http://julia.readthedocs.org/en/latest/manual/functions/#varargs-functions