MathGroup Archive 2008

[Date Index] [Thread Index] [Author Index]

Search the Archive

RE: RE: Comparison between Mathematica and other

  • To: mathgroup at smc.vnet.net
  • Subject: [mg92590] RE: [mg92547] RE: [mg92378] Comparison between Mathematica and other
  • From: "Ingolf Dahl" <ingolf.dahl at telia.com>
  • Date: Tue, 7 Oct 2008 07:05:14 -0400 (EDT)
  • References: <200809301133.HAA21932@smc.vnet.net> <200810041017.GAA15066@smc.vnet.net>

I feel as if I created a lot of confused debate by my recent post. I admit
that my Sort example was not the best. I just wanted to provide my personal
experience on what convinced me to use Mathematica, since there might
somewhere be some persons who think in a similar way to me. My main point
was that the command "Sort" maybe could illustrate the strength of
Mathematica compared to other CAS systems, since it can be used in a very
general way. I am no expert in the other systems.
One could rewrite the same example in a maybe less "scary" way, missing the
chance to tell anything about the pure function notation (#)&, as Murray
suggest. Then we obtain quite typical Mathematica expressions, and if they
still are too frightening, then we maybe cannot claim without cheating that
Mathematica is very accessible. We could also give simpler examples:

Sort strings into dictionary order:

Sort[{"cat", "fish", "catfish", "Cat"}]

Sort by string length
   
SortBy[{"cat", "fish", "catfish", "Cat"}, StringLength]

but such things maybe are easily done in the other systems also? Sorting
playing-card is another possibility to illustrate the capability of
Mathematica. Some persons, able to generalize, would get the point, while
other would think that they never would desire to sort playing cards by a
CAS system.
(I just have to mention that I googled on the Sort command in another CAS
system, and found a discussion on how to avoid getting variables sorted
according to their machine addresses. I found that quite scaring!)

The topic of the thread was to compare Mathematica with other CAS systems,
not to persuade newbies to use a CAS system. Then Paolo B. should
concentrate on the strong sides of Mathematica.  
The strong side of Mathematica is not that it is easily accessible, the
strong side is that it is useful and from start designed in a clever, logic
and systematic way to provide a unified approach to both symbolic and
numerical math, wiith a design which provides freedom and power to the user.
New and occasional users could find their way into the system via the
numerous live examples in the help system. Do not forget the arbitrary
numerical precision, the huge number range, the freedom to choose
programming style and the pattern matching!

And do not forget to mention MathGroup, with 92576 letters and almost always
pleasant answers: "We should not do YOUR homework, but anyway the answer
is..."

I do not think neither my wife, my daughter nor I would have been impressed
by a beautiful woman recommending Mathematica. And manipulate is a nice
command, the cream on the top, but it was not our reason to choose
Mathematica from the beginning. Or?

Ingolf Dahl
Sweden
 
> -----Original Message-----
> From: peter lindsay [mailto:pl.0 at me.com] 
> Sent: den 4 oktober 2008 12:17
> To: mathgroup at smc.vnet.net
> Subject: [mg92547] Re: [mg92537] Re: [mg92527] RE: [mg92378] 
> Comparison between Mathematica and other
> 
> I agree. The object is to persuade people how accessible 
> Mathematica is, not how incredibly learned and expert the 
> users need to be.
> Peter
> 
> 2008/10/3 Murray Eisenberg <murray at math.umass.edu>
> 
> > I'd exercise caution before presenting such an example to 
> people whom 
> > you're trying to convince to turn to Mathematica.  all the vertical 
> > strokes, including those in the brackets, make this look 
> like a jumble 
> > of incomprehensible symbols.  The effect could be precisely the 
> > opposite of what you intend.
> >
> > Ingolf Dahl wrote:
> >
> > > I do not know how this is example is interesting or how 
> it is done 
> > > in
> > other
> > > systems, but once, 14 years back, it convinced me that I 
> should use 
> > > Mathematica for a specific problem. I wanted to sort the 
> > > eigenvectors of
> > a
> > > real matrix according to decreasing size of the real part of the 
> > > eigenvalues. For complex eigenvalue pairs I wanted the eigenvalue 
> > > with positive imaginary part sorted first. I just wanted 
> to specify 
> > > the
> > sorting
> > > rule, and did not feel for writing the sorting algorithm 
> from scratch.
> > This
> > > is how I solved it in Mathematica
> > >
> > > Transpose[
> > >  Sort[Transpose[Eigensystem[RandomReal[{-1, 1}, {6, 6}]]],
> > >
> > >   Re[#2[[1]]] < Re[#1[[1]]] ||
> > >     Re[#2[[1]]] == Re[#1[[1]]] && Im[#2[[1]]] < Im[#1[[1]]] &]]
> > >
> > > I think this also is a good example of the use of functional 
> > > programming, and it helped me to get in to it.
> > > In Mathematica we are thus able to sort any kind of 
> "objects" with 
> > > any
> > kind
> > > of sorting criteria, thanks to the generality of the language.
> >
> > --
> > Murray Eisenberg                     murray at math.umass.edu
> > Mathematics & Statistics Dept.
> > Lederle Graduate Research Tower      phone 413 549-1020 (H)
> > University of Massachusetts                413 545-2859 (W)
> > 710 North Pleasant Street            fax   413 545-1801
> > Amherst, MA 01003-9305
> >
> >
> 
> 
> 




  • Prev by Date: Re: integration
  • Next by Date: Call Mathematica functions using C program
  • Previous by thread: Re: Re: RE: Comparison between Mathematica and other
  • Next by thread: Re: Comparison between Mathematica and other