You may be misusing nothing.  It is unusual that a function would return 
nothing some of the time and something other times.
Take a look at 
http://docs.julialang.org/en/latest/manual/faq/#nothingness-and-missing-values
If you have additional questions about this, please give an example of what 
get_a(...) is getting and why it would be nothing some of the time.

On Tuesday, March 15, 2016 at 12:21:35 PM UTC-4, FANG Colin wrote:
>
> Hi All
>
>
> I found my self writing code like this a lot:
>
> x = get_a(...)
>
> if x != nothing
>     y::A = x
>     do_sth(y, ...)
> end
>
> In the above, I have to check for nothing first, and if it is not nothing, 
> then I do a type assert to make sure the type is what I expected.
>
> Is there any function or macro in Julia that can help this?
>
> I know in F#, I have option.bind, so option.bind f x is equivalent to a 
> pattern match:  if x is None - > None; if x is something -> f(something)
>
> Also in C#, I have "customers?[0]?.Orders?.Count();"  (as long as there 
> is null before ?, it returns null immediately)
>
> Does Julia have something similar?
>
>

Reply via email to