From: "M. Edward (Ed) Borasky" Date: 2006-09-04T04:49:27+09:00 Subject: Re: [OT] good article on threads David Vallner wrote: > Michal Suchanek wrote: >> "To offer another analogy, a folk definition of insanity is to do the >> same thing over and over again and expect the results to be different. >> By this definition, we in fact require that programmers of >> multithreaded systems be insane. Were they sane, they could not >> understand their programs." >> > > As Rick DeNatale pointed out, the folk analogy is nonsense. The real > world just isn't deterministic. But the point is valid, short of space > rays ;), computers are deterministic systems and a using a > nondeterministic computation model in programming means you're giving > this advantage up. > > David Vallner Uh ... I beg to differ: 1. As Dijkstra pointed out decades ago, as soon as you have I/O interrupts you have non-deterministic behavior.The operating system has the right, but not necessarily the obligation, to try to make the resulting behavior as deterministic as possible, whatever *that* means. :) 2. I'm not sure about the usefulness of truly nondeterministic models, but using *stochastic* models for large "deterministic" systems is a *huge* advantage in many cases. It represents the ability to say something useful about a system's properties rather than being able to say things like, "if every atom in the universe was a teraflop supercomputer, I could fully analyze the behavior of a system 0.000000001 times the size of this one." :)