On Wednesday, February 6, 2013 1:51:10 AM UTC-5, Richard Fateman wrote: > On 2/3/2013 5:20 PM, John Doty wrote: > > .... > > You seem to think I haven't written Mathematica programs. > > Maybe looking at the appendix here would change your mind. > > Maybe not, though. > > http://www.cs.berkeley.edu/~fateman/papers/better-rules.pdf
All this demonstrates is that you don't understand how to use Mathematica. = All you know how to do is fight against it. You don't understand when to us= e rules versus when to use the various algebraic tools. Your code is pointl= ess: no trajectories calculated, no bridges designed, and it doesn't enable= anything that Mathematica can't already do.
> > Considered as software failures, both of these occurred in application = code and were not the result of programming language deficiencies. > > > > Was the code not written in a programming language? > > Even if it was written in assembler, that too is > > a programming language. I expect that the bug > > occurred because the programmer did not realize the > > semantics of the code.
In the Theravac case, the coders appeared not to understand the operation a= nd hazards of the radiation therapy machinery very well. In Ariane case, I = have heard that the coders concluded that overflow was impossible in the co= ntext of Ariane IV, but that analysis was not redone for Ariane V when the = software was reused. In any case, the fundamental failure in both cases was= in systems engineering, not code. You shouldn't place much blame on the sp= ark that sets you on fire when you walk around in clothes soaked with gasol= ine.
> > Not all bugs are of equal importance. An error of 5.5E-79 in a Bessel f= unction is very unlikely > > >to cause trouble in a practical application. > > > > One of the marvels of computing today is that it is possible to do so > > much in such a short time. > > One can execute billions of instructions a second. If only > > one in a million does the wrong thing, and is wrong only > > by a tiny percent, you can accumulate a whopping mistake > > in a second.
5.5E-79 is rather smaller than a tiny percent. The best physical measuremen= ts are good to a few parts in 10^16. Assuming teraflop arithmetic, adding n= umbers with errors of 5.5E-79, it'll take you about 4E45 times the age of t= he universe to have errors add up to 1E-16.
> I've been using Mathematica to do practical work since version 1, > > > and I've never encountered a bug in its numerics. > > I guess it is my turn to wonder if YOU know much about Mathematica.
The difference is that I *use* it. You *fight* it.
> > Crazy results from numerical codes are a normal occurrence, > > > I don't find Mathematica to be unusually hazardous here. > > I guess I disagree on this point.
But you don't actually use numerical codes. You don't design bridges, compu= te trajectories, or study turbulence. So your opinion is uninformed.
> >> This is pretty far afield from the original question which I > >> think was somehow...s Mathematica somehow Lisp-like.... should I learn= Lisp... >> > > I'm unusual in that I write practical engineering code in Scheme (a Lis= p dialect), > > along with code for both science and engineering in Mathematica. > > I think that is unusual, but I count it as a good thing.
Well, I'm not so sure that using Scheme is so good: it means that few poten= tial collaborators are willing to try to read my code. To the average engin= eer or scientist, Lisp screams "forget your application and pay attention t= o the cool computer science". Now, I actually know enough of that CS crap t= hat I can see past it to reality, but most don't. I primarily use Scheme to= access a collection of useful functions that are actually written in C, bu= t have Scheme (Guile) interfaces. I think it would be much better if those = interfaces were in a language friendlier to engineers, like Python. Scheme'= s fine for me, with my eccentric background, but not for most others.
> Though > Common Lisp (a Lisp dialect) is used in space computations -- > the Hubble telescope.
My old colleague Mark Johnston developed SPIKE for Hubble, but it has been = and is used for other missions as well. I was involved in getting the ASCA = and Chandra space observatories to adopt it for their operational planning.= The last time I talked to Mark (a long time ago), he seemed rather unhappy= with CL as an implementation language for a practical AI application. I do= n't think he'd choose CL again if he had to rewrite SPIKE.