Re: Originality

*To*: mathgroup at smc.vnet.net*Subject*: [mg29523] Re: [mg29482] Originality*From*: Andrzej Kozlowski <andrzej at tuins.ac.jp>*Date*: Sat, 23 Jun 2001 01:47:06 -0400 (EDT)*Sender*: owner-wri-mathgroup at wolfram.com

I would like to comment on only one aspect Orestis's message namely the idea expressed in it (and in some earlier postings) that "object oriented" programming is "the norm" (and that Fortran has anything to do with "mathematics"!) while functional (and logic) programming are somehow non-standard and unusual (and were "original" at the time when Mathematica appeared). I first took a programming course as a first year mathematics undergraduate, well before personal computers came into existence. I learned "procedural" programming and found the whole idea tedious and intellectually trivial, having no more to do with mathematics that a pocket calculator. I began to change my mind only about a decade later, when I came across LISP, which by that time had become the de facto standard among people who were doing any kind of serious mathematics using a computer. I think this was also largely true about physicists. I have never met anyone who used Fortran for what I consider mathematics. Mathematica appeared at around that time. It was written by a well known physicist and its original target user community was mostly physicists and mathematicians. It's programming language was one of its most attractive aspects, but it was because it was one that was already known and well accepted by this particular user community. As far as I can tell the situation remains the same today. Functional programming together with logic programming are much more important for mathematical and scientific applications than object oriented programming. As an illustration I will note that first year undergraduates at Cambridge University have to study ML (functional) and Java (object oriented). Those intending to pursue physics or mathematics find the former the more useful, those interested in software development the latter. The reason why I am writing this is not to try to denigrate object oriented programming but to point out that the community of users of Mathematica is very varied, and one should not assume that we all all making statistical models or something of that sort. In fact, I would argue that even today what makes Mathematica so remarkable a tool is that it was designed by a person with a sophisticated understanding of mathematics and the most natural way to program when working with mathematical structures. I certainly do not mind other people developing their different paradigms but, I would find it regrettable if Wolfram Research ever put any serious effort into developing alternatives to what already is the best and the most natural paradigm for programming mathematics. Andrzej Kozlowski on 6/22/01 3:20 PM, Orestis Vantzos at atelesforos at hotmail.com wrote: > Many people post to this group with original ideas, some feasible, some not, > some interesing, some not. Well, in any case original. It takes some mental > discipline for the advanced users (pardon me the vanity to include myself) > to really think about what the poor newbie says. And I am not talking about > the posts of the form "I have a problem, bla bla bla..." or "My Mathematica > has a bug, bla bla bla...", I am talking about the "Wouldn't it be > nice/interesting/whatever, to do bla,bla,bla...". Better alternatives are > ever so obvious, implementation weaknesses can be pointed immediately - > basically the first impression is usually "what is this guy talking about?" > Mathematica is so vast and versatile, that I think we don't have yet a full > grasp of its possibilities. So when people think of a weird way to do > something and they post it in the best Mathematica implementation they can > think of (which is probably not that good- Mathematica has a bitch of a > learning curve), we beat each other to the keyboard to provide our code, > often in the form of "the right code". Some among us even beat the ambitious > newbie into pulp, rushing to show him just how pointless and reduntant his > approach is. A clear point is made: "we don't need your thoughts, we have > everything solved". > Ponder this my fellow "Mathematica Gurus": > A weird mathematician walks into a programmer's office and starts talking > about a program with symbolic capabilities, that will provide a front-end > with formitable typesetting and graphic features and will be based on > functional and rule-based programming. > The programmer listens to all this and says: > "Your thoughts are foolish- we have fortran,C,linpack,whatever for > mathematics and as for typesetting you have LaTeX And who would program with > RULES?! All the major software engineering projects are procedural/object > oriented. You don't need it, it can't be done, it would be too slow, there > are other programs that do the same thing, and so on and so on..." > You get the picture, I suppose...originality IS immature; there is no other > way. It is not a local maximum, my friends - it is a departure from local > maxima in search of greener pastures. So when you encounter it, pointing to > your local max won't help ;-) > Handle it with care please...if some people didn't pursuit their "foolish" > dreams, we would all be talking in the FORTRAN2K forum now. > Orestis Vantzos > > > > >

**Follow-Ups**:**Re: Re: Originality***From:*John Resler <jmresler@kscable.com>

**Re: roots**

**Re: Re: How to use Rules on Sequences?**

**Re: RE: Originality**

**Re: Re: Originality**