And so apply is deprecated in 0.4-dev.
Also from a user perspective combined with what I saw from
code_lowered and code_typed, (also at least on 0.4) _apply is still
internally used sometimes to call functions with unknown number of
arguments.
julia> @noinline f(args...) = args
f (generic function with 1 method)
julia> g(args) = f(1, args...)
g (generic function with 1 method)
julia> @code_typed g([1, 2])
1-element Array{Any,1}:
:($(Expr(:lambda, Any[:args],
Any[Any[],Any[Any[:args,Array{Int64,1},0]],Any[],An
y[]], :(begin # none, line 1:
return (top(_apply))(call,f,(top(tuple))(1)::Tuple{Int64},args::Array{Int6
4,1})::Tuple
end::Tuple))))
julia> apply(f, [1, 2])
WARNING: apply(f, x) is deprecated, use `f(x...)` instead
in apply at ./deprecated.jl:93
(1,2)