anchor.diff:      ///An instance of the compiler configured with the input file
       ///</returns>
       ///
  -    new(confRoot, compRoot, assemblies, file:string) as this = {                                                                    
  -                                                                 steps = [||]
  -                                                                 usedMetadata = null
  -                                                                 configurationManager = new PipelineConfigurationManager(assemblies, confRoot, compRoot)
  -                                                                 configuration = null 
  -                                                               }   
  -                                                                then
  -                                                                    this.configuration <- this.configurationManager.LoadConfiguration(file)
  -                                                                    let s,m = this.configurationManager.Build(this.configuration)
  -                                                                    this.steps <- s
  -                                                                    this.usedMetadata <- new Dictionary<Type, MetadataComparer list>(m)
  +    new (confRoot, compRoot, assemblies, file:string) as this = 
  +        {   steps = [||]
  +            usedMetadata = null
  +            configurationManager = PipelineConfigurationManager (assemblies, confRoot, compRoot)
  +            configuration = null 
  +        }   
  +        then
  +            this.configuration <- this.configurationManager.LoadConfiguration file
  +            let s,m = this.configurationManager.Build this.configuration
  +            this.steps <- s
  +            this.usedMetadata <- Dictionary<Type, MetadataComparer list> m
       ///
       ///<summary>
       ///The constructor to instantiate a compiler with an object-based configuration
  
positive.code:     ///In addition of the 0 or more components found, the native components are always loaded (if no configuration file is found in the first step)
      ///</remarks>
      ///
      new(confRoot, compRoot, assemblies) as this = {
                                                      steps = [||]
                                                      usedMetadata = null
                                                      configurationManager = new PipelineConfigurationManager(assemblies, confRoot, compRoot)
                                                      configuration = null 
                                                    }   
                                                      then
                                                          this.configuration <- this.configurationManager.DefaultConfiguration()
                                                          let s, m = this.configurationManager.Build(this.configuration)
                                                          this.steps <- s
                                                          this.usedMetadata <- new Dictionary<Type, MetadataComparer list>(m)
      
      ///
      ///<summary>
  
negative.code:     ///An instance of the compiler configured with the input configuration object
      ///</returns>
      ///
      new (confRoot, compRoot, assemblies, conf: PipelineConfiguration) as this = 
          {   steps = [||]
              usedMetadata = null
              configurationManager = PipelineConfigurationManager (assemblies, confRoot, compRoot)
              configuration = conf 
          } then
              let s, m = this.configurationManager.Build this.configuration
              this.steps <- s
              this.usedMetadata <- Dictionary<Type, MetadataComparer list> m
      
      ///
      ///<summary>
      /// The compiler configuration
      ///</summary>
      ///                                                
      member this.Configuration with get () = this.configuration
  
      ///
      ///<summary>
      /// The set of metadata affecting compilation result
      ///</summary>
      ///                                                
      member this.UsedMetadata with get () = this.usedMetadata
              
  
      ///
  