Then learn the new features. What's the problem? You learn a new language when one annoys you too much. This is a different issue from C++ altogether. Java 8 has some new features. Learn to use them. Perl 6 has new features. Learn to use them. Javascript, Go, Rust, Swift, whatever - tell me what language doesn't acquire new features over time that you have to learn and maintain?
"I'm too scared to learn new stuff" is a stupid attitude.
I'm all for conservation of species, but it seems to me this is just the symptom. Save the cheetah, then what next? Many species are being driven to extinction as well. You can artificially inflate the numbers by pouring lots of money into breeding programs like the Chinese have done with pandas, but that does nothing for the underlying causes.
a good faith purchaser, in a sale conducted according to law.
So what? All that should mean is that she is not liable for the fact that it was stolen, and that she should be refunded at full cost. It shouldn't mean they can own something that was originally stolen.
You've confused familiarity and preference with fact.
What's a "useful language"? Was there some committee where that was decided? If you grew up where tone was a part of the meaning, you'd have no problems. Just because you lack to capacity to imagine someone with that ability doesn't make it not useful.
Who said "Western Music" is endlessly better? What is Western Music? Does Bjork count as Western Music? A lot of Westerners hates her music. Is Blues and Jazz Western Music, even though they come from black slaves, and often derided by the "elite" classes?
Some people understand context. Some have no grasp of the concept. Both presidents inherited different economic conditions. Try seeing things with more nuance.
The problem with Trump is really with his supporters and the people he put in charge, and that his supporters have no problem with. His supporters that I have had the displeasure of coming across have no problem saying that people with different political opinions are traitors who need to be deported or jailed. He's put anti-net neutrality people in charge of the FCC. And Trump will be in a position to stack the Supreme Court with his choices who would probably be worse than Scalia in their blatant partisanship and hypocrisy.
Trump has even said that the internet needs more censorship, and that did not hurt his election chances at all.
As for Congress - the Republicans own both houses now. Republicans who were able to get in because of people who voted for Trump knowing of his positions. I doubt Congress would be ineffective at all at steamrolling existing rights with that kind of control.
I'm pretty sure they do know about it. Some of them accept it. Some of them are even for it.
Not everything about the Chinese internet is "say something wrong and you'll immediately be sent to a labour camp". Letting people vent but limiting their effective range to zero is much more efficient at quieting dissent.
Even the US government is trying very hard to follow in China's footsteps.
Yeah, because we've never sent anything to Mars before. Tell me about something that is not just a cheaper version of something that's already been done. I'm talking about LEADING the way. It's much easier to do something once the costs and issues are known and you can estimate profits - and Mars is well known. Still waiting on corporations doing something completely unknown.
Tell me when our corporations start outdoing government space agencies and not just retreading old ground but in a cheaper, less reliable, fashion. Corporations have yet to actually LEAD the way in space.
That the MRA types would take an article reporting a law suit that ALLEGES, as though it were already established fact. Because apparently being sued for something means it must already be true without having the claims tested in court. But hey, whatever you need to start foaming at the mouth over dem feminazis.
What would originally be a simple bulk deallocation now requires calling ~2 destructors per entry (one from the main object, one from shared_ptr).
But what was the actual cost of the main object constructor? All it has to do is call the shared_ptr destructor. Did the compiler not optimize it away enough?
And by bulk deallocation, how would that have been possible if you didn't use manual deallocation for each object in turn anyway? Would you have implemented the struct with the data embedded in the object, without an extra indirection? Or maybe put that data in its own vector/array, as is common in graphics/games programming? If so, they should have done that whether or not there was shared_ptr. It sounded like more thought needed to be given to the data design, rather than the fault of managed memory.
shared_ptr also requires a thread-safe reference count, which is a slowdown in itself.
Assuming an inherently multithreaded process, if you are sharing ownership of an object amongst threads, you would want reference counts to be atomic. If ownership is not shared - you shouldn't be using a shared_ptr.
I'm certain you can avoid most of the slowdown with shared_ptr if you already know what can happen, but there's still a developer who uses it without knowing what will happen ahead of time.
It sounds like the problems started out with an ignorance of data design and the purpose of shared_ptrs (ie, declare shared ownership rather than a catch all for Java-like allocation of objects).
Just because you never encountered the variant "learnt" in your small world doesn't make it wrong, idiot.
Then learn the new features. What's the problem? You learn a new language when one annoys you too much. This is a different issue from C++ altogether. Java 8 has some new features. Learn to use them. Perl 6 has new features. Learn to use them. Javascript, Go, Rust, Swift, whatever - tell me what language doesn't acquire new features over time that you have to learn and maintain?
"I'm too scared to learn new stuff" is a stupid attitude.
There are no "efficient object oriented design practices". Templates are more efficient than shoving everything into a class hierarchy.
https://www.youtube.com/watch?... Most templates and other code compile away. Learn to use the compiler.
I learnt it and found it easy. I think the problem is with you.
Cue the goal post shifting.
I'm all for conservation of species, but it seems to me this is just the symptom. Save the cheetah, then what next? Many species are being driven to extinction as well. You can artificially inflate the numbers by pouring lots of money into breeding programs like the Chinese have done with pandas, but that does nothing for the underlying causes.
Anyone can make assertions.
Yeah, because collective, public ownership is exactly the same as corporate ownership.
Java makes things simple so that any competent programmer overcomplicate things to get around the simpleness of Java's design.
You pay for it as soon as you use it. You'll pay, you'll see.
a good faith purchaser, in a sale conducted according to law.
So what? All that should mean is that she is not liable for the fact that it was stolen, and that she should be refunded at full cost. It shouldn't mean they can own something that was originally stolen.
You've confused familiarity and preference with fact.
What's a "useful language"? Was there some committee where that was decided? If you grew up where tone was a part of the meaning, you'd have no problems. Just because you lack to capacity to imagine someone with that ability doesn't make it not useful.
Who said "Western Music" is endlessly better? What is Western Music? Does Bjork count as Western Music? A lot of Westerners hates her music. Is Blues and Jazz Western Music, even though they come from black slaves, and often derided by the "elite" classes?
It all must be Ellen Pao's fault. Somehow.
Some people understand context. Some have no grasp of the concept. Both presidents inherited different economic conditions. Try seeing things with more nuance.
The problem with Trump is really with his supporters and the people he put in charge, and that his supporters have no problem with. His supporters that I have had the displeasure of coming across have no problem saying that people with different political opinions are traitors who need to be deported or jailed. He's put anti-net neutrality people in charge of the FCC. And Trump will be in a position to stack the Supreme Court with his choices who would probably be worse than Scalia in their blatant partisanship and hypocrisy.
Trump has even said that the internet needs more censorship, and that did not hurt his election chances at all.
As for Congress - the Republicans own both houses now. Republicans who were able to get in because of people who voted for Trump knowing of his positions. I doubt Congress would be ineffective at all at steamrolling existing rights with that kind of control.
That may change with this president and the people he's put in charge.
I'm pretty sure they do know about it. Some of them accept it. Some of them are even for it.
Not everything about the Chinese internet is "say something wrong and you'll immediately be sent to a labour camp". Letting people vent but limiting their effective range to zero is much more efficient at quieting dissent.
Even the US government is trying very hard to follow in China's footsteps.
And people are short sighted, short attention spanned idiots and arseholes.
"I'm so sick of hearing about it, therefore, it doesn't exist"
Yeah, because we've never sent anything to Mars before. Tell me about something that is not just a cheaper version of something that's already been done. I'm talking about LEADING the way. It's much easier to do something once the costs and issues are known and you can estimate profits - and Mars is well known. Still waiting on corporations doing something completely unknown.
Tell me when our corporations start outdoing government space agencies and not just retreading old ground but in a cheaper, less reliable, fashion. Corporations have yet to actually LEAD the way in space.
Let me use it to make and play the world's smallest electric violin.
That the MRA types would take an article reporting a law suit that ALLEGES, as though it were already established fact. Because apparently being sued for something means it must already be true without having the claims tested in court. But hey, whatever you need to start foaming at the mouth over dem feminazis.
And that's extra scary to me. There's a large, out-of-focus monster, roaming the countryside. "Quick! He's fuzzy! Let's get out of here!"
What would originally be a simple bulk deallocation now requires calling ~2 destructors per entry (one from the main object, one from shared_ptr).
But what was the actual cost of the main object constructor? All it has to do is call the shared_ptr destructor. Did the compiler not optimize it away enough?
And by bulk deallocation, how would that have been possible if you didn't use manual deallocation for each object in turn anyway? Would you have implemented the struct with the data embedded in the object, without an extra indirection? Or maybe put that data in its own vector/array, as is common in graphics/games programming? If so, they should have done that whether or not there was shared_ptr. It sounded like more thought needed to be given to the data design, rather than the fault of managed memory.
shared_ptr also requires a thread-safe reference count, which is a slowdown in itself.
Assuming an inherently multithreaded process, if you are sharing ownership of an object amongst threads, you would want reference counts to be atomic. If ownership is not shared - you shouldn't be using a shared_ptr.
I'm certain you can avoid most of the slowdown with shared_ptr if you already know what can happen, but there's still a developer who uses it without knowing what will happen ahead of time.
It sounds like the problems started out with an ignorance of data design and the purpose of shared_ptrs (ie, declare shared ownership rather than a catch all for Java-like allocation of objects).