Hi all,

On Sat, Feb 14, 2015 at 12:03 PM, François Laupretre <franc...@php.net>
wrote:
>
> > De : yohg...@gmail.com [mailto:yohg...@gmail.com] De la part de Yasuo
Ohgaki
> >
> > We have discussed most of issues for https://wiki.php.net/rfc/dbc2
>
> I am not sure anyone except hardly 5 people has the impression that the
subject was discussed, as the RFCs were not even officially announced on
the list. OK, you discussed with 2 or 3 people about building your RFC.
Now, the RFC is here, and the REAL OPEN discussion can start with a new
thread prefixed with '[RFC]'. You cannot open a vote before anyone had a
chance to give its opinion.

Open discussion is needed, of course.
What I meant is discussion for writing up draft RFC is close to finish.

>
> Actually, I was waiting for the end of the 'scalar type hinting' vote to
start the DbC discussion but we can start it now.
>

Yes, if we can confirm everyone think the draft is ready to be discussed.
According to RFC for voting. We must send mail titled "[RFC]" for
discussion.

> About all the missing stuff you include in your mail, is your RFC really
ready to start a discussion if there are still so many missing things ? I'm
afraid it is not.

Don't worry, we'll have discussion for vote. We had discussion for writing
RFC.

>
> > "These observations shed light on the true significance of inheritance:
not just a reuse,
> > subtyping and classification mechanism, but a way to ensure compatible
semantics by
> > other means. They also provide useful guidance as to how to use
inheritance properly."
>
> Do you seriously plan to include such bullshit in your RFC ?

I don't care. It's a statement from Eiffel folks. We don't have buy it.

>
> > For method calls, overridden method should not evaluate parents
contract on entry.
> > It should be evaluated when parent method is called.
>
> I already told you : the logic you are using for pre-conditions is NOT
compatible with Eiffel and D logic, although this is what you're supposed
to mimic. It is actually the opposite. Is it a wanted behavior ? because
you should be aware that it does not respect the LS principle.

I'll check how your RFC is handling this later.

>
> > - Consider introduction of static require() as class invariant for
static methods
> > I probably don't understand the idea correctly. Could you give some
explanations?
>
> He's probably talking about a new set of conditions that couldn't use
'$this'. Unlike 'dynamic' invariants, these can also be checked before and
after static methods.

OK. So it's for invariant.

>
> > Syntax is not my priority.
> > We are better to avoid new keyword whenever it's possible.
>
> Just my opinion : syntax IS important. I agree that new keywords should
be avoided but reusing 'require' and 'return' is too ambiguous. I say that
syntax is important because I'm sure that's the only point people will
complain about.

Right. That's the reason why syntax is not important to me.
I just would like to accept whatever syntax that does not have issues.

>
> > How to manage votes for 2 RFCs
>
> Your RFC is not even ready for discussion. Anyway, the vote will probably
be about your RFC only.

Yes, we need to finish draft for discussion.
Why? There are many who people like annotation approach.

>
> > ==Annotation DbC Implementation==
> > Dmitry, I guess it wouldn't be too hard for you to implement this RFC.
How about annotation
> > version? Can it be implemented with reasonable amount of efforts?
>
> My RFC is not supposed to be implemented in the core. Derick is OK to
help me adding the feature to Xdebug. This way, it will be available for
every PHP versions supported by Xdebug.
>
> Actually, I keep the RFC to get people's opinion and to refine what I
have in mind after scalar type hints are voted upon but, technically, I
don't need it anymore.

I see. Xdebug or other annotation would work.
I didn't have much time to read/verify your RFC. I'll read it again soon.

>
> > Native DbC support syntax:
> > class Child {
> >     require($this->age < 18); // Invariant (Class state condition)
>
> If, after writing the RFC, you keep writing your conditions after the
first '{', are you sure your syntax is so intuitive ? ;)

Any syntax needs time to getting use to it :)

>
> And, please, prefix lines with '>' chars when you post a reply. Thanks.

Did gmail something wrong? What kind of problem was it?
I've removed text formatting, so this time it shouldn't have issues.

Regards,

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

Reply via email to