Por que você não pode chamar funções abstratas de classes abstratas em PHP?

Criei uma classe pai abstrata e uma classe concreta que a estende. Por que a classe pai não pode chamar a função abstrata?

//foo.php
<?php
    abstract class AbstractFoo{
        abstract public static function foo();
        public static function getFoo(){
            return self::foo();//line 5
        }
    }

    class ConcreteFoo extends AbstractFoo{
        public static function foo(){
            return "bar";
        }
    }

    echo ConcreteFoo::getFoo();
?>

Erro:

Erro fatal: não é possível chamar o método abstrato AbstractFoo :: foo () emfoo.php na linha 5

questionAnswers(3)

yourAnswerToTheQuestion