Re: How to View Mathematica and Hardcopy Books

*To*: mathgroup at smc.vnet.net*Subject*: [mg62374] Re: How to View Mathematica and Hardcopy Books*From*: "Steven T. Hatton" <hattons at globalsymmetry.com>*Date*: Tue, 22 Nov 2005 04:42:21 -0500 (EST)*References*: <dls5ig$qn1$1@smc.vnet.net>*Sender*: owner-wri-mathgroup at wolfram.com

David Park wrote: [Note, I am experimenting with the SMTP feature, and may or may not be successful in sending this message to by David and the newsgroup.] > I would like add some of my own comments on two recent threads, namely on > viewing Mathematica in analogy to other programming languages For me that has been analogy and *contrast*. > and on the > competition between electronic books and hardcopy books. There is some copetition, but there are also areas where these media can complement oneanother. A very good example is The Mathematica Book. I have an older hardcopy version of The Mathematica Book which I use when I want to read a large sequential selection. I also have the electronic form which is part of Mathematica 5.2. I use that as a working reference. > I agree completely with the comments by Andrzej on the limits and even > dangers of analogy and the necessity of coming to grips with something new > in its own terms. Perhaps, but he did not address my situation. > There are various ways to view CAS's, and Mathematica in particular. Some > people view Mathematica as a 'souped up calculator'. This is especially > true in the educational establishment where they might actually be > thinking of making a transition from TI calculators, say, to Mathematica. > Their general view seems to be that they don't like it because they don't > think it gives the student understanding. By and large they are right - if > that is the way they are going to use Mathematica. (There are certainly > places where Mathematica as a 'souped up calculator' is just what is > needed, perhaps for data analysis in the lab, the hospital or in the > field.) For purposes of number crunching Mathematica is quite often the wrong tool for the job. If you are doing things which involve very intensive mumeric calculation which are likely to be repeated in form, you are probably much better off translating your work to something like C++, or FORTRAN. My understanding is that MathCode C++ can produce executables which run orders of magnitude faster than the Mathematica implementation of the same algorithm Another observation on using Mathematica as a calculator. It is often the case that Mathematica does not behave as the naive user might expect. It is useful to have some understanding of what goes on "under the hood" even when using Mathematica as an abstract calculator. > Users who work in the 'souped up calculator' mode are often very reluctant > to use outside packages or to write their own code. The fact is that for > almost any serious application one will have to add code to the basic > kernel commands to make any progress. It is not uncommon for me to hit snags when using packages. Packages can interact in ways which are unexpected, and hard to understand. Again, a solid understanding of the inner workings of Mathematica can be helpful here. > A second way to think of Mathematica is as a 'programming language'. At > least this goes beyond the 'souped up calculator' viewpoint. It is a > programming language, and in many ways a pretty neat one, but I don't > think that is its primary merit. That is really a question of what you mean by "merit". I find Mathematica very interesting as a programming language. To a large extent because it behaves differently from other programming languages. Also because of how much has been built upon what I believe to be a very simple foundation. Understanding how Mathematica works should probide deep insight into mathematics, as well as (artificial) intelligence. > People with a computer science background > can get a little frustrated with Mathematica because computer science > elegance is not its chief point and that is not what the customers are > looking for. Ironically, that has been one of my greatest frustrations with C++. As a computer scientist, my frustration comes from the failure to use the tools of computer science to describe how Mathematica works. > What I like about Mathematica is that it isn't really like > 'programming' at all. It is much more like 'doing mathematics'. I don't > care what's going on in the microprocessor. I'm paying my money so I don't > have to care about it. I want to get on with the math and science. To me, understanding how Mathematica works is an exercise in the science of mathematics. > Mathematica is much more shaped by what makes things convenient for users, > than it is by computer science. It started with Stephen Wolfram wanting to > perform symbolic calculations for physics papers. It has always been > pushed by the needs of technical computing and the desire to encapsulate > technical knowledge in working documents. Mathematica has drawn heavily from both the fields of artificial intelligence and mathematical typesetting. For the former take a look at Lisp and PROLOG. For the latter take a look at the works of Knuth http://www-cs-staff.stanford.edu/~knuth > So my way of viewing Mathematica and Mathematica notebooks, is as 'souped > up pen and paper'. (Or maybe keyboard and paper.) I can write anything I > want, do any kind of calculation or derivation I want, draw diagrams and > animate them, revise (I spent the morning putting in an equation and the > afternoon taking it out), do examples and test my knowledge. I believe the current implementation of Mathematica is extremely limited in comparison to its potential. The notebook structure would benefit significantly from the ideas developed by the W3C for the creation of interactive documentation programs. http://www.w3.org/DOM/ > Mathematica notebooks are a revolutionary kind of document. They far > outstrip hard copy books and papers. We are just learning how to use them. > Although I'm of the older generation and share the fondness for hardcopy > books I don't think that in the long run they can compete in the area of > scientific, mathematical and technical literature. Many of my technical > books are certainly too big to hold open in my hand. Though there is certainly a case for such sprawling works as Misner, Thorn and Wheeler's _Gravitation_, it is often the case that the most profound works in math and physics are very compact. E.g., _The Meaning of Relativity_ by Einstein. There is a recognition by those who truly understand the value and power of C++ that the traditional LOC metric used to gauge programmer productivity is something of an anti-metric. The best C++ code tends to be very compact in comparison to its counterparts in other languages, or even in "first cut" C++. It is not uncommon for a good C++ programmer to reduce 250 lines of C-style code into 15 lines of superior code. Something tells me there is a similar kind of compactness hiding under the current use of Mathematica. > If I try to eat and > read I can't get the Dover books to lie flat. Because of the technical > limitations of books many of them, even by well regarded authors, are full > of misprints, errors and poor notation. When I read a book I often have a > hard time understanding the material unless I can think of how I would do > it in a Mathematica notebook. Then I have to rush back to my desk. I just > wish I had a laptop I could always have with me. I have to say, even when I am sitting at my computer, and have a book in both hardcopy and electronic form (TMGB, for example), I favor the hardcopy for reading "cover-to-cover". I will acknowledge such books tend to become "bloated" in terms of producing hardcopy. This is a challenge I have constantly churning in the back of my mind as I read such books. > And for those worried about it: electric power will be available at least > as much as sunlight and digital copies will last longer than chiseled > stone. ??? My understanding is that DVDs and CDROMs decay comparatively quickley. -- The Mathematica Wiki: http://www.mathematica-users.org/ Math for Comp Sci http://www.ifi.unizh.ch/math/bmwcs/master.html Math for the WWW: http://www.w3.org/Math/

**Follow-Ups**:**Re: Re: How to View Mathematica and Hardcopy Books***From:*Andrzej Kozlowski <akoz@mimuw.edu.pl>