I guess I found a bug.
If you use the primitive type and want to know either it is null, a boolean or a numeric, you check the words, for example if("false" == primitive.value). The advice just to check the first char is useless to me and I guess so for many C-programmers, because if a 4 Byte numeric is accidentially the ascii-representation of the word "null" or "true" it cannot be handled. Just checking the first char increases the set of numbers, in which errors occure, a lot. If You have any suggestion about this, please let me know.
Example: 0x6e756c6c is both, a valid integer and the "null" chars.
If it is my fault, please let me know which would be a proper solution for this problem.
if i didn't point out what the problem is, let me know and I will enlarge the description.
best regards, christian