Perl has a “Little Language” philosophy
Small numbers of variables means less concern about name conflicts... declarations not required.
Perl grows out of a systems-programming context.
Conciseness was valued over transparency.
The meanings of language features are often dependent on context (e.g., list context vs scalar context).
One system may consist of many Perl scripts.