+For Next Release
+================
+ -The p varialbe is now set up at the beginning of a scanner action, rather
+ than at the end. This leaves scanner actions free to manipulate p and
+ removes the need for the special holdTE and execTE (TE for tokend) versions
+ of hold and exec. It also removes the need to set p = tokend-1 immediately
+ before any control flow. We loose the ability to determine where in the
+ input stream a scanner action is executed, however this information is of
+ little use because it is primarily an artifact of the scanner implementation
+ (sometimes the last char, other times later on). The gains of of this change
+ are consistency and simplicity.
+
Ragel 5.21 - May 9, 2007
========================
-Fixed an inconsistency in the value of p following an error. In the C
The tokstart/tokend variable should be shortened to ts/te.
-Adjust p before executing token actions, eliminating the transfer from tokend
-to p following an action. Loose the ability to determine where in the input
-stream a scanner action is executed. Gain consistency, simplicity. Eliminate
-tokend, replace it with the marker variable and add ftokend/ftoklen.
+Eliminate tokend, replace it with the marker variable and add ftokend/ftoklen.
================
END 6.0 Features
data in multiple buffer blocks, the \verb|fhold| statement should only be used
once in the set of actions executed on a character. Multiple calls may result
in backing up over the beginning of the buffer block. The \verb|fhold|
-statement does not imply any transfer of control. In actions embedded into
-transitions, it is equivalent to the \verb|p--;| statement. In scanner pattern
-actions any changes made to \verb|p| are lost. In this context, \verb|fhold| is
-equivalent to \verb|tokend--;|.
+statement does not imply any transfer of control. It is equivalent to the
+\verb|p--;| statement.
\item \verb|fexec <expr>;| -- Set the next character to process. This can be
used to backtrack to previous input or advance ahead.
embedded into transitions, the \verb|fexec| statement is equivalent to setting
\verb|p| to one position ahead of the next character to process. If the user
also modifies \verb|pe|, it is possible to change the buffer block entirely.
-In scanner pattern actions any changes made to \verb|p| are lost. In this
-context, \verb|fexec| is equivalent to setting \verb|tokend| to the next
-character to process.
\item \verb|fgoto <label>;| -- Jump to an entry point defined by
\verb|<label>|. The \verb|fgoto| statement immediately transfers control to