On 20-Mar-14 14:35, gautier_niouzes@hotmail.com wrote: > Good luck with this ambitious project. Thank you. > A challenge is that at some point the AST knows too much about the program. Ah, you mean things like visibility and private/public access to things, right? > I've developed a similar system 25 years ago (in Turbo Pascal!) for Ada 83. Heh! so then this is in a lot of ways a re-hash of your work. :D If you'd like to share tips/, info, or even stories about it I'd love to hear. > The pros: no more parsing, compilation is straightforward, links are readily available, > the system is able to manage the layout itself, to indent etc. Much the same that I was thinking. > The cons: formatting rigidity, and if the programer needs to make a big change, use > another package, types and so on, plus all depending changes, he needs to have his > program "incorrect" for a while. In my system, it meant export to text, rework the > text and then reimport the changed text. Too cumbersome - and tools like GPS offer > nowadays navigation tools and autocomplete even in the middle of a such a rework, > thanks to smart guessing, and all that at text level... Ah, I see. The export/edit/import is certainly a way to handle that -- I was leaning towards a sort of buffer/workspace methodology, keeping the inconsistent things separated out of the [main/shared] system. One of the references "Workspaces and Experimental Databases: Automated Support for Software Maintenance and Evolution" (URI: http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.26.2533&rep=rep1&type=pdf ) shows an interesting way to use a hierarchical structuring of databases to handle consistency/correctness for a project.