Feeds

Multi-threaded development joins Gates as yesterday's man

Knuth and Bray call time

Securing Web Applications Made Simple and Scalable

“To me, it looks more or less like the hardware designers have run out of ideas, and that they’re trying to pass the blame for the future demise of Moore’s Law to the software writers by giving us machines that work faster only on a few key benchmarks! I won’t be surprised at all if the whole multi threading idea turns out to be a flop, worse than the ‘Titanium’ approach that was supposed to be so terrific - until it turned out that the wished-for compilers were basically impossible to write," Knuth said.

Knuth - the author of the seminal programmers' manual The Art of Computer Programming and a Turing Award winner - has to be taken seriously on this. And he is not alone. Sun Microsystems' director of web technologies Tim Bray, one of the team that created XML, has also criticized multi threading. Bray said that, while he once favored the approach, he had now turned away from it. Elsewhere the criticism of multi threading is even more direct.

There appear to be two schools of thought emerging on how future software developers should cope with the challenge of programming multiple processor systems.

One school says the complexities should be hidden by the tools leaving programmers to concentrate on their applications. Compilers and operating systems should take care of issues such as synchronization and load balancing. This is in essence the aim of multi-threading strategies such as Intel's TBB and similar approaches by AMD.

The other school argues that programmers should be educated in functional languages such as Lisp and Erlang. Jack Dennis, professor of computer science and engineering at MIT, believes a combination of education in functional languages and exposure to the problems of synchronization could help. He also argues that functional languages effectively avoid some of the problems of programming multiple processor systems.

Devil in the details

Like the two lead characters in Robert Pirsig's Zen and the Art of Motor Cycle Maintenance one school sees the underlying complexity of the machine as something to be avoided at all costs and the other relishes the intricacies of its internal workings.

Clearly there's a lot more work left to do. Both from a practical and a philosophical perspective, as the industry must agree not just to take action on programming for parallel systems, but also decide what is the best approach to take. And achieving lasting consensus could be the hardest part of the puzzle. As we are discovering on multi threading, what was once considered "right" can fall out of favor and be branded as "wrong".®

Bridging the IT gap between rising business demands and ageing tools

More from The Register

next story
NO MORE ALL CAPS and other pleasures of Visual Studio 14
Unpicking a packed preview that breaks down ASP.NET
Cheer up, Nokia fans. It can start making mobes again in 18 months
The real winner of the Nokia sale is *drumroll* ... Nokia
DARPA-derived secure microkernel goes open source tomorrow
Hacker-repelling, drone-protecting code will soon be yours to tweak as you see fit
Put down that Oracle database patch: It could cost $23,000 per CPU
On-by-default INMEMORY tech a boon for developers ... as long as they can afford it
Google shows off new Chrome OS look
Athena springs full-grown from Chromium project's head
Apple: We'll unleash OS X Yosemite beta on the MASSES on 24 July
Starting today, regular fanbois will be guinea pigs, it tells Reg
HIDDEN packet sniffer spy tech in MILLIONS of iPhones, iPads – expert
Don't panic though – Apple's backdoor is not wide open to all, guru tells us
prev story

Whitepapers

Designing a Defense for Mobile Applications
Learn about the various considerations for defending mobile applications - from the application architecture itself to the myriad testing technologies.
Implementing global e-invoicing with guaranteed legal certainty
Explaining the role local tax compliance plays in successful supply chain management and e-business and how leading global brands are addressing this.
Top 8 considerations to enable and simplify mobility
In this whitepaper learn how to successfully add mobile capabilities simply and cost effectively.
Seven Steps to Software Security
Seven practical steps you can begin to take today to secure your applications and prevent the damages a successful cyber-attack can cause.
Boost IT visibility and business value
How building a great service catalog relieves pressure points and demonstrates the value of IT service management.