Hi! I was trying to use a matcher and was confused by the
... ({ self, super, root, ... } -> Path -> a ) ...
everywhere in the doc. Only after I read the source did I realize that this is simply a loader. I believe it would be easier to define:
Loader<a> := { self, super, root, ... } -> Path -> a
... at the top of e.g. loaders and use that instead. Do you think this is a good idea? I am not sure if Loader<a> := is the nix way to annotate a new type, though; the angled brackets are simply borrowed from rust. Also, replacing some of the a with e.g. NixExpr would make it feel more descriptive to me.
If you all agree with this proposal but don't have time to implement this, I can try to submit a pull request, some time (I am very slow though, haha).
Hi! I was trying to use a matcher and was confused by the
everywhere in the doc. Only after I read the source did I realize that this is simply a loader. I believe it would be easier to define:
... at the top of e.g. loaders and use that instead. Do you think this is a good idea? I am not sure if
Loader<a> :=is the nix way to annotate a new type, though; the angled brackets are simply borrowed from rust. Also, replacing some of theawith e.g.NixExprwould make it feel more descriptive to me.If you all agree with this proposal but don't have time to implement this, I can try to submit a pull request, some time (I am very slow though, haha).