|
I wasn't sure how Obj-C handled null - but on checking it looks like you have the potential for both null pointer exceptions (when a null pointer is used in C code) and nil reference issues (when a message is sent to a nil object). The latter can at least be handled (I'm not sure how useful the "silently ignore messages sent to nil" option is).
Effectively though, the situation remains that the programmer must remember to check for null/nil everywhere and handle appropriately - which evidently does not happen as often as it should (always).
In Smalltalk, each object can implement a doesNotUnderstand: message, but there is still a nil object (effectively a null) that doesNotUnderstand: any messages. The doesNotUnderstand: message can be replaced on Object itself, which will catch all such messages (unless overridden in a subclass). All of these options seem non-optimal, and really just mask the underlying problem.
At least C++ has reference types that cannot be initialised to null (well they can, but only by such stupidity as:
int& i = *((int*)nullptr);
So its progress, but not much.
If an error object is used, it can be written to respond to all messages by returning self (this) - consequently such errors cannot be masked. Once an error occurs in an expression, the result of the expression is guaranteed to remain an error object. This is some improvement - a bit more like NULL in databases. (Although many databases also fail to implement NULL properly, for example allowing it to be treated as an empty string when used in string concatenation).
Here's looking forward to a day when lessons that should have been learned 30 years ago are finally learned.
On a similar note on lack of progress in systems, here's a polemic from Rob Pike on Systems Software Research[^] (itself written in 2000, showing just how glacial progress is).
"If you don't fail at least 90 percent of the time, you're not aiming high enough."
Alan Kay.
|
|
|
|
|
That really isn't news.
Tony Hoare (the inventor of the null reference) wrote in 2009: I call it my billion-dollar mistake. It was the invention of the null reference in 1965. At that time, I was designing the first comprehensive type system for references in an object oriented language (ALGOL W). My goal was to ensure that all use of references should be absolutely safe, with checking performed automatically by the compiler. But I couldn't resist the temptation to put in a null reference, simply because it was so easy to implement. This has led to innumerable errors, vulnerabilities, and system crashes, which have probably caused a billion dollars of pain and damage in the last forty years.
"If you don't fail at least 90 percent of the time, you're not aiming high enough."
Alan Kay.
|
|
|
|
|
Ironically, when editing the comment above, the wisdom of the words above was illustrated:
Something bad happened
We're not sure what, but we have a few guesses.
Problem: Value cannot be null. Parameter name: source
Ticket: 6532097
Server: Web01
"If you don't fail at least 90 percent of the time, you're not aiming high enough."
Alan Kay.
|
|
|
|
|
lol.
Getting information off the Internet is like taking a drink from a fire hydrant.
- Mitchell Kapor
|
|
|
|
|
Trends come and go in the technology industry but some things, such as IT system failures, bloom eternal. Go on, try to guess #1
|
|
|
|
|
ObamaCare Website, by far the worst IT project of this millenia, let alone 2013.
Now, the above is my opinion and not that of any other person/entity.
And, you betcher arse NIO HALL I'm damned proud of that, too.
|
|
|
|
|
the one without sin shall throw the first stone...
Haven't you been a part of the run away train wreck? With soo much ambition, and soo many people involved it would be a surprise if it would turn otherwise.
|
|
|
|
|
gstolarov wrote: With soo much ambition, and soo many people involved it would be a surprise if it would turn otherwise. No, it ain't.
Amazon handles a huge amount of requests, especially in this month. Their user-base is a bit larger for the moment. We know it can be done, because it has been done.
Any excuse is merely that; a lame excuse.
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
I voted to void the 232 years-long tradition of your ability to filibuster.
That, and I've been a CP Member 5,616,000 seconds longer than you.
Hence, I win.
WOW!, These ObamaTactics really work! Too scary!!
|
|
|
|
|
The mysterious dark matter that makes up most of the matter in the universe may already have been detected with superconducting circuits, researchers say. It was in the couch cushions the whole time
|
|
|
|
|
Ars Technica[^] covered it better a few days ago.
Did you ever see history portrayed as an old man with a wise brow and pulseless heart, waging all things in the balance of reason?
Is not rather the genius of history like an eternal, imploring maiden, full of fire, with a burning heart and flaming soul, humanly warm and humanly beautiful?
--Zachris Topelius
Training a telescope on one’s own belly button will only reveal lint. You like that? You go right on staring at it. I prefer looking at galaxies.
-- Sarah Hoyt
|
|
|
|
|
Must. Resist. Inappropriate. Snarky. Comment...
If your actions inspire others to dream more, learn more, do more and become more, you are a leader.-John Q. Adams You must accept one of two basic premises: Either we are alone in the universe, or we are not alone in the universe. And either way, the implications are staggering.-Wernher von Braun Only two things are infinite, the universe and human stupidity, and I'm not sure about the former.-Albert Einstein
|
|
|
|
|
|
Think you've heard it all? On Fox Business yesterday, an analyst predicted that Apple and Microsoft will be forced to merge in the next five to ten years. Is he right or living in a fantasy world? The fanboi explosion will be heard for miles
|
|
|
|
|
"It is a vessel of fertilizer, and none may abide its strength."
Did you ever see history portrayed as an old man with a wise brow and pulseless heart, waging all things in the balance of reason?
Is not rather the genius of history like an eternal, imploring maiden, full of fire, with a burning heart and flaming soul, humanly warm and humanly beautiful?
--Zachris Topelius
Training a telescope on one’s own belly button will only reveal lint. You like that? You go right on staring at it. I prefer looking at galaxies.
-- Sarah Hoyt
|
|
|
|
|
I think that analyst has been staring at those giant iPads [^] in the newsroom for too long.
|
|
|
|
|
If he's right, he can point back to this news item in triumph. If he's wrong, no one will remember.
Maybe someone should should put it in his calendar, or in a time capsule.
|
|
|
|
|
A great development workflow will make your good developers great, and your great developers exceptional. A bad workflow will take your best engineers productivity down to a junior level and make wish he worked elsewhere. Break the build and find out fast
|
|
|
|
|
another way to put it, before we have continuous integration, all code produced is sh*t.
dev
|
|
|
|
|
Kent Sharkey wrote: A bad workflow will take your best engineers productivity down to a junior level and make wish he worked elsewhere. Indeed. Very, very, ..., very true.
If your actions inspire others to dream more, learn more, do more and become more, you are a leader.-John Q. Adams You must accept one of two basic premises: Either we are alone in the universe, or we are not alone in the universe. And either way, the implications are staggering.-Wernher von Braun Only two things are infinite, the universe and human stupidity, and I'm not sure about the former.-Albert Einstein
|
|
|
|
|
Hey, that's my excuse too!
|
|
|
|
|
More than 5,000 students in 35,000 schools worldwide are already participating, with individuals from Bill Gates and Mark Zuckerberg to Barack Obama out in support of the code.org campaign. Now get out there, and show them how it's done
|
|
|
|
|
Repost!
"I had the right to remain silent, but I didn't have the ability!"
Ron White, Comedian
|
|
|
|
|
After previous revelations about Windows "Threshold," a release we might think of as Windows 8.2, some more information has emerged about Microsoft's plans for the future. And if you were worried that Windows 8.1 didn't go far enough in appeasing desktop users on traditional PCs, I think I have some good news for you. Third time might be the charm for Windows 8
|
|
|
|
|
A Start Menu? Wow, what a concept!
Now, was that so hard Microsoft?
|
|
|
|
|