I was just commenting on the term used in grade school, which was "operation" rather than "operator", at least in my case.
Differentiation and Integration are functions on functions. Since generally in computer languages functions are not first class objects there tends to be a distinction drawn which doesn't exist in higher mathematics. I see no reason to stick to mathematical definitions as long as meanings are defined precisely in a given context. On 03/08/2018 10:32 AM, Don Guinn wrote: So, what is the purpose of this discussion? Is it to find a better way to describe J? If so, then I suspect the formal definitions for "function" and "operator" will confuse and turn off both non-programmers and programmers. They are so formal and contradictory to the point of distracting from the original purpose. And one thing not addressed yet. What are "differentiation" and "integration"? They don't fit the description of "operators" or "functions" so far in this discussion. They are a unique concept. They create new functions. They do not manipulate data. On Thu, Mar 8, 2018 at 8:18 AM, Dabrowski, Andrew John <[email protected]<mailto:[email protected]> wrote: You mean "operations"? On 03/08/2018 08:56 AM, Don Guinn wrote: Yet + and - are called "operators" is school. Yet they conform exactly to the definition of a "function". So, to the general public, what is an "operator"? On Thu, Mar 8, 2018 at 4:57 AM, Raul Miller <[email protected]><mailto:[email protected]>< mailto:[email protected]><mailto:[email protected]> wrote: You had different teachers than I had. I remember being taught the definition of function in grade school, again in high school, and again in college. The definitions weren't the same but they tied together. A key concept has been that a function has a single value for any single argument. y equals one minus x squared is a function (graph of a parabola). y squared equals one minus x squared (graph of a circle) is not a function. That term got borrowed for programming (naming things is hard), but functions in programming languages have only a loose relationship to the earlier concepts. -- Raul On Wed, Mar 7, 2018 at 11:50 PM, Don Guinn <[email protected]><mailto:[email protected]><mailto:do [email protected]><mailto:[email protected]> wrote: When in grade school they called things like + and - "operators". But they never defined it. Then in trig thay had "functions", but they never defined what functions were either. Then came calculus. Differentiating and integrating were never given a group name or general classification. I think teachers thought they were functions. But obviously quite different from things like sin and cos. I searched several math school books looking for definitions. Never found any. They just started using the terms without definition. I asked several people the difference between function and operator and got nonsense answers. So for the fun of it, I googled it. Overwhelmed. The only definitions that make sense are those of calling things as J did like +, -, sin and cos "verbs" and differentials and integration "modifiers". Because differentials and integrals return "functions". Or in J terminology, "verbs". These things are concepts. I think I have an understanding of the concepts, but as to what to call them. Who knows? The thing is that we need to try many ways to describe them until one of them sticks. Maybe one of the descriptions will work with students or other people. But I suspect that few people realize that things like differentiation is really different from + and sin. On Wed, Mar 7, 2018 at 9:09 PM, Ian Clark <[email protected]><mailto:[email protected]><mailto: [email protected]><mailto:[email protected]> wrote: Too right, Devon. And have you explored the unicode situation with minus? Not to mention pi and mu. If programmers coded like they talk and write, planes would be dropping on our heads from all over the sky. I knew folk who'd never read a manual or an article about a novel language. And they didn't read comments in code. Only the code – and then they'd try out variants, to see what worked and what didn't. On Thu, Mar 8, 2018 at 3:59 AM, Devon McCormick <[email protected]<mailto:[email protected]> <mailto:[email protected]><mailto:[email protected]> wrote: I did once ask a fellow, knowledgable programmer if the distinction between function and operator in conventional languages in fact meant "with which alphabet do you spell it?" If it's a plain old ASCII name, like "plus", it's a function; a symbol like "+" is an operator, even if both tokens behave exactly the same. Ultimately not a particularly illuminating distinction. On Wed, Mar 7, 2018 at 10:56 PM, Ian Clark <[email protected]><mailto:[email protected]><mailto: [email protected]><mailto:[email protected]> wrote: it does not match my understanding of how standards bodies work However they work, they don't seem to produce a leading answer to a leading question. Before posting my appeal, I googled variants of "ISO computer terminology". I got the impression there were over 30 ISO committees dealing with aspects of this topic, including the vexed one of translating computer manuals. I gave up and asked this forum if anyone could recommend the leading (ISO) source of common terms, like: platform, program, etc. (…hey! – I've just reduxed my original post.) It seems nobody can. I might as well have asked the Freemasons their meaning of "secret society". that does not match my understanding of how language use works What hope is there of dialog with someone if you don't agree on basic terms? That's my understanding of how language use works. Or doesn't. Yet here I am, setting out (…yet again) to talk to non-J initiates about J – and I want to use words which I know they'll understand, like: variable, constant, function – and I want to avoid words like noun, verb, pronoun, proverb – because that's all J mystery jargon. Don't I need a touchstone of definitions my reader and I will agree on? To-date I've come up with these candidates: (a) The Oxford Dictionary (…nowadays better than I expected it to be, going by past experience) (b) The following site: http://techterms.com …which is cool. Just what I was looking for. But lacks the authority of an ISO standard. Also (…oh no!) I look up a word like: Constant –and I don't agree with what it says… https://techterms.com/definition/constant In the final para it seems to be describing #define, not: const (…if you know any C/C++). Plus no mention of IMHO the chief role of a "constant": to behave programatically like a variable but preclude reassignment. Thus scotching the perennial C/C++ bug: if (myconst = x) { … } Also, on the home page, "Today's Quiz Question" is garbled… not a good sign for something purporting to be authoritative. Can anyone do better? …there, now I've described exactly what I'm looking for. On Tue, Mar 6, 2018 at 6:27 PM, Raul Miller <[email protected]><mailto:[email protected]>< mailto:[email protected]><mailto:[email protected]> wrote: I do not think that "common usage" depends on ISO standards. Or, at least, that does not match my understanding of how language use works (and, for that matter, it does not match my understanding of how standards bodies work). Thanks, -- Raul On Tue, Mar 6, 2018 at 11:42 AM, Ian Clark <[email protected]<mailto:[email protected]><mailto: [email protected]><mailto:[email protected]> wrote: Sorry, Joe, I want "common programmer terms" for "platform, program, etc", i.e. terms common to all programmers, not just J-ers. Especially not J-ers! I tried looking up some of these terms in the Oxford Dictionary of English (courtesy Apple) and I'm impressed. It seems it has authoritative but straightforward meanings under the subheading "Computing" for all I've tried . But I'm still hoping to hear what ISO standard people on this list use, or some standards body. I'm taking the baffled silence to mean that nobody has ever used such a list. The fabled precision of IT professionals doesn't extend to terminology, it seems. Such lists exist. I've seen them – though only in German, and that was decades ago. Documenters need them for the purpose of translating manuals. Though maybe the whole thing is still woolly, like it was in my day. An Arab once told me he always used the English manual because he couldn't make head or tail of the Arabic one. On Tue, Mar 6, 2018 at 2:57 PM, Joe Bogner <[email protected]<mailto:[email protected]><mailto:jo [email protected]><mailto:[email protected]> wrote: I went back and looked at some of the existing material This seems to be a good list of definitions with examples: http://www.jsoftware.com/help/primer/contents.htm This text seems devoid of too many terms: http://www.jsoftware.com/books/pdf/easyj.pdf Of course, I'm not reading these with "beginner eyes" so both may still need to be unpacked more On Tue, Mar 6, 2018 at 7:28 AM, Ian Clark < [email protected]<mailto:[email protected]><mailto:[email protected]><mailto:[email protected]>> wrote: It's absurdly difficult to write a good "first-contact" text for J without reference to a single accepted source of definitions like: platform, program, app, script, variable, constant, function, array, string, character, number … Is there an ISO standard for common programmer terms (in English)? If the answer is: legion (…my first impression) – then is there one that stands out for you? I have an operational need for a weblink to a good clear published free authoritative text. To avoid cluttering this thread, please don't offer your own definitions of the above terms here (although of course I'd be frightfully interested to hear them one day.) ------------------------------------------------------------ ---------- For information about J forums see http://www.jsoftware.com/ forums.htm ------------------------------------------------------------ ---------- For information about J forums see http://www.jsoftware.com/ forums.htm ------------------------------------------------------------ ---------- For information about J forums see http://www.jsoftware.com/ forums.htm ------------------------------------------------------------ ---------- For information about J forums see http://www.jsoftware.com/ forums.htm ------------------------------------------------------------ ---------- For information about J forums see http://www.jsoftware.com/ forums.htm -- Devon McCormick, CFA Quantitative Consultant ------------------------------------------------------------ ---------- For information about J forums see http://www.jsoftware.com/ forums.htm ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
