[erlang-questions] What atom name to represent a null value

Bob Ippolito <>
Fri Feb 26 07:35:32 CET 2010


none is used in proplists:lookup/2
error is used in other similar scenarios, like dict:find/2

On Thu, Feb 25, 2010 at 4:53 PM, Jayson Vantuyl <> wrote:
> I don't believe that it's defined explicitly, but it's the standard API of many functions.  For example:
>
> * when accessing the process dictionary, if the key doesn't exist, the value is undefined; try: get(foo), or erase(foo)
> * when accessing a proplist for a key that doesn't exist, the value is undefined; try: proplists:get_value(foo,[])
> * when looking for a registered name that isn't registered, the value is undefined: try: whereis(foo)
> * erlang:decode_packet/3 returns undefined when the length of a packet is unknown
> * erlang:delete_module/1 returns undefined when you delete a module that isn't loaded
> * erlang:port_info/2 returns undefined on a nonexistent port
> * erlang:process_info/1 returns undefined on a nonexistent process
> * erlang:system_monitor/1 takes undefined as an argument, meaning to set null monitoring settings
> * file:pid2name/1 gives undefined if a pid isn't associated with a filename
>
> It's all over the libraries.  Conversely, I can't find none, null, or nil anywhere.  Of course, I didn't look too hard.
>
> Given the overwhelming use of undefined in Erlang itself, I think it's safe to use in your code to represent a null value.
>
> On Feb 25, 2010, at 4:33 PM, caio ariede wrote:
>
>> Right.
>>
>> It is defined in somewhere? Some documentation?
>>
>> Or just in common sense?
>>
>> Thanks
>>
>> Caio Ariede
>> http://caioariede.com/
>>
>>
>> On Thu, Feb 25, 2010 at 9:29 PM, Jayson Vantuyl <> wrote:
>>
>>> undefined is the standard one.  Although I've used none, null, and nil
>>> before (in different situations).
>>>
>>> On Feb 25, 2010, at 4:20 PM, caio ariede wrote:
>>>
>>>> I already saw some people using "undef", but I want to know what name is
>>>> commonly used (if there is).
>>>>
>>>> Caio Ariede
>>>> http://caioariede.com/
>>>>
>>>>
>>>> On Thu, Feb 25, 2010 at 9:14 PM, David Lloyd <>
>>> wrote:
>>>>
>>>>>
>>>>> Why couldn't you use "null"?
>>>>>
>>>>> DSL
>>>>>
>>>>> -----Original Message-----
>>>>> *From*: caio ariede <<
>>> caio%20ariede%20%<caio%2520ariede%2520%>
>>> %3e>
>>>>>>
>>>>> *To*: erlang-questions <<
>>> erlang-questions%20%<erlang-questions%2520%>
>>> %3e>
>>>>>>
>>>>> *Subject*: [erlang-questions] What atom name to represent a null value
>>>>> *Date*: Thu, 25 Feb 2010 21:13:34 -0300
>>>>>
>>>>> In common sense, what atom name can I use to better represent null
>>> values?
>>>>>
>>>>> Thanks.
>>>>>
>>>>> Caio Ariedehttp://caioariede.com/
>>>>>
>>>>>
>>>>>
>>>
>>> --
>>> Jayson Vantuyl
>>> 
>>>
>>>
>>> ________________________________________________________________
>>> erlang-questions (at) erlang.org mailing list.
>>> See http://www.erlang.org/faq.html
>>> To unsubscribe; mailto:
>>>
>>>
>
> --
> Jayson Vantuyl
> 
>
>
> ________________________________________________________________
> erlang-questions (at) erlang.org mailing list.
> See http://www.erlang.org/faq.html
> To unsubscribe; mailto:
>
>


More information about the erlang-questions mailing list