anchor.diff:    and identifier =
       function
          ((Ident s):: rest) ->
  -        if can get_infix_status s or is_prefix s or parses_as_binder s
  +        if can get_infix_status s || is_prefix s || parses_as_binder s
           then raise Noparse else s,rest
         | _ -> raise Noparse
     and binder =
  
positive.code: 
  let rec atleast n prs i =
      (if n <= 0 then many prs
       else prs ++ atleast (n - 1) prs >> (fun (h,t) -> h :: t)) i
  
  let finished input =
      if input = [] then 0, input
  
negative.code:   and lmk_setcompr(((((f,_),vs),_),b),_) =
       pmk_setcompr(f,pfrees vs [],b)
    and lmk_decimal ((_,l0),ropt) =
       let l,r =
          if ropt = [] then l0,"1" else
              let r0 = hd ropt
              let n_l = num_of_string l0
              let n_r = num_of_string r0
              let n_d = power_num (Int 10) (Int (String.length r0))
              let n_n = n_l */ n_d +/ n_r
              string_of_num n_n,string_of_num n_d
       Combp(Combp(Varp("DECIMAL",dpty),Varp(l,dpty)),Varp(r,dpty))
    and lmk_univ((_,pty),_) =
      Typing(Varp("UNIV",dpty),Ptycon("fun",[pty;Ptycon("bool",[])]))
  