Understanding pointers is key to unlocking the power in C. There's nothing mind boggling about your buggy example, what you are trying to demonstrate is not a flaw, it's actually a very powerful feature. Having said that, I do agree that most people have trouble grasping the concept of pointers, I used to teach C to 2nd year engineering students, only about one in 10 students "got it" on the first try. If you want a better handle on pointers (bad pun intended), I highly recommend K&R's classic text "The C programming language".
I also agree with TFA that STL and Boost are over engineered libraries that overwhelm even an experienced C++ programmer with indecipherable typedefs within typedefs, proving yet again, that just because it can be done doesn't mean it should be.
(x+y)+z != x+(y+z); - correctly evaluates to false in C, the parentheses can safely be ignored because they are redundant and make no difference to the outcome.
x = x++; is basically undefined - How so? The code increments x, the "x=" part is harmless, again you are using redundant code that any halfway competent C programmer would not write in the first place.
I've been making a good living from C/C++ for 25yrs, I don't see your "problems", and I can't imagine the "workarounds" to be anything other than removing the redundant syntax.
As for TFA - It's unsurprising that Linus rants about C++, sure he's a very smart guy, but he's also an arrogant and highly emotional attention whore who wants things done his way or not at all. When he can't support his opinion with a logical argument, he invariably resorts to personal insults. Actually he often resorts to personal insults even when he can support his opinion.
How is it irresponsible? If a teenage boy wants to shoot himself, give him a gun!
If you're old enough to type, and you really have to ask that question, you simply don't have the level of empathy that's required to understand the answer.
Nanobots are just around the corner!? No need for cloth, just step out of your morning nanobot shower wearing your nanobot suit, no cloth for towels either because you're already dry and powdered. Nanobots will then get to work cleaning your teeth and styling your hair as you leave the room...
Disclaimer: If we are going to speculate about future laundry rituals, might as well go all the way to "nanobots will solve everything".
Yes, your brain does not run the entire nervous system. For example, your gut has it's own nervous system that can function normally even when connections to the brain have been cut. A fresh corpse will orgasam if an electical current is applied to a bundle of nerves at the base of the spine. A heart may continue to beat after being separated from the body. Most fishermen have seen freshly cleaned fish fillets twitching or flapping around.
Yes, but aside from being flamebait, it's also complete nonsense. Complexity is a mathematical concept that can be measured, by definition it's objective. It has nothing to do with varying degrees of human comprehension. There's a whole branch of mathematics devoted to it called "complexity theory", much of which is closely related to computer science.
GEB is a great book but it not about computers, it's about the human mind and in particular the recursive nature of thought (see "I am a strange loop" by the same author). If you want something like GEB but more approachable then try the original "Through the looking glass".
My biggest beef is they changed how default file search operates in explorer on win7, old search just looked at filenames, new one looks inside files. Complete pain in the arse, I'm the gate keeper for a large cvs repository, I don't want a list of 5000.c files when I'm searching for a particular.h file, I want a list with just the.h file in it. If they must try and compete with grep then a simple "look inside files" checkbox on the old dialog would have been better. Or better still put the search feature from Visual Studio into explorer as a separate "search in files" right click option.
Personally I think MS's tendency to kill useful stable features and move the carcass to a different UI location is a 'plot' to sell more MS training courses for non-technical staff.
I'm a fan of U2 and I can see how some people might consider what they did rude or presumptuous, but theft? - No, just leave the contorted 'theft' analogies to the MAAFIA. No offense intended, but they are much better at it than you are.
"Fact" engines such as Watson normally produce several results (facts) with a confidence rating on each and can show their "reasoning" step by step. The step by step reasoning is much more useful as a confirmation method than the source code. Source code won't help you much unless you have a solid background in statistical analysis.
Maybe there should be a concept such as Search Neutrality.
Search is already neutral, it's the order of results that upsets people because by definition, ranking cannot be neutral. An intelligent search engine such as IBM's Watson gives a confidence rating on it's "facts", it can produce multiple answers each with a confidence ranking. They can also explain in excruciating detail how they arrived at the answer, and they can do it better than humans. Technology is a tool, a hammer that can be used to build or destroy a civilization.
Understanding pointers is key to unlocking the power in C. There's nothing mind boggling about your buggy example, what you are trying to demonstrate is not a flaw, it's actually a very powerful feature. Having said that, I do agree that most people have trouble grasping the concept of pointers, I used to teach C to 2nd year engineering students, only about one in 10 students "got it" on the first try. If you want a better handle on pointers (bad pun intended), I highly recommend K&R's classic text "The C programming language".
I also agree with TFA that STL and Boost are over engineered libraries that overwhelm even an experienced C++ programmer with indecipherable typedefs within typedefs, proving yet again, that just because it can be done doesn't mean it should be.
(x+y)+z != x+(y+z); - correctly evaluates to false in C, the parentheses can safely be ignored because they are redundant and make no difference to the outcome.
x = x++; is basically undefined - How so? The code increments x, the "x=" part is harmless, again you are using redundant code that any halfway competent C programmer would not write in the first place.
I've been making a good living from C/C++ for 25yrs, I don't see your "problems", and I can't imagine the "workarounds" to be anything other than removing the redundant syntax.
As for TFA - It's unsurprising that Linus rants about C++, sure he's a very smart guy, but he's also an arrogant and highly emotional attention whore who wants things done his way or not at all. When he can't support his opinion with a logical argument, he invariably resorts to personal insults. Actually he often resorts to personal insults even when he can support his opinion.
Wish I had some mod points..
How is it irresponsible? If a teenage boy wants to shoot himself, give him a gun!
If you're old enough to type, and you really have to ask that question, you simply don't have the level of empathy that's required to understand the answer.
African Americans routinely vote well over 90 percent Democratic for fear that Republicans will cut their government benefits and welfare programs.
Interesting historical facts which I accept on face value, but then you fuck it up by claiming you can read the minds of blacks.
Before LBJ's Great Society welfare programs, the black illegitimacy rate was as low as 23 percent, but now it has more than tripled to 72 percent.
My first child, now 35, was technically illegitimate. I ask you the same question I asked my parents in 1979 - Why is that a problem?
Every political party has its racists.
You should have stopped there, the rest of your post is just a twisted apology for your own political party.
Legalizing marijuana is a policy decision, they don't stop you from stating the fact that marijuana exits.
25 miles is suburban Melbourne.
Nanobots are just around the corner!? No need for cloth, just step out of your morning nanobot shower wearing your nanobot suit, no cloth for towels either because you're already dry and powdered. Nanobots will then get to work cleaning your teeth and styling your hair as you leave the room...
Disclaimer: If we are going to speculate about future laundry rituals, might as well go all the way to "nanobots will solve everything".
Yes, your brain does not run the entire nervous system. For example, your gut has it's own nervous system that can function normally even when connections to the brain have been cut. A fresh corpse will orgasam if an electical current is applied to a bundle of nerves at the base of the spine. A heart may continue to beat after being separated from the body. Most fishermen have seen freshly cleaned fish fillets twitching or flapping around.
Hard to compute != hard to understand
...because Complexity != Comprehension.
Yes, but aside from being flamebait, it's also complete nonsense. Complexity is a mathematical concept that can be measured, by definition it's objective. It has nothing to do with varying degrees of human comprehension. There's a whole branch of mathematics devoted to it called "complexity theory", much of which is closely related to computer science.
Than you probably didn't find it.
You did "english" wrong too!
one thing the crazies never fail to achieve is to bring back a topic
"A fanatic is one who can't change his mind and won't change the subject". - Churchill
GEB is a great book but it not about computers, it's about the human mind and in particular the recursive nature of thought (see "I am a strange loop" by the same author). If you want something like GEB but more approachable then try the original "Through the looking glass".
Yes, after 25yrs in the industry I have come to the conclusion that "what is it supposed to do?" is invariably the most difficult question to answer.
Yeah, but a crappy name is a matter of taste, not function.
My biggest beef is they changed how default file search operates in explorer on win7, old search just looked at filenames, new one looks inside files. Complete pain in the arse, I'm the gate keeper for a large cvs repository, I don't want a list of 5000 .c files when I'm searching for a particular .h file, I want a list with just the .h file in it. If they must try and compete with grep then a simple "look inside files" checkbox on the old dialog would have been better. Or better still put the search feature from Visual Studio into explorer as a separate "search in files" right click option.
Personally I think MS's tendency to kill useful stable features and move the carcass to a different UI location is a 'plot' to sell more MS training courses for non-technical staff.
Not asking permission is theft.
I'm a fan of U2 and I can see how some people might consider what they did rude or presumptuous, but theft? - No, just leave the contorted 'theft' analogies to the MAAFIA. No offense intended, but they are much better at it than you are.
"I love you, and I hope your own children treat you in the same way you have treated me".
Legendary 1980's Christian rock band beat the current pop queen at her own game, deal with it, and then get off my lawn.
Agree. The AT&T mob were not hammered in court for finding a flaw, they were hammered because they attempted to use the flaw to extort money.
"Fact" engines such as Watson normally produce several results (facts) with a confidence rating on each and can show their "reasoning" step by step. The step by step reasoning is much more useful as a confirmation method than the source code. Source code won't help you much unless you have a solid background in statistical analysis.
No, and that's the point.
Maybe there should be a concept such as Search Neutrality.
Search is already neutral, it's the order of results that upsets people because by definition, ranking cannot be neutral. An intelligent search engine such as IBM's Watson gives a confidence rating on it's "facts", it can produce multiple answers each with a confidence ranking. They can also explain in excruciating detail how they arrived at the answer, and they can do it better than humans. Technology is a tool, a hammer that can be used to build or destroy a civilization.
Weren't people saying the same sort of things when the "assembly line" was first invented?
Yes, up until Henry Ford doubled his workers wages, introduced a 40hr week, and proved the Scrooges wrong.