tvl-depot/tvix/docs
sterni 8adc9c56f2 docs(tvix): document when pointer equality is preserved in C++ Nix
This explicitly documents behavior of C++ Nix that goes against the
intuition you'd gather from this document: that e.g. a simple select
from an attribute set causes a value to no longer be pointer equal to
its former self.

The point of documenting this is that we can show in a to be written
section on the use of pointer equality in nixpkgs that pointer equality
is only needed in a limited sense for evaluating it (C++ Nix's exterior
pointer equality). Tvix's pointer equality is far more powerful since
value identity preserving operations also preserve pointer equality,
generally speaking (this is because we implement interior pointer
equality in my made up terminology). This should eventually also be
documented.

Change-Id: I6ce7ef2d67b012f5ebc92f9e81bba33fb9dce7d0
Reviewed-on: https://cl.tvl.fyi/c/depot/+/8856
Tested-by: BuildkiteCI
Autosubmit: sterni <sternenseemann@systemli.org>
Reviewed-by: tazjin <tazjin@tvl.su>
2023-07-11 16:17:42 +00:00
..
.gitignore chore(tvix/docs): move from doc 2021-03-31 22:34:59 +00:00
component-flow.puml docs(tvix): Update components.md 2022-09-16 11:55:57 +00:00
components.md docs(tvix): Update components.md 2022-09-16 11:55:57 +00:00
default.nix style: format entire depot with nixpkgs-fmt 2022-01-31 16:11:53 +00:00
lang-version.md docs(tvix): mention langVersion >= 5 check in nixpkgs 2023-06-14 10:55:55 +00:00
language-spec.md docs(tvix): Begin specification of the Nix language 2021-04-24 20:07:18 +00:00
Makefile chore(tvix/docs): move from doc 2021-03-31 22:34:59 +00:00
value-pointer-equality.md docs(tvix): document when pointer equality is preserved in C++ Nix 2023-07-11 16:17:42 +00:00