From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: fac41,b87849933931bc93 X-Google-Attributes: gidfac41,public X-Google-Thread: 103376,b87849933931bc93 X-Google-Attributes: gid103376,public X-Google-Thread: 109fba,b87849933931bc93 X-Google-Attributes: gid109fba,public X-Google-Thread: 114809,b87849933931bc93 X-Google-Attributes: gid114809,public X-Google-Thread: 1108a1,b87849933931bc93 X-Google-Attributes: gid1108a1,public From: piercarl@sabi.demon.co.uk (Piercarlo Grandi) Subject: Re: OO, C++, and something much better! Date: 1997/02/19 Message-ID: #1/1 X-Deja-AN: 219833496 X-NNTP-Posting-Host: sabi.demon.co.uk X-Disclaimer: Contents reflect my personal views only References: <5de62l$f13$1@goanna.cs.rmit.edu.au> <32FB8B51.1759@concentric.net> <3302DB3E.F70@concentric.net> <33054E63.C2A@concentric.net> Content-Type: text/plain; charset=US-ASCII Organization: Home's where my rucksack's Mime-Version: 1.0 (generated by tm-edit 7.94) Newsgroups: comp.lang.c++,comp.lang.smalltalk,comp.lang.eiffel,comp.lang.ada,comp.object Date: 1997-02-19T00:00:00+00:00 List-Id: >>> "jsa" == Jon S Anthony writes: jsa> In article jsa> piercarl@sabi.demon.co.uk (Piercarlo Grandi) writes: piercarl> But then mathematicians invent notation all the time; they piercarl> even have suffix operator (e.g. "!" for factorial) or "around" piercarl> operators (like "||" for absolute value) and many more types piercarl> beside. The common thing is not quite that they use piercarl> non-alphabetic symbols, but that they don't use applicative piercarl> syntax like 'f(....,....)'; jsa> ??? Mathematicians use the function "syntax" all the time. It's jsa> probably one of the single _most_ used notations. I was writing of when they invent operator notation; when they design operators, they often, but not always use non-alphabetic symbols, but they usually use syntax (infix, postfix, prefix, ``around'', ...) that is different from applicative syntax. piercarl> consider for examples of alphabetic operators commonly used in piercarl> maths things like the 'lim' unary operator notation, jsa> How do you figure that "lim" is a unary operator??? Well, I distinguish it from non-operators because it does not involve applicative syntax; it involves brief, ``special'' syntax, even if it is not composed of special characters. As to ``unary'', well, this is arguable; one could argue that it is a family of unary operators, actually, where: jsa> Depending on context it is a function of at least three arguments jsa> (independent variable, the "limit", and a function) variable and limit ``specialize'' the operator ("unary operator notation", for example: lim ), or that it is really a ternary operator x->oo that is typographically laid out (usually) to resemble a unary operator. If you want more obvious examples; just consider 'sin', which is often written in operator notation: $y = sin x$, as well as function notation: $y = sin(x)$. Same goes for "log", which is a unary operator, I would say even when it is specialized by a base appended to it, as in log x. 10 jsa> and may well a) not even have a value and b) even if it does, it jsa> may not be in the range of the function argument. Actually, in jsa> mathematical parlence "lim" is not even an operator. Of course it is -- if one looks at how it is written in most textbooks, 'lim' does not look like a function application. Now, my argument is here a bit circular; but what is an operator *symbol*, and here we have been discussion these, and not the functions/procedures they label, is usually evident by visual inspection. Let me insist: this usually reveals that there is a default syntax (applicative, affix, whatever) for functions/procedures, and there is a distinguished, usually briefer, syntax for operator symbol, which are also often, but not necessarily, drawn from a distinguished lexicon.