[ragel-users] Re: 6.1 and further changes to the language

Adrian Thurston thurs... at cs.queensu.ca
Fri Feb 15 04:05:10 UTC 2008


I just committed an implementation. I was surprised at how little code
it was.

-Adrian

Manoj Rajagopalan wrote:
> Now that I understand it, it's a great idea! I just switched to using a 
> different approach because Ragel lacked this feature.
> 
> -- Manoj
> 
> 
> Adrian Thurston wrote:
>> Hi Wncent, here's an example:
>>
>> main := |*
>>    'foo' %{ /*leaving action*/ } => { /*scanner pattern action*/ };
>> *|;
>>
>> -Adrian
>>
>> On Feb 14, 3:13 pm, Wincent Colaiuta <w... at wincent.com> wrote:
>>> El 14/2/2008, a las 18:37, Adrian Thurston escribió:
>>>
>>>> Hi,
>>>> I'm planning a 6.1 release with further changes to the language that
>>>> will break backwards compatibility.
>>>> When scanners were first made there was no consideration to getting
>>>> leaving actions at the end of a scanner pattern to execute. Now it
>>>> stands out to me as an inconsistency that needs to be fixed.
>>>> I don't expect people to embed a leaving action right before the
>>>> pattern
>>>> action is specified. You should still use the scanner action instead.
>>> Can you clarify what you mean by "scanner action"? Just to make sure I
>>> understand what you're saying here.
>>>
>>>> The problem is with machine definitions used at the end of a scanner
>>>> pattern that have leaving actions inside. These may do some cleanup or
>>>> other final processing at the end of a machine definition and should
>>>> be
>>>> executed.
>>> Cheers,
>>> Wincent
>>>
> 
> > 
> 



More information about the ragel-users mailing list