Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

“Applications” were a subset of “Programs” and generally covered productivity type software like image editors, word processors, etc. Then you had “games”, “system software” and I think possibly “tools” or “utilities” too (the latter which were single purpose software like a clock or calculator).

It’s more of a recent trend to call all software “applications” (or “apps”) irrespective of their utility. This is something Apple popularised on the iPhone.



I always remembered the other way around: applications being composed by one or more programs (e.g. a lot of software had more than one executables, especially on DOS). Also i highly doubt there was any specific target for "applications", otherwise, e.g., Windows SDK wouldn't use the term to describe, well, all applications (for example the Win32 Programmer's Reference that came with many compilers in the 90s starts with "The Microsoft Win32 Programmer's Reference contains the application programming interface (API) set needed to write applications for Windows® 95 and Windows NT." - and the entire reference uses the term application instead of program)


“Program” can refer to executables if you’re talking in the context of old programming languages such as Pascal and COBOL as they’d literally have a “Program” statement. But I don’t recall anyone calling individual executables anything other than exes on Windows.

As for the API naming conventions, Wikipedia describes the use of “Application” pretty well: https://en.wikipedia.org/wiki/Application_software#Metonymy


> “Program” can refer to executables if you’re talking in the context of old programming languages such as Pascal and COBOL as they’d literally have a “Program” statement.

When I was younger, I wrote my own programs in GW-BASIC (and later QBASIC). I definitely remember calling them "programs" at the time. I taught myself programming from books in the school library (neither of my parents knew how to do it), and they definitely used the word "program" for what I was learning to write.

But while Pascal has a "PROGRAM" statement, most BASIC dialects (including Microsoft's) don't. COBOL doesn't have a "PROGRAM" statement either, although it does have an "EXIT PROGRAM" statement.

So I don't think whether something is called a "program" or not has anything to do with what language it is written in.

> But I don’t recall anyone calling individual executables anything other than exes on Windows.

Here's a software manual from 1993 – https://books.google.com/books?id=jAqUEgrLBa8C&pg=PA14 – you can see on that page the application is divided into a number of executables – "the core TS.EXE program" and a number of "General support utilities", one of which ("PRINTPCX.EXE") is described as "A program to print graphs". Although the other executables are not explicitly called "programs", it seems clear to me that "program" and "executable" are synonymous in the usage of the manual's authors.

That is admittedly an application for MS-DOS, not Windows. But I don't believe there were any great differences in terminology in this area between MS-DOS and Windows.


> But while Pascal has a "PROGRAM" statement, most BASIC dialects (including Microsoft's) don't. COBOL doesn't have a "PROGRAM" statement either, although it does have an "EXIT PROGRAM" statement.

It was PROGRAM-ID in COBOL: https://en.wikipedia.org/wiki/COBOL#Hello,_world

> Here's a software manual from 1993 – https://books.google.com/books?id=jAqUEgrLBa8C&pg=PA14 – you can see on that page the application is divided into a number of executables – "the core TS.EXE program" and a number of "General support utilities", one of which ("PRINTPCX.EXE") is described as "A program to print graphs". Although the other executables are not explicitly called "programs", it seems clear to me that "program" and "executable" are synonymous in the usage of the manual's authors.

That's a utility and I'd already said "utilities" were a classification of programs. The GPs point wasn't about utilities though.

> That is admittedly an application for MS-DOS, not Windows. But I don't believe there were any great differences in terminology in this area between MS-DOS and Windows.

Anecdotally I remember all executables being talked about as "programs" in the DOS era -- which might also be a throwback to when all software was written as a complete program and all executables were commands (eg pre-dynamically linked libraries so shared libraries would either have to be their own command or compiled into the each executable).

But in fairness, terms like "program", "utility", "application" were, to some extent, rather fuzzy descriptions back then anyway. At least in the context of what we're describing anyway.


I wasn't referring to API, but to the fact that the Windows SDK uses the term "applications", e.g. "needed to write applications for Windows® 95 and Windows NT". They use the term "application" everywhere in the documentation, not just in the context of APIs.


Indeed but what you’re describing there is just more examples of metonymies like I’d already discussed in my previous post.

Microsoft obviously need a descriptive term (“software” and “program” does not work as a drop in replacement in all instances) and “application” is well suited. But that doesn’t mean that APIs (“application programming interface”) can’t be used by systems software, for example. It’s just “application” is a broad enough term to be the clearest term in most instances.

I should add, we are talking about the Win 3.x and possible very early 9x era. As time went on “application” did lose its specificity. An example of this is how progman.exe grouped software vs how the Start menu group software.


You originally wrote that applications were a subset of programs and this changed because of iPhone, which as i wrote is wrong since the term "application" was used to refer to programs way before iPhone even existed - using Windows 3.1 as an example of something from 1990 that used that term. With the quote i was referring to the use of the term "application" not the "API". The SDK help file uses the term "application" everywhere to describe software for Windows without making any distinction like the one you wrote in that message above.

Now, the term "application" might have had a more specific meaning before Windows existed (even Windows 1 seem to use the term application) but this is going back decades before iPhone was introduced.


> You originally wrote that applications were a subset of programs and this changed because of iPhone

You’re right I did. Agh truth be told I don’t know when the shift happened (it all feels like ancient history these days) but I do remember people making a distinction between applications, utilities, games and systems software, which they don’t now. I even remember teaching material making that distinction (old enough to have been in Uni when GUI applications were just shifting away from novelty).

Also you keep saying that I’m missing your point about APIs but I’m not. My point is that Windows documentation isn’t a legal document and thus using the term “application” for stuff that could mean any software is perfectly valid. Even now many make a distinction between systems software and applications yet the contents in most of the reference material applies just as much to systems software as it does application software. This is what is meant by metonymic purposes of the term.


I mentioned the Windows documentation not as an authoritative source for what "application" means, but more as an informal source for how people even in the 80s used "application" to mean any sort of software.

I mentioned Windows because it is the most likely to be known, but it also applies to other systems. For example the GEM installation manual[0] uses the term "application" to refer to non-system software and even seems to make the distinction between applications and programs where applications is the whole and program is a part of the application (notice in section 4 where it mentions that to install an application you use its installation program).

[0] http://www.bitsavers.org/pdf/digitalResearch/gem/GEM3/5125-2...


Which is another example of metonymy. Did you read the link? I've referenced this several times now and it explains every example you've given.

In any case, I've also said it was a bit of a fuzzy term and it feels like we're ostensibly arguing similar points.


I did read the link, but i'm not sure how to interpret it, it just mentions that the word application can have several uses. Which, ok it does, but it doesn't sound like it was contradicting anything i wrote about "applications" not being just about specific types of software like productivity or even a subset of "programs" (the GEM manual even shows how it was used in the opposite where an application can be made up of multiple programs).




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: