Re: Design by Contract
| From: | Joe Watkins | Date: | Wed, 11 Feb 2015 07:54:20 +0000 |
| Subject: | Re: Design by Contract | ||
| References: | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-82445@lists.php.net to get a copy of this message | ||
So it turns out that invariant is already deprecated in D, they have
dropped it in favour of immutable properties.
I guess I'll have to install an old version, or try to extract everything
we need from their obviously outdated documentation ...
Grrr ...
Cheers
Joe
On Wed, Feb 11, 2015 at 7:50 AM, Yasuo Ohgaki <yohgaki@ohgaki.net> wrote:
> Hi Dmitry,
>
> On Wed, Feb 11, 2015 at 4:26 PM, Dmitry Stogov <dmitry@zend.com> wrote:
>
>> I think we should just repeat the related D semantic.
>> It must be defined in contracts inheritance rules.
>>
>> What if we have contracts for prototype method in parent class and
>> interface?
>> Should we still validate contracts of parent and interface if we add our
>> owns?
>> etc.
>
>
> Both D and Eiffel evaluates all contracts defined in parents/interfaces.
>
> Both D and Eiffel has method like invariant definition. They don't inherit
> explicitly, but inherit implicitly always. That's why I sent strange mail.
> I read code
> and misunderstood by mistake. I don't code with D much, but I really like
> the
> feature ;)
>
> Regards,
>
> --
> Yasuo Ohgaki
> yohgaki@ohgaki.net
>
>