anchor.diff:        # in the attribute list and attrs.
         ifProps =
           foldProperty
  -          (foldFilter (p: isIf p || isThenElse p || isAlways p)
  -            # then, push the codition inside the list list
  +          (foldFilter (p: isIf p)
  +            # then, push the condition inside the list list
               (p@{property, content, ...}:
                 { inherit (content) attrs;
                   list = [property] ++ content.list;
  
positive.code:   # property and call the function `nul' on the final value which is not a
    # property.  The stack is traversed in reversed order.  The `op' function
    # should expect a property with a content which have been modified.
    # 
    # Warning: The `op' function expects only one argument in order to avoid
    # calls to mkProperties as the argument is already a valid property which
    # contains the result of the folding inside the content attribute.
  
negative.code:           mkIf condition content
          else
            let p = head list; in
            evalIf content (condition && p.condition) (tail list);
      in
        evalIf ifProps.attrs true ifProps.list;
  
  