>>36
There's a shell script that's run by almost every shell. It's called /etc/profile. If a shell doesn't use POSIX syntax, it can't read it, and doesn't have a properly set-up environment. If it has broken, POSIX-like syntax, it may cause strange errors.
Having a separate profile in /etc for each shell is like maintaining separate versions of a web site for each browser. It's much harder to maintain: any changes have to be duplicated across several files, and the maintainer needs to know the subtle differences between each syntax.