9

The latest example is here:

Why are actual parameters called "arguments"?

Note that the OP is not asking for the difference between "parameters" and "arguments," or even what the word means, but merely how the word came to be used in the software development context.

I find these questions troubling for several reasons:

  1. They don't focus on a specific problem area in programming, but merely satisfy a particular curiosity.
  2. They are often trivially answerable with a little bit of Internet searching.
  3. They tend to attract opinions and debate over semantic issues.
  4. They are extremely localized.

The problem is less clear with questions like this one, which asks for the actual definition of the words. Such a question might be useful in clarifying communication among programmers.

Or this one:

Where does the the term "feature creep" come from?

which clearly serves no practical programming need, yet seems very popular with the community.

8
  • Just to clarify, if the answer is indeed that it was taken from math, then I'd like to know why they were called "argument"s in math. :) i.e. I'm trying to understand the meaning that led to its current usage.
    – user541686
    Commented Feb 7, 2013 at 21:13
  • 3
    Even if it's not off-topic, the question being discussed is probably a duplicate: programmers.stackexchange.com/questions/19416/…
    – Eric King
    Commented Feb 7, 2013 at 21:18
  • 4
    @EricKing I would say those are very closely related, but not duplicates. One is asking for the history of why a parameter is called an "argument", while the other is asking if you should use "parameter" or "argument" when referring to a function/method parameter/argument.
    – Rachel
    Commented Feb 7, 2013 at 21:19
  • @Rachel Hmm... I don't see a significant difference between the two questions, but I don't feel strongly about it one way or the other. :-)
    – Eric King
    Commented Feb 7, 2013 at 21:20
  • @Rachel My thinking was along the lines of: The question "why are parameters called 'arguments'" makes the (false, in my opinion) presumption that 'parameters' are, in fact, called 'arguments'. A better reformulation of that question might be "What's the difference between (and sources of) the words 'parameter' and 'argument' as they relate to programming?". But then you would essentially have a duplicate of the other question. -- All of this, of course, is unrelated to whether word origin questions are on-topic.
    – Eric King
    Commented Feb 7, 2013 at 21:38
  • 1
    @EricKing: That presumption was because of an edit by someone else, I reverted it and explained the distinction precisely because I expected comments like yours. The original question didn't ask "why parameters are called arguments".
    – user541686
    Commented Feb 7, 2013 at 21:47
  • 3
    @Mehrdad Your edit is a good one and something I hadn't considered. I've never heard of 'actual parameters' as opposed to 'formal parameters'. Learn something new every day.
    – Eric King
    Commented Feb 7, 2013 at 21:49
  • possible duplicate of Is programming history on topic?
    – gnat
    Commented Feb 27, 2013 at 12:08

6 Answers 6

20

My personal feeling is that why questions are often helpful, but who questions usually fall under idle curiosity. Knowing the deeper meaning of the word can help people keep the differences straight, which can be important in a profession as precise as ours.

For example, consider that guy yesterday who thought "stack" meant all the memory allocated to a process. If you've never had it explained to you, that's a naive but not completely off base generalization to make, but not knowing that subtle difference completely destroyed his question. A question like "Why do we call it a stack, anyway?" could be very useful in cementing the difference in someone's head, whereas "Who first called it a stack?" isn't very useful at all unless you're a contestant on Jeopardy.

There are several other sets of terms with distinctions that can be very subtle for beginners: declaration/definition, class/instance, argument/parameter, stack/heap, microprocessor/microcontroller, etc. If learning that "argument" derives from "token" helps people differentiate it from a parameter, I say it's worthwhile.

4
  • 2
    That's an awesome distinction you draw out.
    – user53019
    Commented Feb 7, 2013 at 22:07
  • 3
    There are currently 2307 entries in the jargon file. Is it appropriate to have a question on each? There are words that one must be able to assume has a standard meaning among all programmers - and discussions about definitions can get ugly. When one wishes to ask questions of a programmer, one cannot be using stack in a different way than the norm, then expect others to use the word in the same way. Try going to Cooking.SE and swapping 'pot' and 'pan'. This is a site for professional programmers, we shouldn't be a dictionary for new programmers (they can go to wikipedia for that).
    – user40980
    Commented Feb 7, 2013 at 22:13
  • 5
    There's a difference between a definition and an explanation. Commented Feb 8, 2013 at 22:00
  • Yup. The purpose of definition is so that people knew what are they talking about. The purpose of explanation is so that they understood what are they talking about. Commented Jul 1, 2018 at 4:50
