почему имена не ищут по иерархии пространства имен

<?php
namespace App {
    function date(...$args) { echo 'Wow, my date'; }    
    class A {};
}

namespace App\Core {
    echo date('r'); // Thu, 30 Mar 2023 07:34:30 +0000
    $a = new A;     // Class 'App\\Core\\A' not found
}

Но я бы хотел увидеть 'Wow, my date' :)

php использовался просто как пример.

Я знаю, как это работает. Но мне интересно, почему пространство имен не поддерживает иерархию? Это просто особенности реализации или фундаментальное ограничение? С другой стороны, это происходит, когда пространство имен неявно объявлено в функциях и циклах во многих языках программирования. Но какая причина мешает разработчикам языков использовать иерархический поиск?


Ответы (0 шт):