Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

None value in Julia

Tags:

julia

What is the Julia equivalent of the None value in Python? (As shown here in built-in constants.)

like image 550
haxtar Avatar asked Jun 10 '16 15:06

haxtar


People also ask

Is none in Julia?

The Julia equivalent of None is the constant nothing : a value that is returned by expressions and functions which don't have anything interesting to return. In both languages, this value is not printed at an interactive prompt when an expression evaluates to it, but is otherwise just a normal value.

Is null in Julia?

There is no predefined value called null in Julia, so it is not clear what you want here. Rather than using ' ' for missing values, missing or nothing (depending on the semantics you need) would allow you to interface with more functionality in the ecosystem.


1 Answers

The Julia equivalent of None is the constant nothing: a value that is returned by expressions and functions which don't have anything interesting to return. In both languages, this value is not printed at an interactive prompt when an expression evaluates to it, but is otherwise just a normal value. There's nothing magical about it other than the printing behavior and the fact that people agree by convention that it is the value one returns when there is nothing interesting to return. The type of nothing is called Nothing (and has Cvoid as an alias for use with C functions).

Julia's type system can also express the concept that an expression cannot produce any value – e.g. if it throws an error or is part of a basic block that cannot execute (dead code). The type of an expression that can never produce a value is the empty union type, Union{}: a union of zero types, of which no values are instances. This is distinct from the type of nothing – since nothing is a normal (but uninteresting) value, so it cannot be an instance of Union{}.

See Also:

  • https://docs.julialang.org/en/v1/manual/faq/#faq-nothing-1
like image 176
StefanKarpinski Avatar answered Oct 20 '22 09:10

StefanKarpinski