[Github-comments] [geany/geany] New tagmanager query module (#1187)

Jiří Techet notifications at xxxxx
Tue Aug 30 17:06:11 UTC 2016


>I wonder what makes you guys think this list vs tree(AST) makes things
fundamentally unworkable? It's a complete non-issue to me. It's just a
representation that can be converted as needed.

No, it's not just a representation - there's completely different information stored in AST. AST contains the complete source code in the form of a tree - see e.g. the picture here:

https://en.wikipedia.org/wiki/Abstract_syntax_tree

You could dump the tree and get back the original source code (except things like whitespace). AST contains everything - operators, keywords, control flow structures etc. The shape of the tree also captures things like operator precedence, block nesting etc.

Moreover, the tree will be very language-specific as it really captures the whole syntax of the given language.

ctags doesn't generate AST and it never will because it only serves for symbol indexing. The only output of it is a list of named symbols, nothing else is stored during parsing. ctags always creates just a flat list of tags - there's no need to store them into tree - you won't gain any extra information by this. This won't "improve" TM.

I believe for a really smart autocompletion you need the info from AST and this is so language-specific that it cannot be done in a generic way.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/geany/geany/pull/1187#issuecomment-243508967
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.geany.org/pipermail/github-comments/attachments/20160830/0c151ec6/attachment.html>


More information about the Github-comments mailing list