kenmo wrote:Can't some plugin-like functionality be achieved now by adding pre-processors to the IDE tools?
Of course it can. The problem is the parser for the PB
language which is needed by most tools. You may want
to look at how much work was required to get a reasonably
working
lexer for PB. PB has so many corner cases in its
syntax that it is nearly impossible to write a parser for it
that will parse the exact same way as the compiler does.
(I was tempted to code one many times, but always
backed off because of the work involved and the lack
of specification.)
IMO this is the reason why there will never be reliable
source-level tools available for PB.
Then again, tools working on PB source directly will never
implement stuff like
efficient function-inlining, constant-
propagation or common sub-expression elimination because
they'd be required to parse the source, create some IR,
transform this IR and somehow be able to create PB source
again. No one will get that to work reliably.
Tools like my (now defunct)
Optimizer work on the ASM
level directly. This would theoretically allow one to do anything,
but it is well known that optimizing on the lowest-level will never
be as fruitful as optimizing at a higher level like the IR. There
were many optimizations which were just impossible to
do there.
skywalk wrote:Would the plug-in system be in addition to or a replacement of freak's proposed IDE automation?
It would have nothing to do with it as far as I can tell. My
proposal works together with the compiler and has nothing
to do with the IDE (except for optional integration).