Source filters are more difficult because they can have arbitrary effects on the parse of the source code. Possibly some new construct would be necessary to (at least) document the effect of a source filter on the AST.
As tye mentioned, BEGIN {} blocks (and equivalent constructs) are much more problematic, as they are truly computed at runtime. Perl is arguably much more context-sensitive than languages like C# or Java, but with a few simple heuristics a very simple static analysis could be performed.
I also don't see why it's all or nothing... the IDE could get it 99% right and could deal with parser/analyzer warnings in a flexible policy-based (or case-by-case) manner (perhaps with configuration from the user).
I'm not saying it would be easy... just possible. Interest would be the limiting factor.
-David
In reply to Re^5: Slow evolution of Perl = Perl is a closed Word (use)
by erroneousBollock
in thread Slow evolution of Perl = Perl is a closed Word
by Anonymous Monk
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |