[widgets] Null in P&C

Hi,
I had a discussion with an implementer who was a bit confused about the 
concept of "null" in the specification. The problem is that I kinda 
wrote the spec as if it was to be implemented in Java or JavaScript. 
This has resulted in confusion wrt how "null" is to be interpreted in 
languages that don't have that concept/data type.

So, in an effort to clarify that, I've added the following to Processing 
Rules section of P&C:

[[
In the following algorithms, the concept of null is used as a special 
symbol to indicate that a variable has no data associated with it. For 
example, "let x be null" or "if y is empty, then return null".

Note: Although ECMAScript and Java support null as a native value type, 
there are some programming languages that have no notion of null or 
where null is problematic (e.g. C++). For those languages, it is OK for 
an implementation to substitute the null for some other value or symbol 
(or for nothing at all). For example, it is ok to have the value 0 
represent null for the height of a widget as the height of a widget is 
defined as a non-negative integer greater than 0. In such a case, 0 
would behave as if it is null.
]]

I don't have much experience programming in anything but Java and 
ECMAScript (why would anyone program in something else?!;)), so please 
let me know if it makes sense or if it could be better defined.

Received on Tuesday, 2 February 2010 12:30:15 UTC