anchor.diff:          .then((_) => Future.wait(opts.removed.map(map('web.src',compiler.removeFile))));
       }
       
  -    _done.then((_){
  +    return _done.then((_){
         Iterable files = compiler.fileList.files.values;
         
         final result = new BuildResult();
  
positive.code: import 'package:path/path.dart' as Path;
  
  
  build(List<String> args, [FileListFactory fileListFactory]){
    final opts = BuildOptions.parse(args);
    
    if (fileListFactory == null) {
  
negative.code:   //TODO : several compilers ?
    var compiler = new DirectoryCompiler(directory, modules, fileListFactory,
        srcName:'web.src', outName:'web');
    
    return compiler.start().then((_){
    
      if(opts.clean) compiler.clean();
      
  