There's an open issue to fix this, which we should definitely implement. I
believe that Jeff had done it and just not merged but maybe I'm not
remembering that correctly.

On Wed, Oct 29, 2014 at 1:51 PM, John Myles White <johnmyleswh...@gmail.com>
wrote:

> I'm pretty sure this sort of thing always works since type declarations on
> variables behave like convert calls:
>
> julia> function foo()
>        a::Int64 = 0x01
>        return a
>        end
> foo (generic function with 1 method)
>
> julia> foo()
> 1
>
>  -- John
>
> On Oct 29, 2014, at 10:50 AM, Zenna Tavares <zennatava...@gmail.com>
> wrote:
>
> > Also, the following runs but still returns a Vector{Any}.  How is this
> possible?
> >
> > function makestring(fun)
> >   A::Array{ASCIIString} = [fun(i) for i = 1:3]
> > end
> >
> >
> > On Wednesday, October 29, 2014 1:45:51 PM UTC-4, Zenna Tavares wrote:
> > As shown in the following example, I am getting differently typed arrays
> depending on where I use the list comprehension.
> >
> > f(i) = "$i"
> > A = [f(i) for i = 1:3]
> > function makestring(fun)
> >   A = [fun(i) for i = 1:3]
> > end
> > B = makestring(f)
> >
> > In this example A has type Vector{ASCIIString} while B has type
> Vector{Any}.  What gives? And is there a workaround such that we get a more
> specific type?
> >
> > I understand there are some open issues related to this, but I am not
> sure if this case comes under what's already been discussed.
> >
> >
>
>

Reply via email to