anchor.diff:                      errorLogger.AbortOnError()
                   )
   
  +
           if fsiOptions.Interact then 
  +
  +            if !progress then fprintfn fsiConsoleOutput.Out "Run: Interact..."
               // page in the type check env 
               istateRef := fsiInteractionProcessor.LoadDummyInteraction !istateRef
               if !progress then fprintfn fsiConsoleOutput.Out "MAIN: InstallKillThread!";
  
positive.code: 
        DriveFsiEventLoop fsiConsoleOutput 
  #else        
          // Update the console completion function now we've got an initial type checking state.
          // This means completion doesn't work until the initial type checking state has finished loading - fair enough!
          match fsiConsoleInput.TryGetConsole() with 
          | Some console when fsiOptions.EnableConsoleKeyProcessing -> 
              console.SetCompletionFunction(fun (s1,s2) -> fsiIntellisenseProvider.CompletionsForPartialLID !istateRef (match s1 with | Some s -> s + "." + s2 | None -> s2)  |> Seq.ofList)
  
negative.code:     let LexbufFromLineReader (fsiStdinSyphon: FsiStdinSyphon) readf = 
          UnicodeLexing.FunctionAsLexbuf 
            (fun (buf: char[], start, len) -> 
              if !progress then printfn "calling readf..."
              //fprintf fsiConsoleOutput.Out "Calling ReadLine\n";
              let inputOption = try Some(readf()) with :? EndOfStreamException -> None
              inputOption |> Option.iter (fun t -> fsiStdinSyphon.Add (t + "\n"));
  