Nix function call syntax is completely standard for ML-style functional languages and allows for effortless partial application. The main downside is that error messages can get cryptic, especially so when Nix is untyped.
Whitespace add list delimiter is not very common, but I have to admit I really like it.
I was hoping for some “this doesn’t work” kind of things, not “this doesn’t feel familiar”.
Not sure how Nix doesn’t win the readability contest: literally a config file with function calls, and as little superfluous syntax as possible. I’d say the real criticism is: Nix is hard to write, and nixpkgs idioms (nested, undocumentedabstractions scattered throughout the code) are hard to read.
> Not sure how Nix doesn’t win the readability contest
Not sure how you can be serious.
https://github.com/NixOS/nixpkgs/blob/d600f006643e074c2ef1d7...
(Do note the Nix escaping on top of the shell horrors.)Nix just comes from a culture of utter utter horrible code. It's my daily driver, but I am holding my nose.
https://github.com/NixOS/nix/blob/94ec9e47030c2a7280503d338f...