From: Stefan S. <sse...@ar...> - 2004-10-19 13:03:44
|
> From: SF Markus Elfring [mailto:el...@us...] > Sent: October 19, 2004 07:47 > > Right now I'm aiming at a modular structure with three or > four (logical) > > modules: PTree, SymbolTable, AST, and Processor. That's roughly in > > alignment with the above papers, and a natural (smooth) evolution > > for the OpenC++ design itself. > > How much can be reused from the Keystone-"Clouseau API" for > the high level AST interface that was discussed before? probably nothing, for a variety of reasons: * as discussed before, OpenCxx's approach is to attach a structure (the parse tree) to a buffer, instead of constructing an independent structure that uses its own storage. It would be much more sensible to push that further and let the AST be a superstructure on top of the parse tree instead of using existing AST code, i.e. the AST should be dependent on the PTree module. * Keystone is, as you already mentioned, licensed under GPL, and so not suitable for middleware / framework development. Anyways, as Grzegorz and I discussed some months ago, an AST module can and should really be something very lightweight. It doesn't add new functionality, it only makes existing information more accessible and more convenient to use. The real information providers are the PTree and the SymbolTable modules, for syntactic and semantic analysis respectively. Regards, Stefan |