Walter Bright дµ½:

> Jonathan M Davis wrote:
> > On Thursday 21 October 2010 15:01:21 Walter Bright wrote:
> >> 5. generally follow along with the C++ one so that they can be maintained
> >> in tandem
> > 
> > Does this mean that you want a pseudo-port of the C++ front end's lexer to 
> > D for 
> > this? Or are you looking for just certain pieces of it to be similar?
> 
> Yes, but not a straight port. The C++ version has things in it that are 
> unnecessary for the D version, like the external string table (should use an 
> associative array instead), the support for lookahead can be put in the 
> parser, 
> doesn't tokenize comments, etc.
> 
> Essentially I'd like the D lexer to be self-contained in one file.
> 
> > I haven't looked at the front end code yet, so I don't know how it works 
> > there, 
> > but I wouldn't expect it to uses ranges, for instance, so I would expect 
> > that 
> > the basic design would naturally stray a bit from whatever was done in C++ 
> > simply by doing things in fairly idiomatic D. And if I do look at the front 
> > end 
> > to see how that's done, there's the issue of the license. As I understand 
> > it, 
> > the front end is LGPL, and Phobos is generally Boost, which would mean that 
> > I 
> > would be looking at LGPL-licensed code when designing Boost-licensed, even 
> > though it wouldn't really be copying the code per se since it's a change of 
> > language (though if you did the whole front end, obviously the license 
> > issue can 
> > be waved quite easily).
> 
> Since the license is mine, I can change the D version to the Boost license, 
> no 
> problem.
> 
> 
> > License issues aside, however, I do think that it would make sense for 
> > std.lang.d.lex to do things similiarly to the C++ front end, even if there 
> > are a 
> > number of basic differences.
> 
> Yup. The idea is the D version lexes exactly the same grammar as the dmd one. 
> The easiest way to ensure that is to do equivalent logic.

dmd2.050 October will release it ? thank's

Reply via email to