Julia multiple dispatch not matching subtypes
<p>Can someone help me understand why this julia function definition isn't matched by my attempt to use it seen below?</p>

<p>My naive assumption is that the <code>Array{ASCIIString,1}</code> that is being passed into the function should match the function definition of <code>Array{AbstractString,1}</code>, and so on.</p>

<pre><code>julia&gt; function test(a::Array{AbstractString,1}, b::AbstractString, c::Any) end
test (generic function with 1 method)

julia&gt; test([""],"","")
ERROR: MethodError: `test` has no method matching test(::Array{ASCIIString,1}, ::ASCIIString, ::ASCIIString)
Closest candidates are:
  test(::Array{AbstractString,1}, ::AbstractString, ::Any)

julia&gt;
</code></pre>