Follow Slashdot stories on Twitter

 



Forgot your password?
typodupeerror
×

Comment Re:coding standards (Score 4, Informative) 664

This should be rule number one for this type of application.

Perhaps it should be rule number one, but actually it's Rule 16.2 of MISRA-C:2004 (Motor Industry Software Reliability Association, Guidelines for the use of the C language in critical systems):

Functions shall not call themselves, either directly or indirectly.

The rule actually appeared first in MISRA-C:1998. Each rule is accompanied by a detailed rationale that I will not reproduce verbatim here as the standard is not open; one must pay for the privilege. The rationale for 16.2 is that recursion may cause stack overflows. I only cite the rule itself because it appears in public testimony and also on the (first) page linked by this story ...... which you obviously did not read.

Because MISRA also disallows constructs such as function call indirection, self modifying code, etc. a compiler is entirely capable of detecting recursion and reporting the violation as an error. MISRA compliant compilers do exactly that.

Yes Virginia, the largest auto manufacturer on Earth ignores the very thing that was designed to prevent simple, common, easily predictable failures such as stack overflow despite the fact that the cost of compliance is much, much smaller than a rounding error for an outfit like Toyota.

Also, despite the fact that Industry dutifully identified this specific problem in a published standard at least 16 years ago, compliance is apparently not yet a requirement by government regulators. I suspect they're too busy investigating child seat manufacturers or Telsa batteries or whatever other politically high profile crisis that giant, engineer-free gaggle of NTSB lawyers fill their bankers hours with.

Submission + - Plan 9 from Bell Labs Operating System now GPL2 1

TopSpin writes: Alcatel-Lucent has authorized The University of California, Berkeley to `release all Plan 9 software previously governed by the Lucent Public License, Version 1.02 under the GNU General Public License, Version 2.' Plan 9 was developed primarily for research purposes as the successor to Unix by the Computing Sciences Research Center at Bell Labs between the mid-1980s and 2002. Plan 9 has subsequently emerged as Inferno, a commercially supported derivative, and ports to various platforms including a recent port to the Raspberry Pi. In Plan 9, all system interfaces, including those required for networking and the user interface, are represented through the file system rather than specialized interfaces. The system provides a generic protocol, 9P, to perform all communication with the system, among processes and with network resources. Applications compose resources using union file systems to form isolated namespaces.

Comment Re:Just be honest - it's not for *US* (Score 1) 2219

but I'm surprised so many attribute that to malice.

My accusation was limited to a lack of understanding; never attribute to malice that which is adequately explained by ... a lack of understanding, as they almost say.

The immutability of reader comments has always been a prized feature

Amen. Accountability. It's always been obvious to me why simply revising comments isn't tolerable and I'm glad that view predominates.

And AC isn't a counterpoint to accountability either, for whomever might want to throw that one back at me; AC elevates attributed comments, on several levels.

Comment Re:Just be honest - it's not for *US* (Score 4, Insightful) 2219

I'm pretty sure contemporary ideas about UX design are inappropriate for Slashdot. The one or two sentences that Twitter/Facebook/WhatsApp accommodate won't work here. This place indulges people that like to write, and people that don't mind lengthy posts.

The beta site shows a serious indifference to that; the amount of wasted space is just amazing. Fully 45% of the comments view is just empty, half of it gone to the infinitely long side bar that Beta fails to wrap into. No one that understands what this site is for could possibly have made that basic mistake for as long as Beta has been in the works.

Bootstrap et al. don't deal with "long form" threaded forums, so that design mentality won't work.

Here is a possibly novel idea that will actually be appreciated by at least this contributor, and probably most others; comment editing with revision control (a la Wikipedia.) It has to be revision controlled or the trolls will abuse editing. Allow readers to punish such trolls with moderation while the rest of us get the benefit of correcting minor mistakes.

There. That wasn't hard. A real improvement that caters to actual contributors, as opposed to hypothetical users that want to scribble a grammatically challenged half sentence 20 times an hour and don't read.

Anyhow, thanks for the step backwards on this and your participation in the conversation. You all could have gone bull-headed and made this situation even worse. So good on your for that.

Comment Re: Classic Slashdot (Score 4, Insightful) 463

None at all.

And yes, beta has serious problems. Regressing to having to bang on the "Load More..." button instead of "Load All Comments" while not logged in is one glaring example. The fact that comments don't flow around the end the right side ad bar is another.

This is not Twitter. People write lengthy comments here; please don't piss away space with huge margins and poor layout.

Comment Whitehouse petition (Score 5, Informative) 535

A petition of the White House to `Restore Net Neutrality By Directing the FCC to Classify Internet Providers as "Common Carriers" just attained the 100k signatures required for a response.

I'm sure a number of you would have liked to have known about that and signed it at the time... but the story submission was declined. Guess there were too many terribly important climate change stories or something.

Submission + - Restore Net Neutrality petition (whitehouse.gov) 1

TopSpin writes: A petition of the White House to "direct the FCC to Classify Internet Providers as 'Common Carriers'" and thereby enable FCC Net Neutrality rules to be created and enforced needs about 24,000 additional signatures to reach the threshold of 100,000. Should the goal be reached the Administration will issue an official statement on the matter. The petition deadline is February 14.

