Yeah, and the garbage is because of the memory model: it's inherent to fully GC'd languages.
You just go on believing that. In any case, it's irrelevant to our discussion. Even if garbage collection were intrinsically slower than manual storage management, what matters is that it reduces complexity and that in most applications, reducing complexity is more important than a modest performance gain.
Anything within reason: imagine you're on a project like Servo to create a general purpost open layout engine using a modern language.
It's hardly surprising that people who start with such a poor design are putting their hopes for making it work in a silver bullet language that supposedly magically prevents data races for them.
But either way you haven't given an alternaive.
I have; the obvious languages to write it in are C++ or C#. The obvious languages not to write it in are Rust or Go.
Read a transcript of the interview. He explicitly said that he could not name the former president of Mexico. There are lots of foreign leaders he could have said he admired.
So you are saying "The classical liberal can't name the former president of Mexico, so you should vote for the educated fascist instead?"
Thanks, but I'll rather vote for someone less competent who represents my views, than for a more competent person who is going to use their competency to make my life a living hell.
Apart from all the simple-minded stupidity that Libertarian beliefs entail
Maybe a bit of simplicity is needed. After all, it takes a bizarre mindset to rationalize Democratic and Republican policies:
"Healthcare is too expensive, so let us tax people more and make them spend even more on healthcare!"
"US schools are falling behind European schools, even though we are already spending much more per student than most of them, so let us spend even more!"
"Subsidizing oil causes an increase in oil production, but subsidizing single parenthood causes a decrease in single parenthood."
"Anybody who disagrees that people with white skin owe a debt to people with dark skin is a racist."
"Homosexuality is destroying heterosexual marriage."
"Freedom of religion means that government should be Christian if the majority want it."
"If we don't teach kids about sex, they will not have sex."
I mean the stupidity of both Democratic and Republican political messages is staggering.
are you really going to vote for someone who doesn't know or can't remember what Aleppo is, nor name any foreign leader?
Would I elect someone who isn't going to enact a lot of legislation, who has no interest or ambition in foreign policy, and who isn't going to raise taxes over someone who has the skills, power, money, and desire to start wars, raise taxes, and hand trillions of tax dollars to her billionaire buddies? You bet. Not that I think that Gary Johnson is such a person. Johnson and Trump are both not politicians, while Hillary has learned to create a passable public persona and to evade and deflect inconvenient questions competently.
For the same reason, I think Trump is preferable to Clinton: an incompetent, powerless fool is certainly better as a leader than someone who is skilled, corrupt, connected, and itching to destroy stuff.
But between automated testing, memory checkers, coding conventions, and smart pointers, memory safety just isn't a significant problem on well-run C++ development projects.
Mostly yes. Rust's memory safety extends beyond mere allocation bugs and also addresses thread related problems. C++ doesn't touch on that.
C++ addresses thread safety the same way it addresses memory safety: through a mix of concurrency primitives, testing, static checking, and dynamic checking.
I can't recall it being a problem in modern C++. It just works, pretty much.
I didn't say it didn't "work", I said that it complicates APIs. That is, APIs reflect decisions about ownership and resource management, often in ways that limit how a piece of software can be used later.
The allocation strategy is also what gives C++ great performance relative to something like Java in a lot of practical situations.
What gives C++ an edge over Java is primarily the massive amounts of unnecessary garbage that Java applications generate due to the way the language was designed, and secondarily the fact that the Oracle Java runtime just isn't all that great.
You've not given a single reason why, other than very vague arguments.
You gave the reason yourself: programmers are overwhelmed by complexity, and C++ is a hugely complex language. Rust is less complex, but still exposes a lot of complexity unnecessarily that most programmers neither understand well nor can deal well, such as memory ownership and thread-based concurrency.
You're also ignoring that a very large amount of the world's complex, high performance software is written in C++. You keep saying it's obsolete and people should use better languages, but you don't say why.
You have to read carefully: I didn't say that C++ was obsolete, only that Rust was obsolete. Rust is obsolete because it baked some outdated constructs (Sync/Send, ownership, linear types) directly into the language and is stuck with them.
But go on, what would *you* write a high performance, multithreaded HTML/CSS layout engine in? And why would you use the language you selected?
There are numerous tradeoffs involved there. Am I writing it myself or is there a team? What languages does the team know? Can I hire more people? What environment is it supposed to run in? Who needs to maintain it? What versions of HTML/CSS is it supposed to cover? What existing libraries can I use? The answer depends very much on those parameters. However, I can say one thing: I wouldn't write it in Rust or Go, because other languages are at least as good as those languages along all dimensions that matter.
C and C++ get their performance from the memory and machine model, and the main problem of them is that they are memory unsafe. Rust gives you the same model but with memory safety.... You clearly have no idea what you're talking about except for toy projects.
But between automated testing, memory checkers, coding conventions, and smart pointers, memory safety just isn't a significant problem on well-run C++ development projects. If you or your problem have memory safety issues in C++, you simply don't know what you're doing. For practical purposes, C++ is a safe language with an unsafe extension, just like Rust. The problem with memory management in C++ is that it is something that makes APIs and algorithms more complex because it is a constant concern, again, just like Rust.
But nothing. You accused Rust of being obsolete before it started because Swift already existed. You got the timeline mixed up. Look, everyone makes mistakes, just own it and move on. Stop trying to defend an obvious error.
You need to work on your reading comprehension: nowhere did I say that Swift predates Rust. I simply recommended Swift, along with many other modern languages, as better alternatives to Rust and C++ for most applications, while recommending C++ over Rust for the few applications where you actually need fine manual control.
Once you get complex enough the complexity will overwhelm you no matter how smart you think you are.
And this is precisely why you shouldn't use Rust or C++ for most applications in the first place.
The amount of information that is being generated is growing at an ever faster rate. A lot of it is still printed or archived in other ways. In the end, there is probably still a lot more information being archived, even per capita, than there used to be. Furthermore, most of that "information" is likely meaningless outside its cultural, social, and technological context. The amount of "timeless" information, information that will still be useful in a thousand years, is likely fairly modest in size.
Because it takes a powerful level of willful dumbfuckery to equate fascism and socialism the way you just did, with anything beyond a preschool education.
I didn't equate them, I pointed out commonalities:
they both advocate a supposedly temporary period of totalitarian government in order to achieve their goals, and they both promise to take from the rich and give to the poor. In practice, they both lead to poverty, violence, oppression, police states, and economic collapse.
:
They do differ in some respects: fascism tends to be nationalistic, racist, and associated with a warped version of Christianity, while socialism/communism tends to favor pan-nationalism, suppression of racial differences, and atheism. Support in both cases is from an odd mix of working classes and urban elites and intellectuals. There has historically also been a significant back and forth of voters between socialism and fascism. Mostly, it's people with chips on their shoulders that vote for either kind of party, and people with chips on their shoulder come from all walks of life.
Here I was, assuming you were just another redneck who grew up on
There is another commonality among fascists, socialists, and other assorted worshippers of totalitarianism: they all stereotype and demonize people who disagree with them.
These two quotes from you summarize the discussion nicely:
It's the polar opposite of being doctrinaire; the doctrinaire extremist fits the occasion to the theory; the fascist fits the theory to the occasion.
Actually, it shows you're throwing out a couple of Big Words you've heard, with nothing approaching an understanding of either term.
I think your pomposity juxtaposed to your ad hominems nicely summarizes your position, and your level of ignorance.
Now you've crossed the line from being a jackass to being a willfully ignorant jackass, advancing long-debunked nonsense to support what you imagine is some kind of argument.
"Willfully ignorant jackass" describes you quite well, because you have to really go out of your way to know the first thing about climate history:
As I was saying: "The climate has swung up and down by more than 8C dozens of times over the past few million years; that kind of rapid change is what our species and ecology evolved under..."
Mostly that shows that you don't know the first thing about Rust.
It's enough to know about Rust ownership, memory allocation, concurrency, and error handling to know that it is a lost cause from the start.
Also, Swift? WTF? Rust is older than Swift.
Yes, it is. But Swift has lots of actual users and has a moderately more modern design, while Rust has hardly any users and is firmly stuck in the era of big hair and shoulder pads.
Not one of those languages you mention has the same zero cost abstraction that Rust has.
Well, I'll give you this: you are consistently blind to opportunity costs and hidden costs, whether you bloviate about economics or bloviate about programming languages. In fact, Rust's "abstractions" cost you dearly, both in terms of effort and performance.
Rust has more or less exactly the same memory and machine model as C and C++.
My point exactly: it is thoroughly obsolete.
Or you know, write it in Rust and be sure that there are no memory errors.
Yes, roughly in the same way that if you chop off your arms and legs, you can be sure that you won't pick your nose.
Are you kidding? Obama and Clinton are in bed with the high tech industry, as well as media companies and Hollywood. They aren't going to hurt their major supporters, donors, and propaganda machine.
Their article calls for LangSec testing, and applauds the use of languages like Go and Rust over memory-unsafe languages like C.
Criticizing C and C++ for being unsafe is quite justified (although both C and C++ can, in fact, be implemented in a type-safe manner). But then lauding language turds like Go and Rust for being safe is laughable. There are plenty of mature safe languages around: Java, C#, Swift, SML, OCaml, Scala, F#; even Python and Clojure are safe (though dynamically typed). In fact, safe languages have been with us for almost as long as there have been programming languages at all, with a long history stretching back to the 1950's: Modula-3, Eiffel, Modula-2, CommonLisp, Ada, Pascal, Algol-68, Algol-60, Lisp, and many others.
Go and Rust were designed by people who are obsessed with problems that used to be issues in the 1980's (concurrency, memory management) but have been largely solved ever since. Go and Rust were obsolete out of the gate, designed by people apparently unwilling to keep up with technology and understand what's going on in the real world.
If you're looking for a safe language, your choice is easy: pick one of Java, C#, or Swift. For really high performance, you can add small, well-tested routines in C.
First of all, you stated it as absolute fact, not opinion:
I thought I was being very explicit that there is not much point making that comparison.
Second, I didn't dispute that you hold that view, I am saying that the view itself is wrong. You'd be surprised at all the (morally, factually) wrong opinions and views you likely hold.
When you violate my privacy because you're either a sicko or a moron, then I expect my government to do something to make sure you find a more appropriate use for your toys.
Oh, that's so cute: you think that drone registration is about protecting your privacy. Protecting your privacy is easy without registration: you simply shoot down any drone over your property with an airgun, with another drone, or even a water jet. Problem solved.
What the FAA actually is aiming for is to let corporations use the airspace over private property that used to be protected for drone deliveries. In order to do that, they need to manage the airspace while prohibiting citizens from shooting down drones over their property. That's what drone regulation and drone registration is really about. Nobody in government or at the FAA gives a shit about your privacy.
Easy, Guns are a fundamental right baked into the constitution. Drones are not.
The US Constitutions has no rights "baked into it". The US Constitution enumerates a limited set of governmental powers; all rights that aren't explicitly limited by enumerated powers are retained by the people (or the states).
What you think is irrelevant. People no more have to justify to you why they want to own guns than why they want to have sex, with whom they want to have sex, why they want to own a car, etc. That's what living in a free society means: you decide what is important to you, not government or your neighbors.
European constitutions protect specific rights, the US constitution does not protect any rights.
What the US Constitution is doing is something much better: it enumerates a limited set of powers that the government has; all rights (current and future) that aren't limited by those powers are retained by the people.
That, at least, was the original idea. Legal practice has increasingly ignored that since the progressive era. But it's nevertheless what the Constitution actually means.
A gun is a constitutionally protected right. A drone isn't.
That's wrong. Under the US Constitution, the federal government has limited, enumerated powers, while citizens retain the infinity of rights and privileges that aren't explicitly limited in the Constitution. The Second Amendment doesn't give you any rights you didn't already have under the Constitution; the Second Amendment simply states, as a precaution, that this right in particular is protected, because the Founders already anticipated just the kind of undesirable expansion of federal powers that we have seen over the past century and a half. Both the Constitution and the Bill of Rights state that clearly.
That is, it is far from clear that the FAA has Constitutional authority to regulate air space at the federal level; it was created in a wave of federal overreach in the 20th century. Federal overreach on guns has been impeded because the Second Amendment put an explicit, secondary barrier in place.
No I was very certainly correct - that really is my opinion.
You didn't state it as your opinion, you stated it as fact. And as fact, it is wrong: there is very much a point to making that comparison.
if that petty bullying tactic gets you some "wins" in childish mass debating games.
We're not having a "debate"; I'm simply telling you in no uncertain terms that you are confused and need to reexamine your assumptions and beliefs. Hopefully, a bit of rudeness and disrespect will shake you out of your bubble of ignorance and like-minded idiots.
No, Trump just conspired with Russians to boost his personal profits and screw the USA as a whole. Again.
By running a DDOS on Newsweek? Are you fucking kidding? How is that supposed to "boost his personal profits"? DDOS attacks are ineffective in suppressing information. Your conspiracy theory makes no sense whatsoever.
If Trump were conspiring with the Russians, the Russians could simply release a lot more of the dirt they have on Hillary; and if you are naive enough to think that they don't have any dirt, then they could still fabricate a bunch of believable lies about Russian dealings with Hillary and leak those.
But the sad fact is that Russia probably prefers dealing with Hillary, a politician who has shown herself to be highly corruptible by foreign governments. It's Hillary that has "screwed the US as a whole", again and again, in her official capacity as SoS and Senator.
Actually, it shows you're throwing out a couple of Big Words you've heard, with nothing approaching an understanding of either term.
Honey, I'm a older gay man who grew up in Europe, in part in a socialist country, in part in a formerly fascist country, in part in a social welfare state. My life depended on knowing what those terms mean. If you don't understand what I was saying, I suggest you go back and read up on your history, instead of listening to the self-serving crap and propaganda that US and European "left wing" politicians try to peddle.
Europe and Asia pioneered this kind of surveillance crap, and few people know about it there or care about it.
In the US, there's a good chance that SCOTUS and Congress put a stop to this. Don't hold your breath for that to happen in Europe.
You just go on believing that. In any case, it's irrelevant to our discussion. Even if garbage collection were intrinsically slower than manual storage management, what matters is that it reduces complexity and that in most applications, reducing complexity is more important than a modest performance gain.
It's hardly surprising that people who start with such a poor design are putting their hopes for making it work in a silver bullet language that supposedly magically prevents data races for them.
I have; the obvious languages to write it in are C++ or C#. The obvious languages not to write it in are Rust or Go.
Most of the lousy things Bush did he did with the aid of Congress. I think Trump would probably have a hard time passing as much crap as Bush did.
So you are saying "The classical liberal can't name the former president of Mexico, so you should vote for the educated fascist instead?"
Thanks, but I'll rather vote for someone less competent who represents my views, than for a more competent person who is going to use their competency to make my life a living hell.
Maybe a bit of simplicity is needed. After all, it takes a bizarre mindset to rationalize Democratic and Republican policies:
"Healthcare is too expensive, so let us tax people more and make them spend even more on healthcare!"
"US schools are falling behind European schools, even though we are already spending much more per student than most of them, so let us spend even more!"
"Subsidizing oil causes an increase in oil production, but subsidizing single parenthood causes a decrease in single parenthood."
"Anybody who disagrees that people with white skin owe a debt to people with dark skin is a racist."
"Homosexuality is destroying heterosexual marriage."
"Freedom of religion means that government should be Christian if the majority want it."
"If we don't teach kids about sex, they will not have sex."
I mean the stupidity of both Democratic and Republican political messages is staggering.
Would I elect someone who isn't going to enact a lot of legislation, who has no interest or ambition in foreign policy, and who isn't going to raise taxes over someone who has the skills, power, money, and desire to start wars, raise taxes, and hand trillions of tax dollars to her billionaire buddies? You bet. Not that I think that Gary Johnson is such a person. Johnson and Trump are both not politicians, while Hillary has learned to create a passable public persona and to evade and deflect inconvenient questions competently.
For the same reason, I think Trump is preferable to Clinton: an incompetent, powerless fool is certainly better as a leader than someone who is skilled, corrupt, connected, and itching to destroy stuff.
C++ addresses thread safety the same way it addresses memory safety: through a mix of concurrency primitives, testing, static checking, and dynamic checking.
I didn't say it didn't "work", I said that it complicates APIs. That is, APIs reflect decisions about ownership and resource management, often in ways that limit how a piece of software can be used later.
What gives C++ an edge over Java is primarily the massive amounts of unnecessary garbage that Java applications generate due to the way the language was designed, and secondarily the fact that the Oracle Java runtime just isn't all that great.
You gave the reason yourself: programmers are overwhelmed by complexity, and C++ is a hugely complex language. Rust is less complex, but still exposes a lot of complexity unnecessarily that most programmers neither understand well nor can deal well, such as memory ownership and thread-based concurrency.
You have to read carefully: I didn't say that C++ was obsolete, only that Rust was obsolete. Rust is obsolete because it baked some outdated constructs (Sync/Send, ownership, linear types) directly into the language and is stuck with them.
There are numerous tradeoffs involved there. Am I writing it myself or is there a team? What languages does the team know? Can I hire more people? What environment is it supposed to run in? Who needs to maintain it? What versions of HTML/CSS is it supposed to cover? What existing libraries can I use? The answer depends very much on those parameters. However, I can say one thing: I wouldn't write it in Rust or Go, because other languages are at least as good as those languages along all dimensions that matter.
But between automated testing, memory checkers, coding conventions, and smart pointers, memory safety just isn't a significant problem on well-run C++ development projects. If you or your problem have memory safety issues in C++, you simply don't know what you're doing. For practical purposes, C++ is a safe language with an unsafe extension, just like Rust. The problem with memory management in C++ is that it is something that makes APIs and algorithms more complex because it is a constant concern, again, just like Rust.
You need to work on your reading comprehension: nowhere did I say that Swift predates Rust. I simply recommended Swift, along with many other modern languages, as better alternatives to Rust and C++ for most applications, while recommending C++ over Rust for the few applications where you actually need fine manual control.
And this is precisely why you shouldn't use Rust or C++ for most applications in the first place.
The amount of information that is being generated is growing at an ever faster rate. A lot of it is still printed or archived in other ways. In the end, there is probably still a lot more information being archived, even per capita, than there used to be. Furthermore, most of that "information" is likely meaningless outside its cultural, social, and technological context. The amount of "timeless" information, information that will still be useful in a thousand years, is likely fairly modest in size.
I didn't equate them, I pointed out commonalities:
:
They do differ in some respects: fascism tends to be nationalistic, racist, and associated with a warped version of Christianity, while socialism/communism tends to favor pan-nationalism, suppression of racial differences, and atheism. Support in both cases is from an odd mix of working classes and urban elites and intellectuals. There has historically also been a significant back and forth of voters between socialism and fascism. Mostly, it's people with chips on their shoulders that vote for either kind of party, and people with chips on their shoulder come from all walks of life.
There is another commonality among fascists, socialists, and other assorted worshippers of totalitarianism: they all stereotype and demonize people who disagree with them.
These two quotes from you summarize the discussion nicely:
I think your pomposity juxtaposed to your ad hominems nicely summarizes your position, and your level of ignorance.
"Willfully ignorant jackass" describes you quite well, because you have to really go out of your way to know the first thing about climate history:
https://en.wikipedia.org/wiki/...
As I was saying: "The climate has swung up and down by more than 8C dozens of times over the past few million years; that kind of rapid change is what our species and ecology evolved under..."
It's enough to know about Rust ownership, memory allocation, concurrency, and error handling to know that it is a lost cause from the start.
Yes, it is. But Swift has lots of actual users and has a moderately more modern design, while Rust has hardly any users and is firmly stuck in the era of big hair and shoulder pads.
Well, I'll give you this: you are consistently blind to opportunity costs and hidden costs, whether you bloviate about economics or bloviate about programming languages. In fact, Rust's "abstractions" cost you dearly, both in terms of effort and performance.
My point exactly: it is thoroughly obsolete.
Yes, roughly in the same way that if you chop off your arms and legs, you can be sure that you won't pick your nose.
Are you kidding? Obama and Clinton are in bed with the high tech industry, as well as media companies and Hollywood. They aren't going to hurt their major supporters, donors, and propaganda machine.
Criticizing C and C++ for being unsafe is quite justified (although both C and C++ can, in fact, be implemented in a type-safe manner). But then lauding language turds like Go and Rust for being safe is laughable. There are plenty of mature safe languages around: Java, C#, Swift, SML, OCaml, Scala, F#; even Python and Clojure are safe (though dynamically typed). In fact, safe languages have been with us for almost as long as there have been programming languages at all, with a long history stretching back to the 1950's: Modula-3, Eiffel, Modula-2, CommonLisp, Ada, Pascal, Algol-68, Algol-60, Lisp, and many others.
Go and Rust were designed by people who are obsessed with problems that used to be issues in the 1980's (concurrency, memory management) but have been largely solved ever since. Go and Rust were obsolete out of the gate, designed by people apparently unwilling to keep up with technology and understand what's going on in the real world.
If you're looking for a safe language, your choice is easy: pick one of Java, C#, or Swift. For really high performance, you can add small, well-tested routines in C.
First of all, you stated it as absolute fact, not opinion:
Second, I didn't dispute that you hold that view, I am saying that the view itself is wrong. You'd be surprised at all the (morally, factually) wrong opinions and views you likely hold.
Oh, that's so cute: you think that drone registration is about protecting your privacy. Protecting your privacy is easy without registration: you simply shoot down any drone over your property with an airgun, with another drone, or even a water jet. Problem solved.
What the FAA actually is aiming for is to let corporations use the airspace over private property that used to be protected for drone deliveries. In order to do that, they need to manage the airspace while prohibiting citizens from shooting down drones over their property. That's what drone regulation and drone registration is really about. Nobody in government or at the FAA gives a shit about your privacy.
The US Constitutions has no rights "baked into it". The US Constitution enumerates a limited set of governmental powers; all rights that aren't explicitly limited by enumerated powers are retained by the people (or the states).
What you think is irrelevant. People no more have to justify to you why they want to own guns than why they want to have sex, with whom they want to have sex, why they want to own a car, etc. That's what living in a free society means: you decide what is important to you, not government or your neighbors.
European constitutions protect specific rights, the US constitution does not protect any rights.
What the US Constitution is doing is something much better: it enumerates a limited set of powers that the government has; all rights (current and future) that aren't limited by those powers are retained by the people.
That, at least, was the original idea. Legal practice has increasingly ignored that since the progressive era. But it's nevertheless what the Constitution actually means.
That's wrong. Under the US Constitution, the federal government has limited, enumerated powers, while citizens retain the infinity of rights and privileges that aren't explicitly limited in the Constitution. The Second Amendment doesn't give you any rights you didn't already have under the Constitution; the Second Amendment simply states, as a precaution, that this right in particular is protected, because the Founders already anticipated just the kind of undesirable expansion of federal powers that we have seen over the past century and a half. Both the Constitution and the Bill of Rights state that clearly.
That is, it is far from clear that the FAA has Constitutional authority to regulate air space at the federal level; it was created in a wave of federal overreach in the 20th century. Federal overreach on guns has been impeded because the Second Amendment put an explicit, secondary barrier in place.
You didn't state it as your opinion, you stated it as fact. And as fact, it is wrong: there is very much a point to making that comparison.
We're not having a "debate"; I'm simply telling you in no uncertain terms that you are confused and need to reexamine your assumptions and beliefs. Hopefully, a bit of rudeness and disrespect will shake you out of your bubble of ignorance and like-minded idiots.
It's the only way to be sure.
By running a DDOS on Newsweek? Are you fucking kidding? How is that supposed to "boost his personal profits"? DDOS attacks are ineffective in suppressing information. Your conspiracy theory makes no sense whatsoever.
If Trump were conspiring with the Russians, the Russians could simply release a lot more of the dirt they have on Hillary; and if you are naive enough to think that they don't have any dirt, then they could still fabricate a bunch of believable lies about Russian dealings with Hillary and leak those.
But the sad fact is that Russia probably prefers dealing with Hillary, a politician who has shown herself to be highly corruptible by foreign governments. It's Hillary that has "screwed the US as a whole", again and again, in her official capacity as SoS and Senator.
Honey, I'm a older gay man who grew up in Europe, in part in a socialist country, in part in a formerly fascist country, in part in a social welfare state. My life depended on knowing what those terms mean. If you don't understand what I was saying, I suggest you go back and read up on your history, instead of listening to the self-serving crap and propaganda that US and European "left wing" politicians try to peddle.
Really? Where? I thought I was pretty careful to refer to Hillary and/or her followers as necessary. You're welcome to point out where you disagree.
You can buy faster, more powerful, more upgradeable machines for the same amount of money.
I think the point of this machine is that it is small and fanless, and that it also guaranteed to be Linux-compatible.