Skip to main content

Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "CDT/summitfall2008/Indexing Session"

m (New page: == Indexing break-out session == === C++0x === The standard not due until around 2010. For practical purposes, nearer the end of this year. GCC plans to support this 2009. Some awareness...)
 
m (C++0x)
Line 9: Line 9:
 
Which parser to extend? Performance/characteristics of the implementations needs to be understood.
 
Which parser to extend? Performance/characteristics of the implementations needs to be understood.
  
Action: No work for CDT 2009. Get an understanding of the standard. Start a wiki page and track the impacts of each language feature
+
Action: No commitment for any work for CDT 2009. Get an understanding of the standard. Start a wiki page and track the impacts of each language feature
  
 
==== Language Variants ====
 
==== Language Variants ====
Line 16: Line 16:
  
 
Language configurations vs Language variants - it makes more sense to have a language be configurable rather than a distinct language for each set of options. On the UI side we should consider language (C,C++,UPC) mappings, that indirect to specific languages (C89,C99,C90,C++0x,UPC). For example, the user marks files as C or C++, but can reconfigure which specific dialect is used for these. The language would instantiate a parser.
 
Language configurations vs Language variants - it makes more sense to have a language be configurable rather than a distinct language for each set of options. On the UI side we should consider language (C,C++,UPC) mappings, that indirect to specific languages (C89,C99,C90,C++0x,UPC). For example, the user marks files as C or C++, but can reconfigure which specific dialect is used for these. The language would instantiate a parser.
 +
 +
Some discussion of wanting to sync build and parser settings. Concern over the complexity.
 +
 +
=== Indexing features ===
 +
 +
* we could double-buffer indexes - make current index read-only. Start a new index with new settings. Swap when done.
 +
* Resume of indexing between eclipse stop and start, and cancelled.
 +
 +
=== Search-path-less Include resolution ===
 +
 +
A bunch of heuristics to guess include paths from project content. Two metrics of closeness for ambiguity resolution. Structure for hashing for include lookup for large search paths, lazily constructed.

Revision as of 10:38, 24 September 2008

Indexing break-out session

C++0x

The standard not due until around 2010. For practical purposes, nearer the end of this year. GCC plans to support this 2009. Some awareness of features in the team.

  • Name resolution
  • Index, AST modelling them

Which parser to extend? Performance/characteristics of the implementations needs to be understood.

Action: No commitment for any work for CDT 2009. Get an understanding of the standard. Start a wiki page and track the impacts of each language feature

Language Variants

Two ways of doing language variants - DOM Parser and extension objects, LPG Grammar hierarchies.

Language configurations vs Language variants - it makes more sense to have a language be configurable rather than a distinct language for each set of options. On the UI side we should consider language (C,C++,UPC) mappings, that indirect to specific languages (C89,C99,C90,C++0x,UPC). For example, the user marks files as C or C++, but can reconfigure which specific dialect is used for these. The language would instantiate a parser.

Some discussion of wanting to sync build and parser settings. Concern over the complexity.

Indexing features

* we could double-buffer indexes - make current index read-only. Start a new index with new settings. Swap when done.
* Resume of indexing between eclipse stop and start, and cancelled.

Search-path-less Include resolution

A bunch of heuristics to guess include paths from project content. Two metrics of closeness for ambiguity resolution. Structure for hashing for include lookup for large search paths, lazily constructed.

Back to the top