[cfe-dev] Clarification for term "AST"

Markus Elfring Markus.Elfring at web.de
Fri Feb 22 23:38:45 PST 2013


> A complete separation of concerns is impossible though,

I get the feeling here that your view presents some limitations which I 
try to reduce.


> and Clang's implementation is basically at the edge of that limit.

I am curious how further adjustments will make corresponding software 
evolution more interesting.


> Maybe you could summarize their findings?

Would you like to consider information from documents like the following 
again?
* Adrian D. Thurston:
   A Computer Language Transformation System Capable
of Generalized Context-Dependent Parsing
   http://hdl.handle.net/1974/1629
   http://www.complang.org/colm/thurston-phdthesis.pdf

* Edward D. Willink:
   Meta-Compilation for C++
   http://www.computing.surrey.ac.uk/research/dsrg/fog/FogThesis.html
   http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.157.1250

* Nicholas A. Kraft , Brian A. Malloy, James F. Power:
   A Tool Chain for Reverse Engineering C++ Applications
   http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.85.4682
   http://g4re.sourceforge.net/


> Yes, but the existing grammar of the language is not open for debate.

The debate will continue just by the fact that a lot of software 
designers and developers struggle with the proper handling of 
context-sensitive/dependent (programming) languages (like with C++).
http://stackoverflow.com/questions/6088064/context-sensitivity-vs-ambiguity


> However, I think that as you gain a better understanding of the
> complexities of the task that Clang performs you will come to appreciate
> the current design as having quite a clear separation of concerns.

I imagine that further fine-tuning will be useful at various places.

Regards,
Markus



More information about the cfe-dev mailing list