Pretend for a moment that Javascript had macros (sweet.js where are you?) and the Angular syntax was more explicit:
myModule.provider ProviderName
inject $scope, $document, SomeOtherDependency
{
your code here
}
The last thing you'd expect is a syntax where the injected dependency names were chosen by the implementor of the provider.Javascript's greatest weakness is that it's native syntax is poorly suited for creating language like extensions. The result is that things like modules, imports, etc. tend to be very verbose and noisy.