[Nix-dev] Re: [Nix-commits] SVN commit: nix - 12621 - eelco - in nix/trunk: src/libexpr tests/lang

Nicolas Pierron nicolas.b.pierron at gmail.com
Thu Aug 14 16:22:29 CEST 2008


On Thu, Aug 14, 2008 at 16:00, Eelco Dolstra <e.dolstra at tudelft.nl> wrote:
> Log:
> * Added an experimental feature suggested by Andres: ellipses ("...")
>  in attribute set pattern matches.  This allows defining a function
>  that takes *at least* the listed attributes, while ignoring
>  additional attributes.  For instance,
>
>    {stdenv, fetchurl, fuse, ...}:
>
>    stdenv.mkDerivation {
>      ...
>    };
>
>  defines a function that requires an attribute set that contains the
>  specified attributes but ignores others.  The main advantage is that
>  we can then write in all-packages.nix
>
>    aefs = import ../bla/aefs pkgs;
>
>  instead of
>
>    aefs = import ../bla/aefs {
>      inherit stdenv fetchurl fuse;
>    };
>
>  This saves a lot of typing (not to mention not having to update
>  all-packages.nix with purely mechanical changes).  It saves as much
>  typing as the "args: with args;" style, but has the advantage that
>  the function arguments are properly declared (not implicit in what
>  the body of the "with" uses).

This was not implicit before ?

-- 
Nicolas Pierron
- If you are doing something twice then you should try to do it once.



More information about the nix-dev mailing list