When is a language considered a scripting language?

programming-languagesscriptingsemanticsterminology

What makes a language a scripting language? I've heard some people say "when it gets interpreted instead of compiled". That would make PHP (for example) a scripting language. Is that the only criterion? Or are there other criteria?

See also:

Best Solution

Simple. When I use it, it's a modern dynamic language, when you use it, it's merely a scripting language!

Related Question