Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2020-07-13 | Reserve backtick (`) and bit-or (|) in eval context for future use | Boris Kolpackov | 1 | -3/+5 | |
Specifically, they are reserved for future support of arithmetic evaluation contexts and evaluation pipelines, respectively. | |||||
2020-06-19 | Fix lexer to fail on invalid UTF-8 sequences | Karen Arutyunov | 1 | -0/+6 | |
2020-06-10 | Handle special variable names when spelled as $(<char>) rather than $<char> | Boris Kolpackov | 1 | -0/+3 | |
2020-06-10 | Handle special variable names in base lexer via mode data | Boris Kolpackov | 1 | -1/+13 | |
2020-06-05 | Add ability to specify ad hoc recipe actions | Boris Kolpackov | 1 | -4/+4 | |
We are reusing the buildspec syntax for that. | |||||
2020-05-27 | Add support for value subscript after expansions | Boris Kolpackov | 1 | -21/+38 | |
Value subscript is only recognized in evaluation contexts (due to ambiguity with wildcard patterns; consider: $x[123].txt) and should be unseparated from the previous token. For example: x = ($y[1]) x = (($f ? $y : $z)[1]) x = ($identity($y)[$z]) | |||||
2020-05-27 | Initial support for ad hoc recipes (still work in progress) | Boris Kolpackov | 1 | -15/+157 | |
2020-05-01 | Fix outstanding issue with directive vs assignment differentiation | Boris Kolpackov | 1 | -5/+18 | |
Specifically, now the following does the right thing: print +foo | |||||
2020-03-20 | Lexer support for default value assignment (?=) | Boris Kolpackov | 1 | -6/+17 | |
Note: not yet supported in the parser. | |||||
2020-02-07 | Drop copyright notice from source code | Karen Arutyunov | 1 | -1/+0 | |
2019-11-15 | Generalize attributes to be comma-separated with arbitrary values | Boris Kolpackov | 1 | -8/+22 | |
Before: x = [string null] After: x = [string, null] | |||||
2019-11-14 | Tighten up attribute recognition during parsing | Boris Kolpackov | 1 | -58/+90 | |
Now it should be possible to use `[]` for wildcard patterns, for example: foo = foo.[hit]xx Note that a leading bracket expression will still be recognized as attributes and escaping or quoting it will inhibit pattern matching. To resolve this case we need to specify an empty attribute list: foo = [] [abc]-foo.cxx | |||||
2019-09-30 | Reserve `:` in `case` pattern expression for future match extraction support | Boris Kolpackov | 1 | -5/+6 | |
2019-09-30 | Add support for custom match/extract functions in switch expression | Boris Kolpackov | 1 | -5/+29 | |
2019-09-30 | Add support for `case` pattern alternatives | Boris Kolpackov | 1 | -2/+25 | |
case <pattern>[ | <pattern>...] | |||||
2019-09-30 | Pattern matching support (switch): multiple values implementation | Boris Kolpackov | 1 | -4/+11 | |
2019-07-01 | Split build system into library and driver | Boris Kolpackov | 1 | -0/+720 | |