On Mon, Sep 25, 2006 at 03:27:32PM +0200, Henning Thielemann wrote: Hi Henning,
> Actually, laziness allows me to formulate algorithms that look more like > the specification of the problem than the solution. E.g., I can formulate > the solution of a differential equation in terms of a power series or time > series in that way. However I have to put some effort into formulating it > in a way that works. E.g. I'm only able to solve such equations if it is > possible to express the second derivative in terms of the first and the > zeroth one. Computer algebra systems are essentially better here. In my experience, most people use CAS interactively: they encounter an integral or a PDE that's difficult to solve, so they type it into Mathematica (which frequently cannot solve it either, then you go crazy, numerical, or both ;-). It is more like a sophisticated symbolic calculator with a lot of patterns built in for manipulating expressions. Mathematica has features of a programming language, but most people I know are not using those when manipulating formulas, and conversely, when _programming_ in Mathematica (ie writing code and then executing it do so something repetitive) they rarely do anything symbolic. CAS are great for specific purposes, especially for replacing those tomes which have solutions of equations/ODEs/PDEs/integrals etc in them, and some CAS have Algol-style flow control and numerical methods which you can use for solving numerical problems, but the two are almost never mixed. Best, Tamas _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe