On Thu, Feb 11, 2021 at 9:39 AM Levi Morrison <le...@php.net> wrote:
>
> Hello, everyone,
>
> There has been a lot of disagreement about namespacing, and people
> seem to have different viewpoints. I am not sure how to reconcile this
> broader discussion.
>
> However, there are certain names in the global namespace which I am
> hopeful we can revolve. For instance, `SplObserver`, `SplQueue`,
> `SplFixedArray`, etc all follow the `Spl` prefix. There is already an
> established "namespace" for these names.
>
> So here is my limited proposal:
>  1. We create names in the `Spl` namespace that are aliases to their
> equivalent types with the `Spl` prefix:
>     `Spl\FixedArray` -> SplFixedArray
>     `Spl\Queue` -> SplQueue
>      a. The new names are the aliases so any code which uses
> `get_class($obj)` will not have the name change on them in a minor
> release (8.1).
>      b. We may switch the direction of this alias in 9.0.
>  2. Any new types going into `ext/spl` use the `Spl` namespace. New
> types added to `ext/spl` should be either related to data structures
> or iterators, which is the bulk of what the SPL is.
>      a. This rule is to help prevent the SPL from becoming the dumping
> grounds for new types.
>  3. We leave functions alone for now.
>
> Let me know what you think. I am hopeful this approach will work because:
>  1. It is focused on a specific area which already has an established
> "namespace", but in name-only (not technically).
>  2. It does not try to solve the larger problem, which has a lot of
> disagreement.
>  3. I will be proposing new types for ext/spl soon (`ReverseIterator`
> and an array iterator that is more efficient than `\ArrayIterator`),
> and Tyson Andre has already proposed `CachedIterable` and company
> which is in `ext/spl`, so this space has active development.
>
> Thank you for your time.
>
> --
> PHP Internals - PHP Runtime Development Mailing List
> To unsubscribe, visit: https://www.php.net/unsub.php
>

There's been a lull in feedback, so let me steer it towards a specific
point that was brought up: how do you feel about adding aliases from
\Spl\Thing to \SplThing?

https://strawpoll.com/22pcxh69p

-- 
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: https://www.php.net/unsub.php

Reply via email to