Hi all,

I would like to start [DISCUSSION] for this RFC.
RFC may needs update, but these changes can be done during the discussion
also.

Any comments for staring discussion?

P.S. I'll prepare simple "Vote Only" RFC for 2 RFCs. Please feel free to
change/improve it.


--
Yasuo Ohgaki
yohg...@ohgaki.net

On Mon, Feb 16, 2015 at 2:56 PM, Yasuo Ohgaki <yohg...@ohgaki.net> wrote:

> Hi Francois,
>
> On Mon, Feb 16, 2015 at 8:08 AM, François Laupretre <franc...@php.net>
> wrote:
> >
> > > De : yohg...@gmail.com [mailto:yohg...@gmail.com] De la part de Yasuo
> Ohgaki
> > >
> > > D resolves that if parameter is contract or not at compile time and
> checks it if method
> > > is overriding parent's method. If method is overridden, D just ignores
> contract.
> >
> > That's true for pre-conditions, but that's not the way D handles
> post-conditions.
> >
> > >>> The same rule for class applies to interfaces.
> > >>
> > >> ?? I don't understand.
> > >
> > >Interface may have contracts just like class.
> >
> > OK, but when do you check interface conditions ? And how do you deal
> with interface (multiple) inheritance ?
>
> Simply check all contracts on method calls.
> If property check (invariant) could be issue, class designer should use
> document for proper
> property management rather than contracts. Or we may drop invariant
> support for interface.
>
> >
> > >>> We cannot ignore parent class invariants. If developer violate parent
> > >>> property restrictions,
> > >>> it's violation of parent class type and this must be forbidden. It's
> > >>> checked by invariant contract.
> > >>
> > >> I agree.
> > >
> > > We have(had) weak type system. Choosing right type system for PHP
> would be very hard.
> > > I didn't intended to bring this topic... Could we introduce simple
> "Design by Contract"
> > > concept?  Or are we going to discuss right type system for PHP?
> >
> > Sure, but are you realizing that you're discarding your own statement,
> not mine ?
>
> Type safety consideration was not intended at first.
> So I don't have problem with disregarding type safety.
> We may introduce type safety/system when we have template, strict types
> and/or overloading, for example.
>
> > I never told about the PHP type system because I don't understand what
> types have to do here. So, yes, I don't care about the PHP type system and
> that's not the subject. We are discussing about PHP conditions and when
> they are evaluated, that's all.
> >
> > And, sorry about that, but could you stop sending html messages ? It
> makes replies much harder.
>
> It seems gmail does not have the option, but I can only remove text
> formatting manually.
> Does this mail seems OK to you?
>
> Anyway, how about not to consider type safety too much now? and
> concentrate to introduce simple DbC?
> We may have option for strict type in the future for whatever type system
> we introduce at that time.
>
> Regards,
>
> --
> Yasuo Ohgaki
> yohg...@ohgaki.net
>
>

Reply via email to