aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-08-04revert to "build plan" in overview diagramValentin Gagarin
this displays correct composition again. build inputs and build results are not part of build plans in terms of data objects. also this is a much less complicated setup. this will be the first impression of architecture, and we want to get it right.
2022-08-04Nix store does not underly literally everythingValentin Gagarin
Co-authored-by: Robert Hensing <roberth@users.noreply.github.com>
2022-08-04add link from overview to store sectionValentin Gagarin
the overview should only link to the three main concepts presented. the store is now fairly fleshed out. others can follow later.
2022-08-04architecture overview: add link to command line referenceValentin Gagarin
2022-08-04architecture overview: add link to Nix expression language referenceValentin Gagarin
update summary title to match file contents
2022-08-04use singular for class names consistentlyValentin Gagarin
2022-08-04clarify relation of tasks and plansValentin Gagarin
2022-08-04build rule -> build taskValentin Gagarin
closer to "build systems a la carte", satisfies all other complaints
2022-08-04build step -> build ruleValentin Gagarin
"step" sounds atomic, while "rule" hints at internal structure, which in our case consists of mapping inputs to outputs using build instructions.
2022-08-04match grammatical case to arrow directionValentin Gagarin
2022-08-04update architecture diagramValentin Gagarin
2022-08-04remove incomplete section: input/content-addressingValentin Gagarin
2022-08-04remove incomplete section: nix archivesValentin Gagarin
2022-08-04remove incomplete section: content-addressed objectsValentin Gagarin
2022-08-04remove incomplete section: relocatabilityValentin Gagarin
2022-08-04remove incomplete section: related workValentin Gagarin
2022-08-04remove incomplete section: buildingValentin Gagarin
2022-08-04Fix manual TOC linksJohn Ericson
2022-08-04Fix rel path in docJohn Ericson
2022-08-04reword details on keeping closure propertyValentin Gagarin
2022-08-04add motivation for referencesValentin Gagarin
2022-08-04stores can also delete objectsValentin Gagarin
2022-08-04formalize file system objectsValentin Gagarin
convention: describe every data type in prose, and illustrate with a class diagram, and a textual representation of an abstract data type. right now we save ourselves the trouble of doing class diagrams, we can add them later. but they are important.
2022-08-04reword section on referencesValentin Gagarin
use file Contents instead of Data, as that flows more naturally in the prose. simplify explanation of the idea behind scanning for store paths remove references to unfinished sections.
2022-08-04reword file system objectsValentin Gagarin
- use singular for the "class" - more consistency in type definition - minor fixes in wording
2022-08-04move git comparison to related workValentin Gagarin
it should be pulled out of the branch before we go for merging
2022-08-04component -> store object, realisation -> buildValentin Gagarin
2022-08-04build instrcution: Task -> functionValentin Gagarin
2022-08-04revert build plan/step distinction, reorder rowsValentin Gagarin
2022-08-04reword introduction to rosetta stone, add linksValentin Gagarin
attempt to explain used and documented terminology, as well as how the declarative programming paradigm relates to building software. in the future one could highlight encouraged terms to shape future material into higher consistency.
2022-08-04associated operations are not collectedValentin Gagarin
Co-authored-by: John Ericson <git@JohnEricson.me>
2022-08-04fix grammarValentin Gagarin
Co-authored-by: John Ericson <git@JohnEricson.me>
2022-08-04add concrete store examples, reword note on file systemValentin Gagarin
2022-08-04reword section on Nix storeValentin Gagarin
2022-08-04design -> architecture, add motivationValentin Gagarin
following ideas found in Architecture of Gazelle[1] [1]: https://github.com/bazelbuild/bazel-gazelle/blob/56d35f8db086bb65ef876f96f7baa7b71516daf8/Design.rst
2022-08-04address Nix language consistently as configuration languageValentin Gagarin
2022-08-04remove separate meta-section, add architecture diagramValentin Gagarin
the diagram is a first approximation and only covers that same section. of course there is much more going on, and other features should at some point also be illustrated. we also have to think about presentation format and technicalities behind it. the manual has to render to `man`, but we may want something more refined for web view.
2022-08-04reword introductory sectionValentin Gagarin
there should be a meta section for each chapter to give motivation of the presented structure. the structure itself is visible from the table of contents.
2022-08-04remove sentence for chapter transitionValentin Gagarin
idea: sections could be read in different orders by linking them in different ways (e.g. depth-first or breadth-first). adding hard-coded transitions makes that confusing.
2022-08-04Apply suggestions from code reviewJohn Ericson
Co-authored-by: Valentin Gagarin <valentin@fricklerhandwerk.de>
2022-08-04do not mention implementation detailsValentin Gagarin
Co-authored-by: John Ericson <git@JohnEricson.me>
2022-08-04correctly use comma for nestingValentin Gagarin
Co-authored-by: John Ericson <git@JohnEricson.me>
2022-08-04indicate sequence with "then"Valentin Gagarin
Co-authored-by: John Ericson <git@JohnEricson.me>
2022-08-04only use generic build system terminologyValentin Gagarin
we will use a translation table to introduce nix-specific terms
2022-08-04reword overview with clear terminologyValentin Gagarin
trying to capture alternative terms in one go here, mirroring everyday use: derivation - build plan realise - execute build there will be more of that sort.
2022-08-04Add draft "Rosetta stone" by @fricklerhandwerk and stub commentaryJohn Ericson
The idea and most of the execution are @fricklerhandwerk's. I changed a few things best I could based on @edolstra's corrections, and a Bazel glossary. Valentin Gagarin <valentin@fricklerhandwerk.de>
2022-08-04Make refernces sneak preview more conciseJohn Ericson
2022-08-04Improve store objects session moreJohn Ericson
2022-08-04Include abstract syntax based on the thesis for FSOsJohn Ericson
See https://edolstra.github.io/pubs/phd-thesis.pdf, page 91.
2022-08-04store objects, better opining sentancesJohn Ericson