Skip to topic | Skip to bottom
Home
Publications
Publications.20030521-Seminar-ClementVasseur-Transformers-Slidesr1.3 - 17 Jun 2008 - 09:17 - RolandLevillaintopic end

Start of topic | Skip to actions
Clément Vasseur. C++ disambiguation in Transformers. CSI Seminar May 2003

C++ parsing is the most critical part of the Transformers project, which should allow us to perform various program transformations on C++ source code. The C++ grammar is well known to be very ambiguous and difficult to parse. More precisely, it is impossible to correctly parse C++ without semantic informations, such as type-name symbol tables. Our approach uses the sglr technology : instead of building a parse tree, we have a parse forest with each possible parse tree, and we must eliminate the wrong ones. This is the "disambiguation" process. Using the Stratego language, we need to gather various semantic informations from the parse forest, to be able to cut the wrong trees, because at the end we need only one tree. This part is quite complicated because C++ allows a lot of non-trivial programming constructs, like templates.

In this presentation, we will see how the Transformers project allow us to perform transformations on C++ source code, and we will focus on the disambiguation problem.


to top

PublicationForm
Logo:
Category: SoftwareTools, ProgrammingLanguages
Title: C++ disambiguation in Transformers
Authors: Clément Vasseur
Type: OralPresentation
Whereprefix:  
Where: CSI Seminar
Ref:  
Place:  
Date: May 2003
Note:  
Lang: english
Keywords: transformers, c++, parsing, program transformation
Status: published


You are here: Publications > 20030521-Seminar-ClementVasseur-Transformers-Slides

to top

Copyright © 1999-2010 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback