But the point is that in a huge number of situations you wouldn't need to check it. Checking for it all the time is something like using static methods (in Java) and doing "if instanceof" checks on the arguments all the time. That's the job of polymorphism! So, having a custom null-object for every object type would save the client a very big proportion of null-checks -- read "null errors."
For example, one usually checks that a string is non-null and not empty; sums two Integers, always having to check BOTH for non-null; or, the most notorious of them all, just wants to see if two objects are equal. In all such examples the non-null check vanishes, resulting in code that is at the same time more elegant, more readable and more robust.
To my mind, this is a clear indication that the elections are rigged and that the public has practically no say in them. The effect may be created on at least two levels: by closely monitoring the public through polls and making "surgical propaganda strikes" at just those points where a small change can bring a large impact---and by plain swindling on the election day. The second approach means the public is getting cheated, but the first one is even worse---it shows that the public can be manipulated like a puppet. This is easiest to do with an already apathetic crowd that doesn't care anyway.
So, if both parties use dirty tactics at the same critical places, there is fierce competition between matched opponents---and voila the outcome, a few deciding votes.
Time and again I get frustrated with Wikipedia content when trying to learn about an unfamiliar mathematical term. And it's not just that you have to be a mathematician to understand the article; you have to be familiar with the particular mathematical field as well. In other words, you already have to know what you are reading about:)
For a classical example, see http://en.wikipedia.org/wiki/Tensor and compare this to the approach taken in the famous Dodson and Poston, Tensor Geometry. I was really dedicated to finding out just what the tensors are about and the Wikipedia article only managed to get me even more confused. Its approach is too much "in medias res": for example, it starts off with saying that a tensor is independent of a frame of reference; this is meaningless to a person trying to find what a tensor is, not what it isn't.
OK, I acknowledge that I may have picked one of the toughest concepts to introduce a beginner to, but it is just one example. More or less, whenever I go to Wikipedia looking for an answer to a mathematical question, I am left as clueless as before I started reading.
I think the problem lies in the extremely high demand on a person writing a beginner's introduction. Such a person needs to know the subject inside out and be able to approach it from many different angles. At the same time, the person needs to have a subtle understanding of the point of view of the uninitiated mind -- something very tough for such an expert.
But the point is that in a huge number of situations you wouldn't need to check it. Checking for it all the time is something like using static methods (in Java) and doing "if instanceof" checks on the arguments all the time. That's the job of polymorphism! So, having a custom null-object for every object type would save the client a very big proportion of null-checks -- read "null errors." For example, one usually checks that a string is non-null and not empty; sums two Integers, always having to check BOTH for non-null; or, the most notorious of them all, just wants to see if two objects are equal. In all such examples the non-null check vanishes, resulting in code that is at the same time more elegant, more readable and more robust.
To my mind, this is a clear indication that the elections are rigged and that the public has practically no say in them. The effect may be created on at least two levels: by closely monitoring the public through polls and making "surgical propaganda strikes" at just those points where a small change can bring a large impact---and by plain swindling on the election day. The second approach means the public is getting cheated, but the first one is even worse---it shows that the public can be manipulated like a puppet. This is easiest to do with an already apathetic crowd that doesn't care anyway. So, if both parties use dirty tactics at the same critical places, there is fierce competition between matched opponents---and voila the outcome, a few deciding votes.
Time and again I get frustrated with Wikipedia content when trying to learn about an unfamiliar mathematical term. And it's not just that you have to be a mathematician to understand the article; you have to be familiar with the particular mathematical field as well. In other words, you already have to know what you are reading about :)
For a classical example, see http://en.wikipedia.org/wiki/Tensor and compare this to the approach taken in the famous Dodson and Poston, Tensor Geometry. I was really dedicated to finding out just what the tensors are about and the Wikipedia article only managed to get me even more confused. Its approach is too much "in medias res": for example, it starts off with saying that a tensor is independent of a frame of reference; this is meaningless to a person trying to find what a tensor is, not what it isn't.
OK, I acknowledge that I may have picked one of the toughest concepts to introduce a beginner to, but it is just one example. More or less, whenever I go to Wikipedia looking for an answer to a mathematical question, I am left as clueless as before I started reading.
I think the problem lies in the extremely high demand on a person writing a beginner's introduction. Such a person needs to know the subject inside out and be able to approach it from many different angles. At the same time, the person needs to have a subtle understanding of the point of view of the uninitiated mind -- something very tough for such an expert.