> One goal of this refactoring is the determination and documentation of > the actions, required in certain pieces of the grammar.
Why should we need these actions? > In the first > step the semantic code simply reflects the actions in the existing code, > i.e. *how* something is done. In further steps documentation can be > added, Yes, can ... > that also reflects *why* things are done in exactly this way, > possibly reveiling flaws and duplicate (maybe differerent) > implementation of the essentially same tasks. Such multiple > implementations can be replaced by unique semantic methods, in a layer > on top of the basic procedures and methods of the involved classes. The > result is a more stable compiler, where changes in one part can not > break the code in other parts any more. I still don't see a need to get the parser more robust, if it's possible at all. The front end including the parser is one of the simplest, robust and stable parts of the compiler. With all the drawbacks like: - people knowing the old code for 15 years having to dig into new code - slower - code spread over multiple locations - lost svn blame history - last but not least, you coding style does not follow the compiler code style _______________________________________________ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-devel