I've made an amendment to the RFC to clarify on the Nested Types, which is
indeed supposed to be part of the feature.  Rasmus may want to reword it if
it isn't very clear.

Regarding union and intersections for upper (and maybe lower) bounds.
Would it be appropriate to exclude these from type parameters until their
respective RFCs are approved?  As including them in generics but not in
standard type hints may create an inconsistency.

In short, perhaps a generics implementation should incorporate unions (and
any future type constraints) as existing features only.  This would help
RFC Generics to focus on: Type aliasing, Introspection and Reflection.
On 20 Apr 2016 9:05 a.m., "Mathieu Rochette" <math...@rochette.cc> wrote:

>
>
> On 20/04/2016 00:22, Sara Golemon wrote:
>
>> On Tue, Apr 19, 2016 at 1:16 PM, Mathieu Rochette <math...@texthtml.net>
>> wrote:
>>
>>> about the upper bounds, have you consider another way of describing the
>>> constraints, eg:
>>>
>>> class Box<T> where T is Boxable
>>>
>>> this would allow multiple constraints, eg:
>>>
>>> class Collection<T> where T is Traversable, T is Countable
>>>
>>> IMO, this sort of problem should be solved by combining this feature
>> with union types, so you could have something like:
>>
>> class Collection<T as (Traversable | Countable)> {...
>>
>> And merely inherit the logic rules from that feature rather than
>> inventing yet another one.
>>
> obviously if the union type rfc passes we don't need another way of
> expressing this.
> that was only in the case it does not, I think having a way to have at
> least types intersection
> is useful here (and I didn't event think about <T is A & B>)
>
>>
>> can generic types be nested ?
>>>
>>> class Stuff<A, B is Something<A, string>>
>>>
>>> I can't imagine why not...
>>
> just to be clear, it's not just nested generic. the A type have to be same
> in both "subtypes"
>
>>
>> For my part, I love the concept overall.  Generics are an important
>> part of moving PHP towards comprehensive type-safety.  But then, you
>> know how I feel about Hack. :)
>>
>> -Sara
>>
>>
>

Reply via email to