Syntax highlighting shows something that's already visible. What could be highlighted that isn't already visible?
Undefined variables? Those really should get a squiggly underline, as with spell checkers. Some IDE probably does that already.
Anything more subtle?
A key point in language design and program tooling is detecting that thing A, which needs to be consistent with thing B far away in some other module, isn't. Most hard to find defects involve some distant relationship. What could be done with color or other automatic annotation to help?
It spell checks code by separating camelCaseWords and identifiers_with_underscores. Sure it's not "smart" but for dynamic languages, at least for me, it helps prevent bugs. A static language the IDE would already have the info it needs to highlight a non-existent property but in a dynamic language generally not so I've found it quite useful.
Undefined variables? Those really should get a squiggly underline, as with spell checkers. Some IDE probably does that already.
Anything more subtle?
A key point in language design and program tooling is detecting that thing A, which needs to be consistent with thing B far away in some other module, isn't. Most hard to find defects involve some distant relationship. What could be done with color or other automatic annotation to help?