aboutsummaryrefslogtreecommitdiff
path: root/doc/manual/rl-next/inherit-from-by-need.md
diff options
context:
space:
mode:
Diffstat (limited to 'doc/manual/rl-next/inherit-from-by-need.md')
-rw-r--r--doc/manual/rl-next/inherit-from-by-need.md7
1 files changed, 7 insertions, 0 deletions
diff --git a/doc/manual/rl-next/inherit-from-by-need.md b/doc/manual/rl-next/inherit-from-by-need.md
new file mode 100644
index 000000000..67c2cdedf
--- /dev/null
+++ b/doc/manual/rl-next/inherit-from-by-need.md
@@ -0,0 +1,7 @@
+---
+synopsis: "`inherit (x) ...` evaluates `x` only once"
+prs: 9847
+---
+
+`inherit (x) a b ...` now evaluates the expression `x` only once for all inherited attributes rather than once for each inherited attribute.
+This does not usually have a measurable impact, but side-effects (such as `builtins.trace`) would be duplicated and expensive expressions (such as derivations) could cause a measurable slowdown.