Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:82378 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 2494 invoked from network); 10 Feb 2015 12:36:00 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 10 Feb 2015 12:36:00 -0000 Authentication-Results: pb1.pair.com smtp.mail=pajousek@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=pajousek@gmail.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.192.45 as permitted sender) X-PHP-List-Original-Sender: pajousek@gmail.com X-Host-Fingerprint: 209.85.192.45 mail-qg0-f45.google.com Received: from [209.85.192.45] ([209.85.192.45:48403] helo=mail-qg0-f45.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id EE/A8-47508-F2BF9D45 for ; Tue, 10 Feb 2015 07:36:00 -0500 Received: by mail-qg0-f45.google.com with SMTP id h3so20631352qgf.4 for ; Tue, 10 Feb 2015 04:35:56 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=yOTfIdwW3cjEo6qxFXEUTcQUI0U7sHKzwIU2gARc60E=; b=RqxPwV1HHYvvRarqApJdylzNaEz09CaozaYrEr8xBjnCUa3v6E+xTIRbkgeuG3+ZVR QPi1+B0d4lPWSKVpCkDMTry1ynicLj53uhkL2pyWJg+dl2zIkrzzz9t8isGrhE6IaEUH 8GFb673F+R4u6b03Edv72Necdy553bbyp/Gp0k840fn6FHp/JyDDQJo4KfwW38dQHvmn d//KMS9kRlyJR9l07At9fXxmWXjgHP+CQDp2IyXWmVoktbMlAhBtf4jvpSKrJt2gX6Lh l8rDqYXSIIJPwYKLhiIM/yIUGOx4Ts3CynhvxEuIUteCC5E6kf/ygm9RQRM3ge+36r2M tZGA== MIME-Version: 1.0 X-Received: by 10.140.93.73 with SMTP id c67mr14883416qge.53.1423571756524; Tue, 10 Feb 2015 04:35:56 -0800 (PST) Received: by 10.96.66.201 with HTTP; Tue, 10 Feb 2015 04:35:56 -0800 (PST) In-Reply-To: References: <54D7ED22.3080001@gmail.com> <54D9DE4B.7030509@lsces.co.uk> Date: Tue, 10 Feb 2015 13:35:56 +0100 Message-ID: To: Alexander Lisachenko Cc: Dmitry Stogov , Lester Caine , PHP internals list Content-Type: text/plain; charset=UTF-8 Subject: Re: [PHP-DEV] Design by Contract From: pajousek@gmail.com (=?UTF-8?Q?Pavel_Kou=C5=99il?=) On Tue, Feb 10, 2015 at 1:30 PM, Alexander Lisachenko wrote: > 2015-02-10 15:20 GMT+03:00 Dmitry Stogov : > >> I thought about this way, and you are welcome to start composing another >> RFC. it makes sense and has its advantages. >> Unfortunately, it relays on many unavailable features that has to be >> designed as well (annotations, AST manipulation, opcode manipulation), but >> may be this is a right road. >> > > > Thanks, Dmitry! Your position is clearly highlight my vision, it's not so > easy, but maybe it will bring us much more profit at the end. > > > 2015-02-10 15:20 GMT+03:00 Dmitry Stogov : > >> D and Effiel approach may work as well, but if you like another >> (annotation based) approach - be involved into development. >> At first we'll need 3-rd RFC that defines all the things that must be >> implemented. >> I may help, with RFC, design and implementation. >> > > Thanks, your help is really appreciated ) I'l try to start another one RFC > about this API, let's have a look what can be done. Hello, maybe you could try to consult your ideas with Ivan Enderlin. He mentioned in previous emails (for instance http://news.php.net/php.internals/82245) that he would prefer some AOP/hook-based approach to DbC as well, so it may be compatible with your mindset. Regards Pavel Kouril