So far I didn't find an earlier one than Dan Ingalls' "The Smalltalk-76 Programming System" (https://dl.acm.org/doi/10.1145/512760.512762) published in January 1978, what surprised me.
Remarkably the term is also used in developmental psychology, especially for child development; I found publications about "object-oriented behaviour" from the sixties, e.g. http://www.jstor.org/stable/1126427 from 1966.
Does anyone have earlier CS literature references than 1978?
First of all, I would like to thank everyone here and on Reddit who researched and provided references for their efforts and contributions.
Here is the summary of the findings as they stand today:
1) The term "object-oriented" was known and used throughout the sixties and seventies in various domains, such as developmental psychology, library and information science, and systems engineering.
2) The term was also used in computer science, at least since 1971, e.g. applied to database systems, operating systems, structured exception handling and structured analysis; see e.g. https://archive.org/details/databasesystems0000cour.
3) The term "object-oriented" was applied to a programming language for the first time in the MIT CSG Memo 137 (April 1976) by Anita K. Jones and Barbara H. Liskov; a similar text was published in the IEEE Transactions on Software Engineering later in the year (see see https://ieeexplore.ieee.org/document/1702384).
This is an amazing result and sheds new light on the history of object-oriented programming terminology.
If you want to have a look at the references and discussions yourself, see the comments here and on Reddit: https://old.reddit.com/r/ProgrammingLanguages/comments/156ng....
[1]: http://homepages.cs.ncl.ac.uk/brian.randell/Papers-Articles/....
[1]: Page 67 in *Edwards, T. (1970). Library & Information Science Abstracts* mentions: "There are 2 retrieval systems: the first is ALBUM, an object-oriented retrieval system for the print-out of indices, names and subjects and their thematic relations."
https://archive.org/details/sim_library-information-science-...
[2]: Page 140 in *Rustin, R. (1971). Computer Science Symposium Courant 6: Data base systems* mentions: "I feel that there is no inherent antagonism between the relational point of view and the object-oriented network viewpoint in database management."
https://archive.org/details/databasesystems0000cour/mode/2up...
[3]: Series 2 (1963-2001) and Series 3 (1972-2001) of the *Jon L. White collection on Common Lisp at the Computer History museum* contain records of early Lisp developments and object-oriented programming.
https://archive.computerhistory.org/resources/access/text/fi...
[4]: Series 1 (1973-2010) of the *Adele Goldberg papers at the Computer History Museum* contains records related to early SmallTalk development and object-oriented programming.
https://archive.computerhistory.org/resources/access/text/fi...
[5]: Page 4 of *Redell, D. (1974). Naming and Protection in Extended Operating Systems* mentions: "... we can regard the function of the operating system as being the transformation of the basic hardware resources of the computer into a universe of abstract resources or objects, and a set of operations for manipulating those objects. This point of view is often referred to as the object-oriented approach."
https://apps.dtic.mil/sti/tr/pdf/ADA001721.pdf
[6]: A project report by *Eisner, T. (1975). SmallTalk-AT: An Object-Oriented Program development* contains ample mentions of OO.
https://archive.computerhistory.org/resources/access/text/20...
[7]: Table 1 of *Goodenough, J. B. (1975). Structured Exception Handling* contains two mentions of OO.
https://dl.acm.org/doi/pdf/10.1145/512976.512997
[8]: Lastly, page 2 of *Capretz, L. F. (2003). A Brief History of the Object-Oriented Approach* mentions how the object-oriented paradigm amalgamated from some of the earlier references we discussed: "Despite the early innovation of Simula, the term object-oriented became prominent from Smalltalk."
https://ir.lib.uwo.ca/cgi/viewcontent.cgi?article=1047&conte...
I would say the term floated around for a while before some of the explicit mentions above, especially if we include fields as philosophy, psychology and linguistics. I will report back if I come across earlier mentions.
One near hit in a report from RAND Corp (1969), mentioning the "block-structure/procedure orientation of SIMULA" (p. 13)[2].
A really old one, comparing programming language characteristics (1961, p. 337)[3]: "The group also decided that the following language classification methods are relevant:
- Object, descriptive, command, and mixed languages;
- Languages with stratified and unstratified control;
- Sequential and simultaneous communication languages;
- Problem oriented (behavioral) and machine oriented (structural) languages"
Ref [3] also contains a nice comparison table.
Another compares simulation languages of the time, and from eyeing the tables it seems 'object simulation' may have been the ancestral term (1966): "The basic use of a record is to describe an object in the simulated world. The data in the fields of a record describe the 'properties' of the object. The record and its fields are usually given names or identifications; it is conventional to use names which are mnemonics for the object being represented." (p. 729)[4]
Ref [4]'s language comparison tables are also useful here (p. 730-733).
The next talks about objects in a now familiar way (1967): "We do this by defining the objects that 'live' in the system and assigning attributes to them." (p. 32)[5]
The 'object simulation' ancestry is further supported by the following quote from (1963): "Dynamic representation of an object system. A simulation model of an object system is itself a system whose behavior may be interpreted according to a rule which renders a description appropriate to the behavior of the object system." (p. 2)[6]
More evidence for this from (1964): "The system to be simulated may be regarded as a set of actions which manipulate a set of objects." (p. 328)[7]
[1]: The Archive.org entry says 1969 but the book preface dates 1968. *Hartman, W., Matthes, H., & Proeme, A. (1968). Management Information Systems Handbook: Analysis, Requirements Determination, Design and Development, Implementation and Evaluation (MIS: ARDI). McGraw Hill Text.*
https://archive.org/details/managementinform00hart/page/n565...
[2]: *Kiviat, P. J., & Rand Corporation. (1969). Digital computer simulation: Computer programming languages (p. 0109). Santa Monica, CA: Rand Corporation.*
https://apps.dtic.mil/sti/tr/pdf/AD0684124.pdf
[3]: *Gorn, S. (1961). Some basic terminology connected with mechanical languages and their processors: a tentative base terminology presented to asa x3. 4 as a proposal for subsequent inclusion in a glossary. Communications of the ACM, 4(8), 336-339.*
https://dl.acm.org/doi/pdf/10.1145/366678.366682
[4]: *Teichroew, D., & Lubin, J. F. (1966). Computer simulation—discussion of the technique and comparison of languages. Communications of the ACM, 9(10), 723-741.*
https://dl.acm.org/doi/pdf/10.1145/365844.365851
[5] *Kiviat, P. J. (1967). Digital computer simulation: Modeling concepts. Santa Monica, Califorinia: Rand Corporation.*
https://apps.dtic.mil/sti/pdfs/AD0658429.pdf
[6]: *Lackner, M. R. (1963). The dependency of a simulation language on a theory of systems. System Development Corporation.*
https://apps.dtic.mil/sti/pdfs/AD0296590.pdf
[7]: *Williams, J. W. J. (1964). ESP The Elliott Simulator Package. Comput. J., 6(4), 328-331.*