anchor.diff:  let generateHeader (env: CEnv) includes =
       let structs = generateCDeclStructs env.DeclStructs
       let funcPtrs = generateCDeclFunctionPointers env.DeclFunctionPointers
  -    generateMainHeaderf env.Name <|
  +    generateMainHeaderCode env.Name <|
           sprintf "%s\n%s\n%s" includes structs funcPtrs
   
   let generateSource (env: CEnv) =
  -    (generateHeaderInclude env.Name) + 
  +    (generateHeaderIncludeCode env.Name) + 
       generateCDeclFunctions env.DeclFunctions +
       generateCDeclFunctionPointerImpls env.DeclFunctionPointers
   
  
positive.code: }
  """
  
  let generateCFunctionPointer returnType name parameters =
      sprintf """
  typedef %s (*%s)(%s);
  extern %s Delegate_%s;
  
negative.code: """
          name name name name name
  
  let generateCDeclStructCode =
      sprintf """
  typedef struct {
  %s
  } %s;
  """
  
  let generateHeaderIncludeCode name = sprintf "#include \"%s.h\" \n" name
  
  let rec generateCType = function
      | Byte ->   "uint8_t"
  