javascript setTimeout error de llamada

Quiero invocar elwindow.setTimeot función con mi ámbito personalizado, así que uso elcall método, pero hay algo mal.

function foo() {
    this.bar = function() {
        console.log("keep going");
        window.setTimeout.call(this,this.bar,100);
    }
    this.bar();
}

new foo;

under Firefox esto imprime en la consola solo 1 línea y luego nada, y bajo google chrome arroja unTypeError.

¿Cuál es el problema en mi código?

Respuestas a la pregunta(1)

Su respuesta a la pregunta