[Nix-dev] Re: [Nix-commits] SVN commit: nix - 18113 - eelco - nixpkgs/trunk/pkgs/top-level

Michael Raskin 7c6f434c at mail.ru
Wed Nov 4 19:53:34 CET 2009


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Eelco Dolstra wrote:
> Log:
> * Before selecting an attribute from `x', check whether it's an
>   attribute set.  `tryEval' no longer catches this.

By the way, that looks like a symptom that your watering tryEval down
breaks the purity. Imagine our pattern of passing derivation or null.
Let us have
C = pkg: { a = A pkg; b = B pkg; };
Now let A assert that the pkg is a package, and B just uses its outPath.
"tryEval (C null)" now depends on execution order. It seems to be
unfortunate.. Maybe catch all errors not damaging execution environment?

Also, if A asserts and B aborts we again have execution order problem.

As you periodically state that some "aggregation" tasks could be done
with less centralized lists and more expression attributes, tryEval
seems to fit such tasks. But the only way it can not break purity is to
restore its power.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.12 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iQEcBAEBAgAGBQJK8c2sAAoJEE6tnN0aWvw3VowH/0jbsFRPBFgttGZMxaX/wLhc
R/O/G633hjsqet1Vj7xsJ2ACo7Aqiw2GQcQtUWirUCvaQ31sVBKZ7Tmx43t0Tx0k
xHbXWEM3LwccB6q7mB91vhqtA2QBRYwKbfwV9GTiOnU4ioAefvabrdZRP963bDpF
/OASV6VCeMZVf3lQ6R4wrl6XiA/coenBSENjltPGxFKSoQoeE9DjCsJacyy4hQdF
ReYA3ynDH8QKSvdnsNmI3zOMu3KbioWGgOOknphmgvhDuOw9Um9VEt9ppZ66VkgF
BU6+We+dYIH/ciu7QdWjtt2VdeEYzj77seMvOj7zS2AzvBVAMKxkhmwHT9Wgebc=
=qsA6
-----END PGP SIGNATURE-----



More information about the nix-dev mailing list