Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:82369 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 87266 invoked from network); 10 Feb 2015 11:56:12 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 10 Feb 2015 11:56:12 -0000 Authentication-Results: pb1.pair.com smtp.mail=bof@bof.de; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=bof@bof.de; sender-id=pass Received-SPF: pass (pb1.pair.com: domain bof.de designates 80.242.145.70 as permitted sender) X-PHP-List-Original-Sender: bof@bof.de X-Host-Fingerprint: 80.242.145.70 mars.intermailgate.com Received: from [80.242.145.70] ([80.242.145.70:51815] helo=mars.intermailgate.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 83/65-47508-BD1F9D45 for ; Tue, 10 Feb 2015 06:56:12 -0500 Received: (qmail 15597 invoked by uid 1009); 10 Feb 2015 12:56:08 +0100 Received: from 209.85.216.173 by mars (envelope-from , uid 89) with qmail-scanner-1.25-st-qms (clamdscan: 0.96.2/20051. spamassassin: 3.3.1. perlscan: 1.25-st-qms. Clear:RC:1(209.85.216.173):. Processed in 0.260147 secs); 10 Feb 2015 11:56:08 -0000 X-Antivirus-MYDOMAIN-Mail-From: bof@bof.de via mars X-Antivirus-MYDOMAIN: 1.25-st-qms (Clear:RC:1(209.85.216.173):. Processed in 0.260147 secs Process 15583) Received: from mail-qc0-f173.google.com (gmail@bof.de@209.85.216.173) by mars.intermailgate.com with RC4-SHA encrypted SMTP; 10 Feb 2015 12:56:07 +0100 Received: by mail-qc0-f173.google.com with SMTP id w7so2238984qcr.4 for ; Tue, 10 Feb 2015 03:56:06 -0800 (PST) MIME-Version: 1.0 X-Received: by 10.140.94.6 with SMTP id f6mr49592479qge.38.1423569366140; Tue, 10 Feb 2015 03:56:06 -0800 (PST) Received: by 10.140.104.65 with HTTP; Tue, 10 Feb 2015 03:56:06 -0800 (PST) Received: by 10.140.104.65 with HTTP; Tue, 10 Feb 2015 03:56:06 -0800 (PST) In-Reply-To: References: <54D7ED22.3080001@gmail.com> <54D9DE4B.7030509@lsces.co.uk> Date: Tue, 10 Feb 2015 12:56:06 +0100 Message-ID: To: Alexander Lisachenko Cc: internals Content-Type: multipart/alternative; boundary=001a1139248261cc87050eba9219 Subject: Re: [PHP-DEV] Design by Contract From: bof@bof.de (Patrick Schaaf) --001a1139248261cc87050eba9219 Content-Type: text/plain; charset=UTF-8 Am 10.02.2015 12:45 schrieb "Alexander Lisachenko" : > > DbC is good thing, but the way you want to do this via language changes is > really awful. Why do you want to add more custom features into the > language, instead of providing an API to extend it in a more natural way by > framework developers? Ahem. Any open ended API-for-frameworks will A) force me to pick a framework and bend to the way it wants these things to look, and B) result in fragmentation and incompatibilities for any two pieces of code/library developed with different such frameworks in mind. That will be a total mess. Having it in the language means I can just use it. Unit tests can just use it, especially the PHP tests themselves. And if and where frameworks think they need to mess with it, they can surely be given some Reflection API to have a go at it. best regards Patrick --001a1139248261cc87050eba9219--