Open
Description
- Encoding that
[Binding r]
contains static and dynamic attributes, whereas static ones have to have a different key:data StaticAttributeValue r = Inherit (Maybe r) | NamedVar [NKeyName r] r type StaticAttributes r = Map VarName (StaticAttributeValue r) type DynamicAttributes r = [(NDynamicAttrPath r, r)] type Bindings r = (StaticAttributes r, DynamicAttributes r)
- Instead of strings being
[Antiquoted Text r]
, they should bedata Interpolated a s = Interpolated a [(s, a)] type String = Interpolated Text r
-
NAttrPath
should differentiate between${a}.b.c
anda.b.c
with 2 different typesNStaticAttrPath
andNDynamicAttrPath
#977 - Instead of function application being
NBinary NApp f arg
, it should beNApp f arg
#1041 - Instead of having
NSet bindings
andNRecSet bindings
, it should be a singleNSet rec bindings
(first argument indicates it being recursive or not) -
Inherit !(Maybe r) ![NKeyName r] !SourcePos
should beInherit !(Maybe r) ![VarName] !SourcePos
#976
Maybe other improvements are possible too. I really dislike how some things are representable using the current one but never occur in parsing Nix.
Metadata
Metadata
Assignees
Labels
No labels