anchor.diff:  let
   
     inherit (builtins)
  -    head tail isList stringLength substring lessThan sub listToAttrs;
  +    head tail isList stringLength substring lessThan sub
  +    listToAttrs attrNames hasAttr;
   
   in
   
  
positive.code: 
    chooseOptionsByFlags = { flagConfig, args, optionals ? [], defaults ? [],
                             collectExtraPhaseActions ? [] } :
      let passedOptionals = filter ( x : __hasAttr x args ) optionals; # these are in optionals and in args
          # we simply merge in <optional_name> = { buildInputs = <arg.<optional_name>; pass = <arg.optional_name>; }
          flagConfigWithOptionals = flagConfig // ( listToAttrs
            (map ( o : av o ( { buildInputs = o; pass = avs o (__getAttr o args); }
                              // getAttr [o] {} flagConfig )
                 )
                 passedOptionals ) );
  
negative.code: 		name (tail (tail list)) checker;
  
    # calls a function (f attr value ) for each record item. returns a list
    mapRecordFlatten = f : r : map (attr: f attr (builtins.getAttr attr r) ) (attrNames r);
  
    # to be used with listToAttrs (_a_ttribute _v_alue)
    av = attr : value : { inherit attr value; };
  