[Date Index]
[Thread Index]
[Author Index]
Re: Re: Types in Mathematica
*To*: mathgroup at smc.vnet.net
*Subject*: [mg62515] Re: [mg62456] Re: Types in Mathematica
*From*: "Steven T. Hatton" <hattons at globalsymmetry.com>
*Date*: Sat, 26 Nov 2005 02:47:16 -0500 (EST)
*References*: <200511191053.FAA16418@smc.vnet.net> <200511241133.GAA29353@smc.vnet.net> <9355ABB1-49A9-44BF-A50A-D795F5CAAD8B@mimuw.edu.pl>
*Sender*: owner-wri-mathgroup at wolfram.com
On Thursday 24 November 2005 17:35, Andrzej Kozlowski wrote:
> Well, this is obviously something that can't be tested and will have
> to remain just a matter of opinion. Personally, however, I would say
> that to become a good Mathematica "programmer" in my sense, it is
> better to spend the 8 years on learning subjects such as
> computational commutative algebra, numerical analysis etc. than to
> "waste them" on learning "the tricks of the trade" of other
> programming languages, which are rather different form the "tricks of
> the trade" of Mathematica.
This relates to a long-held opinion of mine which is. The first step to
writing code well is to have something to say. Programming is in many ways
"simply" a means of expression as is writing in a "natural" language. I wish
I could say that a majority of my software development experience was
directly related to math and physics.
Nonetheless, there are abstractions which transcend specific domains. For
example, the study of natural languages can be illuminating with regard to
Mathematica grammar.
> But of course this depends a lot on what
> exactly you mean by a "Mathematica programmer". From my point of
> view, it is more useful for a Mathematica programmer to understand
> what Groebner basis is, what CylindricalAlegebraicDecomposition does,
> or how interval arithmetic works, etc, etc, than to know about data
> types, objects, and all the other notions that you have been
> discussing and that are only of tangential relevance to what I use
> Mathematica for.
It's not a question of what I want to use Mathematica for. It's a question of
how to (best) use mathematica. There are rather pragmatic reasons I was
considering ways of implementing types in Mathematica. For example, I was
considering the possability of creating 3D vectors and the like, and using
the type of these objects to determine how they are displayed, and how they
behave when they appear as arguments in, or how they should be displayed.
> But of course I accept that one can use Mathematica
> for quite different purposes and then the relative relevance of these
> things may be quite different.
When I wanted a means of crating a locally orthogonal basis in Mathematica, I
turned to my experience in 3D graphics for a solution. I've found a few
surprising limitations in the offerings of Mathematica in terms of
mathematical functionality.
When I asked questions about Mathematica as a programming language, I have
been intending the types of issues treated in the TMGB-P by Michael Trott.
There are numerous subtelties dealing with order of evaluation, effects of
attributes, canonical ordering of arguments, etc. which lie completely in the
domain of Mathematica as a programming language. In order to use Mathematica
effectively, one has to have a fairly good grasp of such matters. There is
clearly an underlying programming language which is, to my knowledge, nowhere
formally presented in isolation. That may be a business decision. I don't
know.
Steven
Prev by Date:
**Re: Problems with brackets when exporting postscript**
Next by Date:
**Re: webMathematica problems if using Xvnc**
Previous by thread:
**Re: Re: Types in Mathematica**
Next by thread:
**Re: Re: Re: Types in Mathematica**
| |