As the title says, When Does a Language Die. When all Authors of the language die etc?.
That depends on your definition of "dead":
- when it doesn't change/improve anymore
- when no one is using it anymore
- when no one is left who can read it
- when the last document written in that language is gone (otherwise, someone might learn the language from it)
When nobody uses it. Or you think the people that started the English language are still around? :)
With spoken languages, there are a couple definitions: (1) when no one speaks the language, or (2) when no one uses the language as their primary language. You could apply the same criteria to programming languages.
Programming language dies, when there are no tools (compilers, libraries) that work on relatively modern platforms. Then nobody can use the language except on vintage platforms.
"When nobody uses it" is not that good definition - how can you know that nobody uses it? You can't.
We like to think that a language is dead when it quits being maintained. However, the reality is that a language dies when there is no software left that is written in it. As long as that software is still around, somebody will have to maintain it at some point. I'm not 100% sure on this, but I'd guess that there are few if any languages that have died by this definition.
IMO, in the context of computer languages, a language is truly dead when there are no more problems that someone says "This would be straightforward to solve in "
There are lots of reasons why it is no longer straightforward to use a language:
- no one knows the syntax any more
- the compilers aren't available for the machines you have available
- the compilers don't create object/executable files for the target machine
There are probably others, but those are the ones that spring to mind.
When exactly this occurs is hard to know, but it has happened before, and it will happen again.
Two conditions I'd say:
- No one is choosing that language for new projects.
- There are no plans to update / improve the language.
If both of these are true, then the number of projects that use the language can only go down until it reaches zero.
Whereas if people are still using it to solve new problems, there might be an incentive to improve it at some point. And if someone is still working to improve it, then people might start using it again.
Programming languages can never truly die as long as the compilers and the computers that the programs run on are still in use.
In practice, a programming language starts to die when the authors stop maintaining it, and are effectively dead when people stop writing new programs. It doesn't matter if old programs are still running, since the source code isn't needed to run the programs.