anchor.diff:                     |> printExpression
                      |> parened
                      t |> printBlock pView (printCommand pView)
  -                   f |> printBlock pView (printCommand pView)]
  +                   f |> printBlock pView (printCommand pView) ]
           | Command'.While(c, b) ->
               hsep [ "while" |> String |> syntax
                      c
  
positive.code:         | BopExpr of BinOp * Expression * Expression // a BOP b
      and Expression = Node<Expression'>
  
      /// An atomic action.  
      type Atomic' =
          | CompareAndSwap of LValue * LValue * Expression // <CAS(a, b, c)>
          | Fetch of LValue * Expression * FetchMode // <a = b??>
  
negative.code: (*
   * Misc
   *)
  let emptyPosition : SourcePosition =
      { StreamName = ""; Line = 0L; Column = 0L; }
  let freshNode (a : 'a) : Node<'a> =
    { Position = emptyPosition; Node = a }
  let node (streamname : string)
           (line : int64)
           (column : int64)
           (a : 'a)
           : Node<'a> =
      { Position = { StreamName = streamname; Line = line; Column = column }; Node = a }
  
  /// <summary>
  ///     Type-constrained version of <c>func</c> for <c>AFunc</c>s.
  