about summary refs log tree commit diff
path: root/src/libexpr/parser.y
AgeCommit message (Collapse)AuthorFilesLines
2004-02-04 * Extended the `inherit' syntax to optionally select attributes fromEelco Dolstra1-3/+8
other attribute sets, rather than the current scope. E.g., {inherit (pkgs) gcc binutils;} is equivalent to {gcc = pkgs.gcc; binutils = pkgs.binutils;} I am not so happy about the syntax.
2004-02-04 * An attribute set update operator (//). E.g.,Eelco Dolstra1-0/+2
{x=1; y=2; z=3;} // {y=4;} => {x=1; y=4; z=3;}
2004-02-02 * Added syntactic sugar to the construction of attribute sets toEelco Dolstra1-5/+15
`inherit' variables from the surrounding lexical scope. E.g., {stdenv, libfoo}: derivation { builder = ./bla; inherit stdenv libfoo; xyzzy = 1; } is equivalent to {stdenv, libfoo}: derivation { builder = ./bla; stdenv = stdenv; libfoo = libfoo; xyzzy = 1; } Note that for mutually recursive attribute set definitions (`rec {...}'), this also works, that is, `rec {inherit x;}' is equivalent to `let {fresh = x; body = rec {x = fresh;};}', *not* `rec {x = x}'.
2004-01-30 * Parser numbers again.Eelco Dolstra1-0/+1
* Include missing files in distributions.
2004-01-30 * Replaced the SDF parser by a substantially faster Bison/FlexEelco Dolstra1-0/+128
parser (roughly 80x faster). The absolutely latest version of Bison (1.875c) is required for reentrant GLR support, as well as a recent version of Flex (say, 2.5.31). Note that most Unix distributions ship with the prehistoric Flex 2.5.4, which doesn't support reentrancy.