Any criminal justice system whose purpose is that someone "gets his" is not a justice system, it's a revenge system.
I don't shed a tear for him, but I do shed a tear for any nation or people who value vengeance over justice. I don't shed a tear, but do feel intense disgust, at those supposed small-government advocates who believe that elected officials have some business making decisions on who lives and who dies. I will allow myself a small sniffle for all of those tax dollars which were wasted on killing people when locking them up and throwing away the key costs an order of magnitude less.
The good news is that it will only take one example of an executed person being exonerated in a court of law for capital punishment to end in your country.
I heard what you were saying! You know nothing of my work! You mean my whole fallacy is wrong. How you got to teach a course in anything is totally amazing!
Oh, please. Get over this nonsensical idea that there is such a thing as "the Bible's take" on any subject. Romans, Deuteronomy and Leviticus were written by different people with different agendas at different times to different audiences in different contexts.
Even most mainstream Christian scholars will tell you that.
Huh? Surely the question of how best to translate an ancient Hebrew text into modern English does not depend on what faith or lack thereof you subscribe to or don't as you so choose. Furthermore, an "apologist", as any classicist will tell you, is anyone who defends a position by the systematic use of reason.
We are not significantly altering our environment. There's pretty much the same amount or land sea and air, the temperatures are pretty much the same, volcanic and seismic activity happens at pretty stable rate, we're just as likely to get hit by a comet.
First off, temperatures are not pretty much the same. Where have you been?
Secondly, as one counter-example, there's some evidence that cities are more like to be badly flooded than they once were because of our fetish for paving. Water soaks through soil, but apparently not through bitumen and concrete, so heavy rains tend to mean that water disappears only as fast as our human-made drainage systems can cope, which is often not as fast as a patch of grassland.
Not that a heavy rain is likely to be what finishes us off, of course, but this is just an illustration.
Huge swaths of species went extinct long before man even came along, and so it seems pretty clear that it's part of the natural order. So are we now supposed to completely stop that natural process out of some sense of guilt (because we have arrogantly decided that we're not part of the natural order)?
The thing about extinction events is that species often go extinct together. The biosphere is so interconnected that the extinction of one species may trigger a huge cascade of other extinctions. Given the number of species on the planet and the complex net of dependencies and interactions between them, it's often not obvious what those trigger species are until it's too late.
You're right that we are indeed part of the natural order. There is nothing about h. sapiens that's special, and that's precisely the problem: if we accidentally kill off a trigger species that eventually results in our extinction, Mother Nature won't give a damn.
The difficult bit about C++ EH isn't altering the program counter and stack pointer, it's calling the destructors on all of the stack-allocated objects. It can be done, but it's hard to do it in a way that doesn't hurt the performance of code that never calls an exception.
Oh, and you also need a smarter linker than you do for C because of template instantiation and the one definition rule, but GCC already has that.
GCC uses garbage collection, so it's not doing manual memory management anyway.
That's not true. GCC is using manual memory management for some data structures and GC for others. This makes sense considering the design requirements for GCC. Most data structures in a compiler don't have complex memory lifetimes. For example, the data object associated with a procedure/function is created when it's parsed and never really "goes away" after that, so there's no advantage for using automated memory management for them.
However, code transformation passes tend to manipulate lots of small objects with difficult to follow patterns of sharing. Sprinkling code which is meant to be doing optimisation with stuff to keep track of which objects are garbage would cause extreme bloat and make maintaining the code ten times harder than it needs to be. GC is a clear win there.
Remember, GCC used to use the Boehm collector, but the developers found managing everything with it to be too heavy-weight for their purposes. The community is extremely fortunate that the developers of one our most mission-critical pieces of software have sound judgement and good taste.
First off, as previously noted, STL algorithms are designed so that they inline aggressively. When you call g_list_sort_with_data, it calls your GCompareDataFunc every time it needs a comparison. But when you call std::sort, it inlines that comparison function. If the comparison function is a couple of instructions, you save big on function call overhead.
Similarly, data structures are also inlined. A GList is, physically, a list of pointers to payload data. An STL list, however, is a list of physical data. So if your GList stores doubles, you waste memory (a pointer per list cell plus probably extra malloc overhead to store each item), and time spent pointer chasing.
Secondly, the STL is far more type-safe than glib. You (mostly) can't accidentally store a struct in a list of integers.
Thirdly, glib is verbose compared to the STL. Compare g_array_index(a, i) with a[i]. Yes, using a decent editor with name completion doesn't make it necessarily any harder to write, but that's not the point.
Finally, the STL is exception safe and, if your OS allows it, thread cancellation safe. But, of course, C doesn't have exceptions. It has return codes that everyone forgets to check.
That's only half true. Nobody cares about OOP in the Alan Kay sense; if we really need that, we use futures, iterators, threads, MPI or whatever is most appropriate.
But objects in C++ are ubiquitous because they are its module system, and it's a module system that gives you modules that are instantiable and inheritable. C99, by contrast, doesn't have a module system.
But anyway, normally you wouldn't use them, because such a combination is essentially the same as an overly complicated std::set.
It's only complicated because writing conforming STL containers requires you to understand bits of the STL that most users don't need to understand. But it's not overly complicated at all. On the contrary, it's a perfectly respectable data structure which satisfies mostly the same concepts as std::set (the iterator invalidation rules are different), only with a very different (memory and time) performance profile. If that's the performance profile you need, that's what you should use.
It's something of a C++ rite of passage to implement a Simple Associative Container interface on top of std::vector. As a disclaimer, though, Associative Container has complexity guarantees which sorted vectors don't support, which is why they're not in Boost.
No, they simply memorize magical mantras that, when regurgitated, will do what they want.
I believe the term you're looking for is "cargo cult programming".
Besides, the exact same argument could be used to condemn first OO, then structural programming, then anything that gets compiled, then finally machine code itself as an abstraction over the physical hardware of modern processors.
Quite. Indeed, getting back to the topic at hand, people seem to have forgotten (or perhaps never realised) that GCC already uses garbage collection. Arguably, GCC hasn't been written in C for a while now.
If they want some of teh nicer-sounding features of C++0a, things might start getting very horrible quite quickly.
Not really. There is nothing in the back end of a retargetable C++ compiler which needs rewriting for C++0x.
Indeed, there are very few bits of C++ which require back end code that's different from that which is required for a C compiler, assuming that the back end is bug-free. If you compile vtables and run-time type information down to C data structures and do name mangling in the front end (all trivial), then probably the only thing that makes a C++ compiler back end different from a C compiler back end is exception handling. This is precisely one of the features of C++ that I, were I a GCC developer, wouldn't want to do without.
For completeness, I should point out that there is one complication: Different C++ front ends may produce new or sufficiently different code sequences such that existing back ends may not optimise them as well as they should. So while a change of C++ front end may not require changes to the back end for correctness, it may require them for performance.
I meant that in relation to your statement that "the plural of anecdote is not data". You seemed to be implying that there was a fundamental difference between "data" about religion deliberately opposing science and mere list of incidences where it occurred.
And there is. A bunch of stories divorced from their historical context and without any stories which may disprove the thesis is useless.
As an example of how historical context might be relevant: Consider times and places where church and state are not cleanly separated, and some cleric opposes science. How would you tell if the cleric is acting as a theologian or acting as a politician? The distinction is important, because your claim is not that many religious leaders have historically opposed science, it's that there is an inherent conflict between the two.
Consider the "religious right" of the USA. Fifty years ago, it essentially didn't exist. Indeed, evangelical denominations such as the Southern Baptist Convention shunned participation in politics until the fundamentalist takeover of the 1970s, and the exploitation of it by the Neoconservatives of the Republican Party. Is this best interpreted as an example of a conflict between science and religion, or a cynical power grab by a bunch of political psychopaths?
Most likely, it's both and neither, but much more complex than either simplistic conclusion. But this is exactly the kind of careful analysis I would expect before I'd agree that there is some "inherent" conflict between science and religion.
This, incidentally, is why I'm not a sociologist. It's too hard.
But seriously, it hadn't occurred to me that a philosophy with no belief in any supernatural entity would be considered a religion.
Once again, though, mere belief in a supernatural entity doesn't seem like the right place to draw the line. Martin Gardner (may His Noodly Appendage give his soul rest) was a "philosophical theist" according to his own description, and yet nobody would seriously question his pro-science stance and impeccable skeptical credentials.
There is an evident conflict between any ideology of inerrant revelation and one of skeptical investigation, you just choose not to see it.
Ah, now, see, you started with "religion" and have now shifted the goalposts to "inerrant revelation". Duh, of course purportedly inerrant revelation is in conflict with skeptical investigation.
The only way out is by the usual method of weaseling out by smudging the word religion until it doesn't resemble any actual religion in the world.
As opposed to narrowing the word "religion" until it resembles a tiny minority of all religions in the world. See, you seem to be defining all non-literalist religion (i.e. any one which doesn't claim, or disclaims, "inerrant" or "literal interpretation only" status for its sacred texts) as "not a religion". And that's not even getting started on non-theistic or non-creedal religions.
Here I'm talking about real world examples of scientifically proved wrong opinions held by large numbers of members from a major religion and you are trying to downplay it as "some cleric somewhere disagreed with something a scientist said".
Even showing "large numbers of members" (which is easy do to, I'll grant you) does not make the case that the conflict is "inherent". Large numbers of people in the US believe that most educated Europeans believed the world was flat in 1492, despite overwhelming evidence to the contrary. This does not imply that there is an inherent conflict between the US education system and historical fact.
(OK, it might suggest a link, but you'd have to get a lot more evidence to prove it.)
This sounds to me like a 'no true Scotsman' argument.
Sorry, you're going to have to be more specific than that. Precisely how is it a "no true Scotsman" argument? Or did you mean that it isn't a "no true Scotsman" argument, but just vaguely sounds like one to you?
Religion believes that the universe is ultimately mutable by an all-powerful god. Religion also often has an evangelical basis which puts it directly into conflict with non-followers when it attempting to convert them to the religion.
Nonsense. Even the claim that "religion believes that the universe is ultimately mutable by an all-powerful god", even if you just stick to the major world religions, is trivially false. Just look at Philosophical Taoism or the non-theistic forms of Buddhism. Or did you think they're not true religions...?
Religion has been deliberately opposing science since the first doctors were burned as witches. Want a list?
No, I don't want a list, and neither should you. The plural of "anecdote" is not "data". I don't care if some cleric somewhere disagreed with something a scientist said. I'm also only partly interested in developments (e.g. cdesign proponentsists) that are largely confined to one country. (Don't get me wrong, such developments are important, but do nothing to prove or disprove a general statement.)
If you truly claim to be pro-science, you should demand nothing less than a systematic study of available evidence to see if religion in general is opposed to science in general. You could, perhaps, start by reading the book mentioned in TFA.
The inconvenient thing about all this is that no matter what your preconceived biasses are, reality tends not to support them. Do you think there's no conflict between science and religion? Sorry, you're wrong. Do you think that there is an inherent conflict between science and religion? You're wrong about that, too.
It's seductive, I know, but if it's a choice between a simplistic fantasy and a complex and interesting reality, I'll take reality.
I would normally agree with you, but in this case, the GP has it right. Religion is indeed used to oppose science by those who understand neither their own religion nor science.
Yes, it's a minority of religions. Of course, we all know it's a relatively recent phenomenon. Obviously, it hardly rates as a serious issue in most places outside the United States, and even then, it's not as widespread as Fox News would have you believe. But it's also undeniable that it happens.
Denial of the holy spirit is the one unforgivable sin.
Congratulations, you just failed fifth grade reading comprehension.
According to the source material that you're thinking of, the one unforgivable sin is "blasphemy against the Holy Spirit", and in particular, accusing the Holy Spirit of doing evil. I don't know what current thinking is on this, but it seems like a pretty difficult sin to commit. If you don't believe in the Holy Spirit, then accusing the Holy Spirit does evil is hard to do with a straight face.
Any criminal justice system whose purpose is that someone "gets his" is not a justice system, it's a revenge system.
I don't shed a tear for him, but I do shed a tear for any nation or people who value vengeance over justice. I don't shed a tear, but do feel intense disgust, at those supposed small-government advocates who believe that elected officials have some business making decisions on who lives and who dies. I will allow myself a small sniffle for all of those tax dollars which were wasted on killing people when locking them up and throwing away the key costs an order of magnitude less.
The good news is that it will only take one example of an executed person being exonerated in a court of law for capital punishment to end in your country.
I heard what you were saying! You know nothing of my work! You mean my whole fallacy is wrong. How you got to teach a course in anything is totally amazing!
Oh, please. Get over this nonsensical idea that there is such a thing as "the Bible's take" on any subject. Romans, Deuteronomy and Leviticus were written by different people with different agendas at different times to different audiences in different contexts.
Even most mainstream Christian scholars will tell you that.
Huh? Surely the question of how best to translate an ancient Hebrew text into modern English does not depend on what faith or lack thereof you subscribe to or don't as you so choose. Furthermore, an "apologist", as any classicist will tell you, is anyone who defends a position by the systematic use of reason.
Yeah, I can tell.
If safety is what's important, consider this: When's the last time that there has been a fatality involving a Soyuz/R7?
Nah, I'm just someone who knows enough about climate science not to be affected by the Dunning-Kruger effect.
We are not significantly altering our environment. There's pretty much the same amount or land sea and air, the temperatures are pretty much the same, volcanic and seismic activity happens at pretty stable rate, we're just as likely to get hit by a comet.
First off, temperatures are not pretty much the same. Where have you been?
Secondly, as one counter-example, there's some evidence that cities are more like to be badly flooded than they once were because of our fetish for paving. Water soaks through soil, but apparently not through bitumen and concrete, so heavy rains tend to mean that water disappears only as fast as our human-made drainage systems can cope, which is often not as fast as a patch of grassland.
Not that a heavy rain is likely to be what finishes us off, of course, but this is just an illustration.
Huge swaths of species went extinct long before man even came along, and so it seems pretty clear that it's part of the natural order. So are we now supposed to completely stop that natural process out of some sense of guilt (because we have arrogantly decided that we're not part of the natural order)?
The thing about extinction events is that species often go extinct together. The biosphere is so interconnected that the extinction of one species may trigger a huge cascade of other extinctions. Given the number of species on the planet and the complex net of dependencies and interactions between them, it's often not obvious what those trigger species are until it's too late.
You're right that we are indeed part of the natural order. There is nothing about h. sapiens that's special, and that's precisely the problem: if we accidentally kill off a trigger species that eventually results in our extinction, Mother Nature won't give a damn.
The difficult bit about C++ EH isn't altering the program counter and stack pointer, it's calling the destructors on all of the stack-allocated objects. It can be done, but it's hard to do it in a way that doesn't hurt the performance of code that never calls an exception.
Oh, and you also need a smarter linker than you do for C because of template instantiation and the one definition rule, but GCC already has that.
That's not true. GCC is using manual memory management for some data structures and GC for others. This makes sense considering the design requirements for GCC. Most data structures in a compiler don't have complex memory lifetimes. For example, the data object associated with a procedure/function is created when it's parsed and never really "goes away" after that, so there's no advantage for using automated memory management for them.
However, code transformation passes tend to manipulate lots of small objects with difficult to follow patterns of sharing. Sprinkling code which is meant to be doing optimisation with stuff to keep track of which objects are garbage would cause extreme bloat and make maintaining the code ten times harder than it needs to be. GC is a clear win there.
Remember, GCC used to use the Boehm collector, but the developers found managing everything with it to be too heavy-weight for their purposes. The community is extremely fortunate that the developers of one our most mission-critical pieces of software have sound judgement and good taste.
First off, as previously noted, STL algorithms are designed so that they inline aggressively. When you call g_list_sort_with_data, it calls your GCompareDataFunc every time it needs a comparison. But when you call std::sort, it inlines that comparison function. If the comparison function is a couple of instructions, you save big on function call overhead.
Similarly, data structures are also inlined. A GList is, physically, a list of pointers to payload data. An STL list, however, is a list of physical data. So if your GList stores doubles, you waste memory (a pointer per list cell plus probably extra malloc overhead to store each item), and time spent pointer chasing.
Secondly, the STL is far more type-safe than glib. You (mostly) can't accidentally store a struct in a list of integers.
Thirdly, glib is verbose compared to the STL. Compare g_array_index(a, i) with a[i]. Yes, using a decent editor with name completion doesn't make it necessarily any harder to write, but that's not the point.
Finally, the STL is exception safe and, if your OS allows it, thread cancellation safe. But, of course, C doesn't have exceptions. It has return codes that everyone forgets to check.
Good luck implementing exception handling.
That's only half true. Nobody cares about OOP in the Alan Kay sense; if we really need that, we use futures, iterators, threads, MPI or whatever is most appropriate.
But objects in C++ are ubiquitous because they are its module system, and it's a module system that gives you modules that are instantiable and inheritable. C99, by contrast, doesn't have a module system.
It's only complicated because writing conforming STL containers requires you to understand bits of the STL that most users don't need to understand. But it's not overly complicated at all. On the contrary, it's a perfectly respectable data structure which satisfies mostly the same concepts as std::set (the iterator invalidation rules are different), only with a very different (memory and time) performance profile. If that's the performance profile you need, that's what you should use.
It's something of a C++ rite of passage to implement a Simple Associative Container interface on top of std::vector. As a disclaimer, though, Associative Container has complexity guarantees which sorted vectors don't support, which is why they're not in Boost.
I believe the term you're looking for is "cargo cult programming".
Quite. Indeed, getting back to the topic at hand, people seem to have forgotten (or perhaps never realised) that GCC already uses garbage collection. Arguably, GCC hasn't been written in C for a while now.
Not really. There is nothing in the back end of a retargetable C++ compiler which needs rewriting for C++0x.
Indeed, there are very few bits of C++ which require back end code that's different from that which is required for a C compiler, assuming that the back end is bug-free. If you compile vtables and run-time type information down to C data structures and do name mangling in the front end (all trivial), then probably the only thing that makes a C++ compiler back end different from a C compiler back end is exception handling. This is precisely one of the features of C++ that I, were I a GCC developer, wouldn't want to do without.
For completeness, I should point out that there is one complication: Different C++ front ends may produce new or sufficiently different code sequences such that existing back ends may not optimise them as well as they should. So while a change of C++ front end may not require changes to the back end for correctness, it may require them for performance.
And there is. A bunch of stories divorced from their historical context and without any stories which may disprove the thesis is useless.
As an example of how historical context might be relevant: Consider times and places where church and state are not cleanly separated, and some cleric opposes science. How would you tell if the cleric is acting as a theologian or acting as a politician? The distinction is important, because your claim is not that many religious leaders have historically opposed science, it's that there is an inherent conflict between the two.
Consider the "religious right" of the USA. Fifty years ago, it essentially didn't exist. Indeed, evangelical denominations such as the Southern Baptist Convention shunned participation in politics until the fundamentalist takeover of the 1970s, and the exploitation of it by the Neoconservatives of the Republican Party. Is this best interpreted as an example of a conflict between science and religion, or a cynical power grab by a bunch of political psychopaths?
Most likely, it's both and neither, but much more complex than either simplistic conclusion. But this is exactly the kind of careful analysis I would expect before I'd agree that there is some "inherent" conflict between science and religion.
This, incidentally, is why I'm not a sociologist. It's too hard.
Once again, though, mere belief in a supernatural entity doesn't seem like the right place to draw the line. Martin Gardner (may His Noodly Appendage give his soul rest) was a "philosophical theist" according to his own description, and yet nobody would seriously question his pro-science stance and impeccable skeptical credentials.
Ah, now, see, you started with "religion" and have now shifted the goalposts to "inerrant revelation". Duh, of course purportedly inerrant revelation is in conflict with skeptical investigation.
As opposed to narrowing the word "religion" until it resembles a tiny minority of all religions in the world. See, you seem to be defining all non-literalist religion (i.e. any one which doesn't claim, or disclaims, "inerrant" or "literal interpretation only" status for its sacred texts) as "not a religion". And that's not even getting started on non-theistic or non-creedal religions.
Even showing "large numbers of members" (which is easy do to, I'll grant you) does not make the case that the conflict is "inherent". Large numbers of people in the US believe that most educated Europeans believed the world was flat in 1492, despite overwhelming evidence to the contrary. This does not imply that there is an inherent conflict between the US education system and historical fact.
(OK, it might suggest a link, but you'd have to get a lot more evidence to prove it.)
Sorry, you're going to have to be more specific than that. Precisely how is it a "no true Scotsman" argument? Or did you mean that it isn't a "no true Scotsman" argument, but just vaguely sounds like one to you?
Nonsense. Even the claim that "religion believes that the universe is ultimately mutable by an all-powerful god", even if you just stick to the major world religions, is trivially false. Just look at Philosophical Taoism or the non-theistic forms of Buddhism. Or did you think they're not true religions...?
Then you've got no business telling people what it does or doesn't say. There's plenty of stuff in the Bible to criticise without making it up.
That explains a lot.
Actually, I failed slashdot-five-digit-uid editing. I did spot it just after I hit submit, and was hoping nobody would notice.
True enough.
Religion has been deliberately opposing science since the first doctors were burned as witches. Want a list?
No, I don't want a list, and neither should you. The plural of "anecdote" is not "data". I don't care if some cleric somewhere disagreed with something a scientist said. I'm also only partly interested in developments (e.g. cdesign proponentsists) that are largely confined to one country. (Don't get me wrong, such developments are important, but do nothing to prove or disprove a general statement.)
If you truly claim to be pro-science, you should demand nothing less than a systematic study of available evidence to see if religion in general is opposed to science in general. You could, perhaps, start by reading the book mentioned in TFA.
The inconvenient thing about all this is that no matter what your preconceived biasses are, reality tends not to support them. Do you think there's no conflict between science and religion? Sorry, you're wrong. Do you think that there is an inherent conflict between science and religion? You're wrong about that, too.
It's seductive, I know, but if it's a choice between a simplistic fantasy and a complex and interesting reality, I'll take reality.
I would normally agree with you, but in this case, the GP has it right. Religion is indeed used to oppose science by those who understand neither their own religion nor science.
Yes, it's a minority of religions. Of course, we all know it's a relatively recent phenomenon. Obviously, it hardly rates as a serious issue in most places outside the United States, and even then, it's not as widespread as Fox News would have you believe. But it's also undeniable that it happens.
Congratulations, you just failed fifth grade reading comprehension.
According to the source material that you're thinking of, the one unforgivable sin is "blasphemy against the Holy Spirit", and in particular, accusing the Holy Spirit of doing evil. I don't know what current thinking is on this, but it seems like a pretty difficult sin to commit. If you don't believe in the Holy Spirit, then accusing the Holy Spirit does evil is hard to do with a straight face.