I always struggle with what to call these things: { a = 1; }
I see many people refer to them as “attribute sets”, however the official documentations refers to them simply as “sets”. I would generally be fine with just going with what the official documentation says, but “set” as a data structure already has a meaning, and this is not it.
I usually call it an “attribute set” though within a running conversation I might contextually shorten it to just “set” to not repeat myself all the time.
I sometimes call it “attribute map”. And it is like a set… where each member has additionally a value assigned, though calling it (attribute) “set” perhaps isn’t ideal.
@olaf: I think this is also relevant for the current efforts to improve documentation. Documentation Do more people have an opinion about the topic?
I would say yes. Based on what I’ve seen so far, there is a growing consensus1 that there should be a globally consistent terminology to be used across the official documentation resources.
[1]: I think PR#6420 alone provides ample evidence for this statement.
I also saw that in this documentation PR “attribute set” is introduced and used right from the beginning: Nix language tutorial by fricklerhandwerk · Pull Request #267 · NixOS/nix.dev · GitHub … so only the nix documentation would need an update, if the section on writing nix expressions stays in that manual.
So I guess this topic is “solved”.