anchor.diff:      | ToLower "up" -> Up
       | ToLower "down" -> Down
       | _ -> failwith "invalid direction specified"
  -
  -let private parseCompile s =
  -    match s with
  -    | ToLower "true" -> true
  -    | ToLower "false" -> false
  -    | _ -> failwith "invalid compilation option"
   
   let private parser = UnionArgParser.Create<Args>()
   
  
positive.code:             Init (ProjectInitData.create (path, template)) |> Success
              
          | ToLower "addfile" :: FullPath project :: FullPath file :: Options opts ->
              let compile = not (opts.Contains <@ Compile @>) ||
                            opts.PostProcessResult(<@ Compile @>, parseCompile)
              AddFile { ProjPath = project
                        FilePath = file
                        Link = opts.TryGetResult <@ Link @>
  
negative.code:     | Direction of string
      | Repeat of int
      | Link of string
      | Compile of bool
  with
      interface IArgParserTemplate with
          member s.Usage = 
  