Working is Java (Eclipse more precisely), I came to value very much the features which it offers related to exploring / manipulating the source code. I’m talking about things like “take me to definition”, “show me where it is used”, refactoring features, etc.
This made me thinking: isn’t really the difference between static and dynamic languages the tooling? The ability of IDE to infer information from the source and use that to provide suggestions / options which are relevant in the given situation? I would say yes. And if so, the tool support will improve (is improving) considerably in the next few years, making the dynamic vs. static languages discussion less relevant…
Just my 2c
Update: forgot to mention two ways IDEs try to implement support for dynamic languages – using predefined dictionary – this is how Visual Studio supports jQuery – or using tracing (watching the program as it runs and taking notes about the objects assigned to variables) – this is how some Smalltalk IDEs do it AFAIK.