anchor.diff:  
       infix-or-prefix-op
   
  -    -OP +OP || <OP >OP = |OP &OP ^OP *OP /OP %OP !=OP
  +    -OP +OP || <OP >OP = |OP &OP ^OP *OP /OP %OP != !=OP
   
                            (or any of these preceded by one or more ‘.’)
   
  
positive.code:         (binary)	    Left
  	18	* op, /op, %op	Left
  	19	** op	        Right
  	20	f x (function 
          application)	Left
  	21	| (pattern 
          match)	        Right
  	22	prefix ops 
  
negative.code: *)
  
  (*
  Compiled names for other symbolic operators are op_N1...Nn where N1 to Nn are the names for the characters as shown in the table below. For example, the symbolic identifier <* has the compiled name op_LessMultiply:
  
  >    Greater
  
  <    Less
  
  +    Plus
  
  -    Minus
  
  *    Multiply
  
  =    Equals
  
  ~    Twiddle
  
  %    Percent
  
  .    Dot
  
  &    Amp
  
  |    Bar
  
  @    At
  
  #    Hash
  
  ^    Hat
  
  !    Bang
  
  ?    Qmark
  
  /    Divide
  
  .    Dot
  
  :    Colon
  
  (    LParen
  
  ,    Comma
  
  )    RParen
  
  [    LBrack
  
  ]    RBrack
  
  *)
  
  (*
  
  4.4.1     Categorization of Symbolic Operators
  The following symbolic-op tokens can be used to form prefix and infix expressions. The marker OP represents all symbolic-op tokens that begin with the indicated prefix, except for tokens that appear elsewhere in the table.
  
  