Proposal for SentinelInputRange

Dmitry Olshansky dmitry.olsh at gmail.com
Thu Feb 28 07:41:23 PST 2013


28-Feb-2013 19:31, Andrei Alexandrescu пишет:
> On 2/28/13 5:54 AM, Walter Bright wrote:
>> On 2/27/2013 11:55 PM, Jonathan M Davis wrote:
>>>> Again, please see how lexer.c works. I assure you, there is no double
>>>> copying going on, nor is there a double test for the terminating 0.
>>>
>>> I know what the lexer does, and remember that it _doesn't_ operate on
>>> ranges,
>>> and there are subtle differences between being able to just use char*
>>> and
>>> trying to handle generic ranges.
>>
>> Hence the need to invent SentinelInputRange.
>
> I don't think the sentinel input range is a blocker for redoing the
> parser (with ranges) in D. This discussion has probably run its course.
> The right thing to do at this point is port the lexer and figure what
> primitives are necessary from its input.
>

And it wasn't the problem that std.d.lexer had anyway. Check the latest 
results.

The merit of sentinel range IMHO is largely in tapping into C-strings 
and the like more naturally.



-- 
Dmitry Olshansky


More information about the Digitalmars-d mailing list