4

Where does the phrase "overload" come from?

It's interesting to see the translation of the term in different languages (e.g. list of Wikipedia articles about overloading), some languages translate it directly (in the meaning of "to put too much weight on something"), but some languages don't translate it at all.

hunyadym
  • 151
  • 5
  • 1
    Ideally the translators should choose the actual established word used in industry for the target language. Just because a Wikipedia translator translated an article title that way, doesn't mean that's the established way it's done in that language. Maybe the Wikipedia translator wasn't well-versed in computer terminology in his own language and was just taking an educated guess. – Brandin Sep 08 '15 at 14:49
  • I just used Wikipedia as an example because it's hard to find any other places where function overloading (and not overloading as a general term) is translated to multiple languages. I suppose that most of the articles are made by people who understand the term (they are not only the translation of the English article), and I know that in Hungarian the most common term is the direct translation (in books, university etc.), but there are also some people, who say it's a bad translation, so they use the English phrase. – hunyadym Sep 09 '15 at 10:50
  • See also this SE discussion, which talks about "overloading" mathematical operators. http://mathoverflow.net/questions/7389/what-are-the-most-overloaded-words-in-mathematics Q - if you couldn't use "overloading" to describe what is meant here, what *would* you say? – Brandin Sep 09 '15 at 12:55
  • 1
    @brandin That question originally asked what are the most “overused” words in mathematics, then changed it to “overloaded” because the word *overused* is overloaded. This is *overloaded* in the linguistic sense that Jules brings up in a comment to my answer. – Davislor Jan 22 '18 at 11:47

1 Answers1

11

This doesn’t answer the question definitively, but the earliest use of it I can find is by John McCarthy in 1966. As described by John Peck, recalling several years later one of the discussions about the Algol standard in Warsaw: “What I can remember of that meeting was the insistence of John McCarthy, that any new language should have what he called overloading of operators. This would eventually became the operation declarations of ALGOL 68.” So the term caught on because of John McCarthy. Or at least it was so obscure in 1966 that McCarthy needed to explain it to the other leading language designers in the world and his usage stood out to the other participants as remarkable. Unfortunately, he passed away in 2011 and I can’t find anything online where he talked about why he called it that, if he coined the term himself, or if there’s any story behind it.

As a commenter informed me, Bjarne Stroustrup explicitly says that he took the idea from Algol when he designed C++ in the early ’80s. A Google Ngram search shows that the phrases “operator overloading” and “overloaded operators” were virtually unheard-of before the ’80s. It doesn’t seem to be how mathematicians back then talked about the way the + sign could denote any group operation.

Jules in the comments gives a plausible source for McCarthy’s use of the term: linguists had been referring to the double meanings of words as “semantic overloading” for decades before 1966. McCarthy’s papers show he was familiar with the field and its terminology. (He also once wrote, “The squabbles among linguists remind me of a saying of my mother-in-law, a retired farmer’s wife. ‘When the chickens start cannibalizing one another, the only thing to do is to butcher the lot or sell them to someone else and start over.’”)

Davislor
  • 1,513
  • 10
  • 13
  • 2
    Unfortunately I can't be sure, because I can't actually find a citation for it that predates 1966, but my suspicion is that he borrowed the term from linguistics, where "semantic overload" is a term referring to situations where a word has multiple distinct meanings. Unfortunately, the earliest published article I can find using the term like this is from [1971](https://www.jstor.org/stable/412376), but it seems unlikely back then that linguistics, an established discipline, would have borrowed terminology from computer science, the newcomer to the field. – Jules Jan 21 '18 at 23:31
  • 2
    ... ah, no, here we have an earlier occurrence of the term in liguistics: [Malkiel Y, The Word Family of Old Spanish *recudir*, Hispanic Review, 1946](https://www.jstor.org/stable/470048) -- on p. 124: 'At this juncture the question may be posed, Why was *recudir* discarded from the Spanish lexicon? Certainly not on account of its "semantic overload," since the formation that replaced it, namely *acudir*, shows an equally, if not more, complicated system of meanings.' -- it's clear from this sentence that it was being used then with effectively the same meaning as we use it today in CS. – Jules Jan 22 '18 at 00:02
  • Stroustrup indeed explicitly refers to Algol operator overloading in the *Design and evolution of the C++ language*, which confirms that this is the source. – Christophe Jan 22 '18 at 08:33
  • @Jules That’s very plausible. McCarthy contributed to the field of computational linguistics, so he was familiar with the jargon of linguists. It’s unfortunately difficult to search for John McCarthy and linguistics, because the name “John McCarthy” is overloaded: a different John McCarthy is a famous linguist. But searching the late computer scientist’s papers for the word “overload” does not turn up any smoking gun. – Davislor Jan 22 '18 at 11:23
  • @Christophe And a Google Ngram search shows that virtually no one talked about “overloading” operators before the ’80s, so it wasn’t a term commonly used in mathematics before 1966 for, hypothetically, how the **+** sign could denote any group operation. I can’t rule out that someone used it in that context and that’s how McCarthy heard it as a math student, though. – Davislor Jan 22 '18 at 11:52
  • 1
    Related: the earliest example of "operator overload" in the ACM digital library is [this 1971 paper](https://dl.acm.org/citation.cfm?id=811424) simulating the workload of a pair of (human) operators running a computing machine. – Graham Lee Jan 22 '18 at 13:48
  • @Jules Indeed, the origin of the term is linguistics. With google book, one can easily find som references to "semantic overloading" (in the sense of several meanings) in books of the thirties and the forties. The oldest I could find is from [1937](https://books.google.be/books?id=OzBaAAAAYAAJ&q=%22SEMAntic+overload%22+iorgu+iordan&dq=%22SEMAntic+overload%22+iorgu+iordan&hl=en&sa=X&ved=0ahUKEwiS1aaN3uvYAhUHYVAKHc3tAP0Q6AEIJDAA) and the term was important enough to be included in the index. – Christophe Jan 22 '18 at 14:08
  • Whereas *overload* and its inflected forms don’t appear in group theory textbooks published before 1966, so far as Google Books knows. – Davislor Jan 22 '18 at 20:16