0.4.0a1
Pre-release
Pre-release
This is an early preview of some of the new features in the upcoming 0.4.0 release.
New Features
- Conditional blocks:
if
/elif
/else
statements now exist (be41210, f3f71de). - Boolean expressions:
||
and&&
, as well as comparison operators (baa2ba1, 3369969) - Binary matches (8b2f09b, e202041):
- Strings and regexes can now be made "binary", where instead of them having characters they instead only contain hex.
- For example,
"f0 0ffa"b
orb/ff+ (3456|56 77{2-3})/
. - This also adds support for
\xHH
escapes within normal strings.
- Option for dumping the parse tree for debugging (1b7242a).
Bugs Fixed
- Better ambiguity detection and resolution for chaining matches, especially those with inverted matches (1026f83).
- Properly handle actions after certain blocks when there is nothing following them (c5f1806).
- Correct short-circuit behaviour for action side-effects (such as
outofspace
handling) (bbda784). - More accurate line/column information for errors concerning regexes (92cd8f2).