Indeed *julia> **getindex(Any, (1,2,3))*
*1-element Array{Any,1}:* * (1,2,3)* Basically, any code with X[y...] gets lowered to getindex, and then the corresponding method takes over to do the right thing. Makes the lowering relatively simple, i imagine. On Wednesday, 17 June 2015 13:54:11 UTC+1, Mauro wrote: > > I think it just uses getindex (a bit of a hack...): > > julia> @which Int[3] > getindex(T::Union(DataType,UnionType,TypeConstructor),vals...) at > array.jl:119 > > > On Wed, 2015-06-17 at 14:50, andrew cooke <and...@acooke.org <javascript:>> > wrote: > > Oh, I think the call() thing is just me being confused. That's *only* a > > mechanism to allow non-functions to look like functions? I guess my > > misunderstanding is more about how apply is defined (it mentions call), > > which really isn't important to me right now, so feel free to ignore > that > > part of my question. Sorry. > > > > > > On Wednesday, 17 June 2015 09:45:46 UTC-3, andrew cooke wrote: > >> > >> > >> If I want to pass the function that constructs an array of Any, given > some > >> values, to another function, what do I use? > >> > >> Here's an example that might make things clearer: > >> > >> julia> f(x...) = Any[x...] > >> f (generic function with 1 method) > >> > >> julia> apply(f, 1,2,3) > >> 3-element Array{Any,1}: > >> 1 > >> 2 > >> 3 > >> > >> julia> apply(Any[], 1,2,3) > >> ERROR: MethodError: `call` has no method matching call(::Array{Any,1}, > :: > >> Int64, ::Int64, ::Int64) > >> Closest candidates are: > >> BoundsError(::Any...) > >> TypeVar(::Any...) > >> TypeConstructor(::Any...) > >> ... > >> in apply at deprecated.jl:116 > >> > >> where I am looking for what the built-in equivalent of f() is. > >> > >> I may be even more confused, because I also don't understand why this > >> fails: > >> > >> julia> call(f, 1, 2) > >> ERROR: MethodError: `call` has no method matching call(::Function, > ::Int64 > >> , ::Int64) > >> Closest candidates are: > >> BoundsError(::Any...) > >> TypeVar(::Any...) > >> TypeConstructor(::Any...) > >> ... > >> > >> So any guidance appreciated. > >> > >> Thanks, > >> Andrew > >> > >