Submission + - T-Mobile Writes The Best Press Release You'll Ever See From A Phone Company (techdirt.com)

Reverand Dave writes: At the beginning of January, AT&T directly began offering T-Mobile users $450 to switch. Apparently the company has realized that if it can't buy T-Mobile directly, it might as well just buy its customers. Now, most companies when targeted by a larger competitor in this manner might sort through a variety of responses, and I'm sure at some point, perhaps late at night under the influence of an extra alcoholic beverage or two, someone might suggest the following. But to actually go ahead with it... well... that's a bit bold. In short, T-Mobile flips the offer on its head, noting that since it only applies to T-Mobile users, AT&T users now have a "risk free" way to test out T-Mobile — and they throw in hilarious fake quotes from AT&T Mobility's CEO, Ralph de la Vega, mock the "death star" and a variety of other things you don't normally see in a telco press release — such as comparing de la Vega to Darth Vader.

Comment Re:If MS wrote dart for IE instead (Score 5, Informative) 161

Is Dart an open language spec?

The language spec is CCA 3 and ECMA standards tracked. The source code is BSD.

Javascript was not an immaculate conception of Berners-Lee, Torvalds and Stallman. It was a product of Mozilla, blessed by nobody and foisted on the world via the defacto browser of the day. It is also more than flawed enough to justify some competition.

The <script> tag has a "language" attribute for a reason, the curmudgeons of Slashdot notwithstanding.

Comment Re:oracle and aquisitions (Score 1) 223

that piece of software/tech tends to perish

Except when it doesn't. VirtualBox hasn't perished.

A colleague of mine speculated that perhaps Oracle had forgotten about VirtualBox and thus it has been spared the obligatory ruining. Perhaps there is a gang of hard core emulator developers quietly slipping in and out of the building each day, carefully avoiding notice.

Netbeans does actually suck less than Eclipse. That's a low bar, to be sure, but it appears to be acquiring more users than it is repulsing, so there's another counterpoint.

Comment Re:Wouldn't Java be a counterexample? (Score 5, Interesting) 394

wouldn't Java be a example of the contrary to this?

Yes, but not the best one. The best would be Oracle's database. Despite the fact that Oracle Database Server is not the result of a 'community-based development model,' the product has a long, ugly history of vulnerabilities. For some reason it fails to be composed of 'low-defect code,' despite apparently having all the best financial incentives. The list of vulnerabilities is long and grows regularly.

The only reason Oracle Database Server has never been the victim of a SQL Slammer type exploit is that it is so expensive that most instances exist only well behind corporate and government firewalls that, if not well maintained, at least exist. Many SQL Server admins apparently don't believe in firewalls.

However, [Solaris] is more of Sun's creation than Oracle's.

Likewise with Java.

Comment Re:the most basic data structures (Score 1) 598

Point of order: 32-bit ARM code doesn't even have stack instructions

ARM's generalization of the classic PUSH and POP instructions has always been admirable (at least until they made THUMB which sadly does have these foul instructions,) but the real world uses STMDB (store multiple decrement before) and LDMIA (load multiple increment after) to implement stacks, which is exactly why these instructions exist. 32-bit ARM provides a stack pointer (R13 a.k.a SP as per ARM) and a return address (R14) register. This not merely software convention either; these registers are banked to allow distinct values for these specific registers across processor modes to accommodate the classic call stack in the face of exceptions.

32 bit ARM is every bit as "stack oriented" as anything that has explicit PUSH and POP instructions. There is no pretending otherwise.

Modern ISAs provide large numbers of registers specifically to avoid stack usage

Modern ISAs? Providing a large register file to avoid memory accesses goes back to Berkeley RISC-I (the inspiration for ARM, incidentally) at least. However, what you have then when executing real programs is merely a very limited stack inside the register file. From RISC I: A REDUCED INSTRUCTION SET VLSI COMPUTER:

Our approach is to break the set of window registers (r10 to r31) into three parts (Figure 7). Registers 26 through 31 (HIGH) contain parameters passed from “above” the current procedure; that is, the calling procedure. Registers 16 through 25 (LOCAL) are used for the local scalar storage exactly as described previously. Registers 10 through 15 (LOW) are used for local storage and for parameters passed to the procedure “below” the current procedure (the called procedure). On each procedure CALL a new set of registers, r10 to r31, is allocated; however, we want the LOW registers of the “caller” to become the HIGH registers of the “callee.” This is accomplished by having the hardware overlap the LOW registers of the calling frame with the HIGH registers of the called fmme: thus. without moving information, parameters in mgisters 10 through 15 appear in registers 25 through 31 in the called frame.

What we have here is a hardware accelerated stack based on a large banked register file. An optimization.

Stacks are a software things

If that's true it aligns pretty nicely with Genuinely Useful Ideas In Programming then, no?

And you go too far down that road, suddenly you're teaching FORTH.

Or the JVM instruction set, for something a tiny bit more relevant.

Slashdot Top Deals

He has not acquired a fortune; the fortune has acquired him. -- Bion

Working...