12

I'm not sure whether this falls under "idle curiosity" or not, but I have a devil of a time keeping the distinction between arguments and parameters straight - knowing the history behind them - the "why" - might well help.

Or it might just be one more bit of trivia to be confused and forgotten.

But frankly, this does seem like the sort of "conceptual" question that the site is intended to serve.

7

Karl and Shog have both provided good answers about why questions like this can be worthwhile, but I'd also like to point out that we've had this discussion in the past about history questions.

It was sparked by the question Why are statements in many programming languages terminated by semicolons?, and per the top-voted and accepted answer on that meta discussion,

This question came up in chat yesterday, and a point was made that Programming History is often overlooked on P.SE.

To quote Mark Trapp:

Save for the accepted answer, I thought the semicolons question was pretty good. Programming history has always been an overlooked aspect of Programmers's scope.

So although the question is probably not relevant to a programmer job in today's world, it does provide some insight into the history of programming languages, which can possibly be used for future decisions.

I have not seen any other discussions on meta since then about changing our policy on history questions, so I would say yes, this question is on-topic and should be left open.

6
  • 2
    That question has specific applicability to language design and the way compilers parse source code. An understanding of the issues raised there can have a direct bearing on programmer effectiveness. Commented Feb 7, 2013 at 21:20
  • Karl and Shog both have provided good answers about why questions like this are considered worthwhile. My answer was merely to point out the fact that Programming History in general has been discussed before, and is considered on-topic for the site. I'll update my answer to clarify that :)
    – Rachel
    Commented Feb 7, 2013 at 21:26
  • 1
    Is programming history still part of the scope? It's not in the FAQ. I thought that was one of those things that got descoped when we left beta. Commented Feb 7, 2013 at 21:30
  • 1
    @KarlBielefeldt The quote from Mark was from 3/21/2012 and we left beta on 12/16/2010, so I would say yes it's still part of the scope.
    – Rachel
    Commented Feb 7, 2013 at 21:32
  • You raise some solid points. And it looks like the question has been re-opened already.
    – user53019
    Commented Feb 7, 2013 at 22:09
  • Questions about history help people understand why things are the way they are today, and understand the reasons behind them, which usually makes them appreciate them more instead of ridicule it for being "some old cruft irrelevant to present day" or that "they could have done this better". Commented Jul 1, 2018 at 4:53
3

I consider word-origin questions to be on-topic if the word uniquely applies to programmers in general.

2

I've added my vote to close, despite doing quite well out of the answer. I don't think it's entirely in sync with Programmers's philosophy. Although I'm not entirely sure what that is any more, but that's another discussion.

It would not be the first time that a question like that got moved to English Language and Usage. In fact all my karma points there come from questions migrated from Programmers, IIRC.

1

I would vote "No, they're not on-topic" or really, they're just not that beneficial to P.SE as a Q&A site.

For both of the examples you cite, I found myself wondering "who really cares?" Yes, there is a degree of value in understanding the origin of terms, but as Shakespeare said "A rose by any other name would smell as sweet."

4
  • Is there any other SE site it would be a better fit for?
    – user541686
    Commented Feb 7, 2013 at 21:15
  • 2
    @Mehrdad Since this ended up being less of a 'programming history' question and more of a 'etymology' question, you probably would have gotten exactly the same answer on english.stackexchange.com where etymology is explicity on-topic. But, your question straddles the line between programming and etymology, so I can understand why you asked it here.
    – Eric King
    Commented Feb 7, 2013 at 21:57
  • @Mehrdad - it's also worth noting that this is just my opinion. Which really doesn't amount to much. :-) Rachel has some good points about that type of question being on-topic, and it is certainly an answerable question.
    – user53019
    Commented Feb 7, 2013 at 22:10
  • Those who ignore histrory have a tendency of repeating the mistakes of the past. Commented Jul 1, 2018 at 4:54

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .