I love it when outsiders to a community (like journalists) get things like this wrong, because it makes me rethink my mental categories.
We have absorbed a culturally agreed set of differences between a computer language, a platform, a framework, a library, an OS... and we're comfortable with licencing being coextensive with these units without getting confused, for example.
I'm not so sure about the library vs framework agreement. Many packages that would historically be labeled libaries, now call themselves a framework, making it even harder for the real frameworks to stand out among the clutter.
Isn't the difference generally that a library is used by client code, whereas client code sits 'inside' (for varying levels of inside) a framework? That's my rule-of-thumb anyway.
We have absorbed a culturally agreed set of differences between a computer language, a platform, a framework, a library, an OS... and we're comfortable with licencing being coextensive with these units without getting confused, for example.