We are supposed to make the presumption that even when the burden is high, all suspected criminals are entitled to a fair trial before they are punished by the government for their alleged crimes. But there have always been two exceptions to that presumption that most people find reasonable. The first is that law enforcement may use force, including lethal force, to interrupt a crime in process. We assume the burden of proof is relaxed in that environment, because its literally impossible to adjudicate a fair trial in the middle of a crime. And the second are acts of war, where the government can act against declared enemies of the country. We can't hold a trial for each individual enemy soldier we come across before shooting at them. The question is whether al-Qaeda is a criminal organization or a political one that can be legitimately considered a national enemy.
Not quite. No police shooting is a punishment for an alleged crime, it is a right to self defense (and by extension, the defense of innocents) being exercised. As such, it is only legal if there is a current credible threat (for example, the suspect draws a gun and moves to take aim at someone) If the suspect survives, they will still face a trial for the original charges (because the shooting was not punishment for the alleged crime).
Incitement of future violence or even planning future violence don't meet the immediacy necessary to use lethal force in self defense. In those cases, arrest is permitted with a speedy public trial to follow.
If we want to claim that the activities constitute joining a foreign military (and they might), due process still requires an appropriate hearing to determine that he has surrendered his citizenship.
Re:Slashdot itself uses Perl
on
Perl Is Undead
·
· Score: 1
Well, there we have it! Netcraft confirms blah blah blah.
But memset is not pure in the general case where it might write to memory referenced by a global pointer or a pointer passed in to the calling function.
But it likely is inline. Especially since the code to implement it is smaller than the code to set up a call.
I know gcc has a great many declarable attributes for functions these days. Perhaps one of those was (mis-)used.
Here's the thing, I have already purchased bandwidth and the sites I want to contact have as well. In order for it to be fair, I and they should actually get what was paid for,
I'm not absolutely sure how it is coming to it's conclusions, but I *THINK* rather than being special treatment, it sees that memset itself only affects the allocated memory passed to it in pointers and it knows that that memory in this case is on the stack and will be freed when the calling function returns, so it concludes there are no side-effects and elides the call. In theory, casting the pointer to volatile should force the compiler to leave the call in.
Yes. The double assignment being undefined is proper because the statements are ambiguous at the semantic level. I would say the best policy is to stay far away from it. It should be considered at least a warning condition. Eliding the memset is inexcusable in a sane spec because there was no ambiguity.
There are a few ways to trick the compiler into doing the right thing, but it's a shame it has to be done that way. But given the importance, there should at least be a really_memset or a securely_memset available in hopes of giving the programmer some chance to get the proper behavior.
I do support the cops being recorded when on duty. I also support those recordings only being viewed when there is a citizen complaint or when facts surrounding an arrest are contested in court, and then only for the time period involved.
They should not be actively monitored by big brother.
The EFF has more than a few lawyers. I would like to see their statement on legality, but I doubt they would trick the masses into a liability that large.
The particular issue had nothing to do with undefined behavior. Check the issue again. The compiler elided a well defined explicit and non-conditional call to memset before returning from the function. It is no longer executing the program as written.
A sane spec would allow it to issue a warning that the code appears to have no effect (it would be wrong, but at least no harm done). So long as an override is made available, it could fail the compilation if -Werror is set.
One might expect a high level language, especially a functional language, to take liberties like that, but C is a mid-level imperative language (or at least it's supposed to be). Of course a high level and/or functional language would never allow reading uninitialized memory so it wouldn't be a problem.
The case of i = i++ is somewhat ambiguous at the syntactic/semantic level. You are effectively asking it to alter the value of i twice. since the ++ postfix implies an immediate increment after access, arguably it is always ineffective (fetch, immediate increment, store). However, (and also arguably) It could be interpreted as fetch, store, increment before the next fetch which would be quite a mess in a more complex case like i = 25 + i++ where potentially the 25 could disappear.
To contrast both, a case where optimizing is always permissible (except in the case of volatile). i = ++i+j. In that case, we end up with fetch i, increment the register, store back, add immediate 25, store to i. The store back instruction can be elided every time and the final store can be delayed if further operations on i will take place.
Patent law is filled with quantitative judgments. Degree of novelty for example. What skill level may it require of one who would understand it. Etc.. The quantitative judgement in this case is more inventive than an equation. More inventive than a stick you found.
You can't just find the math and patent it. You must do something unique with that math to reduce it to practice for it to be patentable. Simply coding it up in a symbolic form and running it on a computer isn't enough.
Beyond that, there are many very old examples of compression pre-dating computers. Abbreviations, shorthand, contractions, short order, numbered dishes in a Chinese restaurant, etc.
Write it up and submit to a journal of mathematics. Perhaps it will win a prize.
But the reason generally understood is that one doen't invent a mathematical relation, one only discovers it. It is an intrinsic property of reality. It would be like patenting gravity.
Lets say me and my friends decide to harass you, so I grab your iPhone and spike it on the pavement. You threaten to sue so I peel off a couple 20s and a 10, stuff it in your shirt pocket and say get lost. Do you feel compensated or insulted further?
You mean the negligent absentee owners who slept at the switch while all this happened under their noses? They SHOULD be hurt. Let that happen a few times and perhaps stockholders will wake up and start providing a moral compass to corporations again.
We are supposed to make the presumption that even when the burden is high, all suspected criminals are entitled to a fair trial before they are punished by the government for their alleged crimes. But there have always been two exceptions to that presumption that most people find reasonable. The first is that law enforcement may use force, including lethal force, to interrupt a crime in process. We assume the burden of proof is relaxed in that environment, because its literally impossible to adjudicate a fair trial in the middle of a crime. And the second are acts of war, where the government can act against declared enemies of the country. We can't hold a trial for each individual enemy soldier we come across before shooting at them. The question is whether al-Qaeda is a criminal organization or a political one that can be legitimately considered a national enemy.
Not quite. No police shooting is a punishment for an alleged crime, it is a right to self defense (and by extension, the defense of innocents) being exercised. As such, it is only legal if there is a current credible threat (for example, the suspect draws a gun and moves to take aim at someone) If the suspect survives, they will still face a trial for the original charges (because the shooting was not punishment for the alleged crime).
Incitement of future violence or even planning future violence don't meet the immediacy necessary to use lethal force in self defense. In those cases, arrest is permitted with a speedy public trial to follow.
If we want to claim that the activities constitute joining a foreign military (and they might), due process still requires an appropriate hearing to determine that he has surrendered his citizenship.
Well, there we have it! Netcraft confirms blah blah blah.
But memset is not pure in the general case where it might write to memory referenced by a global pointer or a pointer passed in to the calling function.
But it likely is inline. Especially since the code to implement it is smaller than the code to set up a call.
I know gcc has a great many declarable attributes for functions these days. Perhaps one of those was (mis-)used.
If it was really about the cost of peering (as opposed to rent seeking), Comcast could have accepted Netflix offer of a cache server.
Sender pays has never been how it works. Netflix paid Level3 for their bandwidth and Comcast's customers paid Comcast.
When you and someone in Japan communicate over the net, do you expect a bill from NTT?
The sad part is with all of those codes they shat out, they're still missing venomous sea creatures.
We're going to need more lasers.
Here's the thing, I have already purchased bandwidth and the sites I want to contact have as well. In order for it to be fair, I and they should actually get what was paid for,
I'm not absolutely sure how it is coming to it's conclusions, but I *THINK* rather than being special treatment, it sees that memset itself only affects the allocated memory passed to it in pointers and it knows that that memory in this case is on the stack and will be freed when the calling function returns, so it concludes there are no side-effects and elides the call. In theory, casting the pointer to volatile should force the compiler to leave the call in.
Yes. The double assignment being undefined is proper because the statements are ambiguous at the semantic level. I would say the best policy is to stay far away from it. It should be considered at least a warning condition. Eliding the memset is inexcusable in a sane spec because there was no ambiguity.
There are a few ways to trick the compiler into doing the right thing, but it's a shame it has to be done that way. But given the importance, there should at least be a really_memset or a securely_memset available in hopes of giving the programmer some chance to get the proper behavior.
I do support the cops being recorded when on duty. I also support those recordings only being viewed when there is a citizen complaint or when facts surrounding an arrest are contested in court, and then only for the time period involved.
They should not be actively monitored by big brother.
Would I trust the state to legislate against the state monitoring and prying? Absolutely not.
Would I trust the state to ensure that it has a monopoly on the monitoring and prying? Sure.
The EFF has more than a few lawyers. I would like to see their statement on legality, but I doubt they would trick the masses into a liability that large.
Actually, it *IS* their job.
Meanwhile, this is the Department of Justice. It is most CERTAINLY their job to obey the Constitution and such basics as not commit or suborn perjury.
Perhaps if you ask right, such as "What are the coordinates of cell towers we shouldn't destroy?"
The particular issue had nothing to do with undefined behavior. Check the issue again. The compiler elided a well defined explicit and non-conditional call to memset before returning from the function. It is no longer executing the program as written.
A sane spec would allow it to issue a warning that the code appears to have no effect (it would be wrong, but at least no harm done). So long as an override is made available, it could fail the compilation if -Werror is set.
One might expect a high level language, especially a functional language, to take liberties like that, but C is a mid-level imperative language (or at least it's supposed to be). Of course a high level and/or functional language would never allow reading uninitialized memory so it wouldn't be a problem.
The case of i = i++ is somewhat ambiguous at the syntactic/semantic level. You are effectively asking it to alter the value of i twice. since the ++ postfix implies an immediate increment after access, arguably it is always ineffective (fetch, immediate increment, store). However, (and also arguably) It could be interpreted as fetch, store, increment before the next fetch which would be quite a mess in a more complex case like i = 25 + i++ where potentially the 25 could disappear.
To contrast both, a case where optimizing is always permissible (except in the case of volatile). i = ++i+j. In that case, we end up with fetch i, increment the register, store back, add immediate 25, store to i. The store back instruction can be elided every time and the final store can be delayed if further operations on i will take place.
If you don't understand that it is the standard itself where the astonishment occurs, you are over your head in this discussion.
It would have to be a truly AMAZING way of reducing the algorithm to practice. Consider that the FFT and DCT were not patentable.
Consider the whole GIF fiasco when USPTO screwed up and allowed a very minor improvement to the existing LZ78 compression to be patented.
Patent law is filled with quantitative judgments. Degree of novelty for example. What skill level may it require of one who would understand it. Etc.. The quantitative judgement in this case is more inventive than an equation. More inventive than a stick you found.
You can't just find the math and patent it. You must do something unique with that math to reduce it to practice for it to be patentable. Simply coding it up in a symbolic form and running it on a computer isn't enough.
Beyond that, there are many very old examples of compression pre-dating computers. Abbreviations, shorthand, contractions, short order, numbered dishes in a Chinese restaurant, etc.
Arguably, it's a bug in the standard. It defies the principle of least astonishment for a procedural language.
Yes, but you are combining bits and pieces that don't combine in nature.
It's the difference between knocking fruit down with a stick you found and building a harvester.
Write it up and submit to a journal of mathematics. Perhaps it will win a prize.
But the reason generally understood is that one doen't invent a mathematical relation, one only discovers it. It is an intrinsic property of reality. It would be like patenting gravity.
Lets say me and my friends decide to harass you, so I grab your iPhone and spike it on the pavement. You threaten to sue so I peel off a couple 20s and a 10, stuff it in your shirt pocket and say get lost. Do you feel compensated or insulted further?
What you suggest would hurt the stock holders
You mean the negligent absentee owners who slept at the switch while all this happened under their noses? They SHOULD be hurt. Let that happen a few times and perhaps stockholders will wake up and start providing a moral compass to corporations again.
This is slightly worse. You can get a plain text list of users and passwords and you don't even have to bother cracking the hash.