Re: Warsaw Univ. course, was Re: Work on Basic Mathematica Stephen!

*To*: mathgroup at smc.vnet.net*Subject*: [mg131024] Re: Warsaw Univ. course, was Re: Work on Basic Mathematica Stephen!*From*: David Bailey <dave at removedbailey.co.uk>*Date*: Tue, 4 Jun 2013 02:00:44 -0400 (EDT)*Delivered-to*: l-mathgroup@mail-archive0.wolfram.com*Delivered-to*: l-mathgroup@wolfram.com*Delivered-to*: mathgroup-outx@smc.vnet.net*Delivered-to*: mathgroup-newsendx@smc.vnet.net*References*: <kmngb2$3rv$1@smc.vnet.net> <20130519095011.606CD6A14@smc.vnet.net> <knv52t$j93$1@smc.vnet.net> <ko1nhc$r3t$1@smc.vnet.net> <ko9ito$kf1$1@smc.vnet.net> <koch3o$t5j$1@smc.vnet.net> <koehai$2s1$1@smc.vnet.net> <kohgcg$c9l$1@smc.vnet.net>

On 03/06/2013 08:25, Richard Fateman wrote: > On 6/1/2013 9:22 PM, David Bailey wrote: >> On 01/06/2013 11:06, Richard Fateman wrote: >>> >>> I have no objection to a data type that might reasonably be called >>> Vector, or perhaps Sequence, that implements a data structure that uses >>> sequential storage. I object to calling it List. >> >> Indeed, the essence of your criticism seems to be merely that >> Mathematica gives a slightly different technical meaning to the English >> word 'List' than that of Lisp! > > No, my point, though I may have worn it out with repetition, is that > using Mathematica for computer science, or implying that it represents > computer science best practices has many hazards. One of which is that > it misuses common terms in ways that are wrong. For example List > is used for a vector or array. >> The point is that almost every technical subject usurps a few common words, and gives them special meanings. Every computer language does this, and some of them aren't consistent with other languages. Think of the number of partially consistent definitions of the word 'Module' that exist! Formats exist in Fortran, C, and Mathematica, but they aren't the same! If Lisp had used a neologism like CARCDRTUPLE, it would be reasonable to leave that word alone - and any use of CAR, CDR, CDDR, CONS, etc should be avoided unless the meaning is essentially the same as in Lisp. However, the motivation behind the use of words like 'List', 'Module' and 'Format' is English, and you simply can't expect to achieve consistency across different usages. Incidentally, I once saw a book about physical fields classified in the library in the pure maths section. I brought this to the attention of the librarian, who couldn't seem to see my point, and did nothing. The word 'field' also seems to crop up in signal processing texts in the maths sense, where it could indeed confuse physics students. Every re-definition of a word has a potential cost. Calling Mathematica lists 'vectors', or even 'tuples' would be extremely confusing to many people in certain contexts, and would almost certainly upset you! I think you would object that a 'vector' such as {"alpha",23,{}} wasn't a vector in the maths sense at all! Perhaps you would prefer the syntax WolframList[1,2,3], or Obj652[1,2,3]! That syntax would be perfect (from your point of view) because it would make Mathematica code unreadable and much less attractive! David Bailey http://www.dbaileyconsultancy.co.uk

**Follow-Ups**:**Re: Warsaw Univ. course, was Re: Work on Basic Mathematica Stephen!***From:*Andrzej Kozlowski <akozlowski@gmail.com>