From db680e0e5751828e788bff4becd89886bde71480 Mon Sep 17 00:00:00 2001 From: Valentin Gagarin Date: Thu, 8 Jun 2023 02:00:05 +0200 Subject: [PATCH 1/2] refine wording on the purpose of the Nix language packages and configurations are not really a concept in Nix or the Nix language. the idea of transforming files into other files clearly captures what it's all about, and the new phrasing should make the term "derivation" more obvious both in terms of meaning and origin. --- doc/manual/src/language/index.md | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/doc/manual/src/language/index.md b/doc/manual/src/language/index.md index 3eabe1a02..69ebc70c0 100644 --- a/doc/manual/src/language/index.md +++ b/doc/manual/src/language/index.md @@ -4,9 +4,7 @@ The Nix language is - *domain-specific* - It only exists for the Nix package manager: - to describe packages and configurations as well as their variants and compositions. - It is not intended for general purpose use. + Its purpose is to conveniently create and compose precise descriptions of how contents of existing files are used to derive new files. - *declarative* @@ -25,7 +23,7 @@ The Nix language is - *lazy* - Expressions are only evaluated when their value is needed. + Values are only computed when they are needed. - *dynamically typed* From c3c40763421e881ed5c326ed88a0539b6585c368 Mon Sep 17 00:00:00 2001 From: Valentin Gagarin Date: Thu, 15 Jun 2023 03:06:38 +0200 Subject: [PATCH 2/2] make domain-specificity more specific also slightly reword the purpose statement to introduce (and explain) derivations right away. --- doc/manual/src/language/index.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/doc/manual/src/language/index.md b/doc/manual/src/language/index.md index 69ebc70c0..29950a52d 100644 --- a/doc/manual/src/language/index.md +++ b/doc/manual/src/language/index.md @@ -1,10 +1,11 @@ # Nix Language -The Nix language is +The Nix language is designed for conveniently creating and composing *derivations* – precise descriptions of how contents of existing files are used to derive new files. +It is: - *domain-specific* - Its purpose is to conveniently create and compose precise descriptions of how contents of existing files are used to derive new files. + It comes with [built-in functions](@docroot@/language/builtins.md) to integrate with the Nix store, which manages files and performs the derivations declared in the Nix language. - *declarative*