Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:106528 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 94235 invoked from network); 10 Aug 2019 17:53:30 -0000 Received: from unknown (HELO mail-ot1-f45.google.com) (209.85.210.45) by pb1.pair.com with SMTP; 10 Aug 2019 17:53:30 -0000 Received: by mail-ot1-f45.google.com with SMTP id q20so143926662otl.0 for ; Sat, 10 Aug 2019 08:21:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=4WyUd28BcEJZv2zQSjvo5p51YDBb3VkckxEnuYGpcv0=; b=g5ITs1P64WTXsL/iVZMHbVhqHkRen4dJKseHqr18rOuGjTeubwVwAhHjOGCE8PTMcW Ws4C6TrVUG+oVcKF2uXOqkvFeIn5BFQ8fIt5/8GiAjbH+TvsA5ND6lm/UXBE1P46pJoC Wxxfi6g7G1NLqA6/XUAdBVsL30ZAUeG2uzadTDDldBSTf0ilZRwvUX9DmzmW6e/BZ5Tk bpRmBMPcG9g9/479O8h7nczM9nRQIVRjIsbJ6oxVKytjaZqvy64Fld2qjTm0yUFKsgu9 Ee2zkEhDzVlekxyGdJRAhpoVmvF4j5xsW7ZnCd7Lr7FcxA25/FDjP29zH7n2g4GZfhK/ vGcw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=4WyUd28BcEJZv2zQSjvo5p51YDBb3VkckxEnuYGpcv0=; b=aWWMuR7PXKZiG2saR91pfW2jBweDMsEU9J9F6ZZWs2TbVbBI5EhQIR4bNmhakc+9y5 lUjV168W6ruM3Skh4Sx2zmL0vfgb9WKBHm2VSC5+fcTMDDg6TveT+8kTTx+Dmr4suybi TmNwdo9ghYVmYV0NqnnRqPCO3MIR7dzdxZedlBR3PqOsADcXn7vtS+3HB0rLLuL0F3be JtgZSsReCp8D8ix0jpsbBTXtl4LUx/Bx2d3ZobBh8aXDdHJqPpeF99lheKfdrrtWW9ob HqaZ7hbKVjxTGK1OBjo8aWBWbALOM7U1Mazlt/qVIkr5AcW+1w4Ug9x0te1XFvM+2IQP BkSw== X-Gm-Message-State: APjAAAVygYwRvuQSCuN7JH0TIZv5LMKuRNKa93U7C/Qx1zh9eqA2rqWF 6/PfAvT0n38dWAdZxaNWqxgOmvBxOPrdcQbbgSM= X-Google-Smtp-Source: APXvYqzs8YwqqT1YsWNS4yhV4RBS0mw2Kyjswqgds7C/3d50umY03tuvszocEC1PYLDBx4bx5giVNO1VBKjJ1OeOJKs= X-Received: by 2002:a5d:8550:: with SMTP id b16mr5632678ios.11.1565450470144; Sat, 10 Aug 2019 08:21:10 -0700 (PDT) MIME-Version: 1.0 References: <5d4e9057.1c69fb81.bdf14.8d8fSMTPIN_ADDED_MISSING@mx.google.com> In-Reply-To: Date: Sat, 10 Aug 2019 11:20:59 -0400 Message-ID: To: Rasmus Lerdorf Cc: Andrea Faulds , PHP internals Content-Type: text/plain; charset="UTF-8" Subject: Re: [PHP-DEV] Re: P++: FAQ From: guilhermeblanco@gmail.com ("guilhermeblanco@gmail.com") Hi all, I tried as much as I could to stay away from this discussion. My personal take is that breaking the language in two is a *really bad idea* (shouldn't I have put caps here instead?). Anyway, people are commenting a lot on features that adds a feature to the language, but nothing was being spoken about scenarios where severe internals changes would be required. Zeev, sorry for taking you as the guinea pig here, but since you were the one that started this whole thread, I think it's fair to ask you directly. 1- How would you envision a shared runtime between PHP and P++, in the case that this new evolved solution decides to support objects as keys in array structure? This fundamentally changes internals, and a drastic change to both runtime of PHP and P++ would be required. 2- How would you envision injecting an actual namespace structure, allowing scoping support for namespaces? FYI, this is what blocked me to finish class visibility in https://github.com/php/php-src/pull/947 It'd require drastic changes in both PHP runtime and P++ too. I have added 2 small samples (feel free to ask me if you need a few more) where in order to add a feature in P++, changes to the way PHP operated would have to change too. The only I see this to operate is either P++ re-implementing the same PHP structures in order to evolve, leading to a full fork becoming more attractive, or compromises in P++ (like unable to support a given feature) because PHP would make it set back. Please let me know your thoughts on this. Cheers, On Sat, Aug 10, 2019 at 11:05 AM Rasmus Lerdorf wrote: > > On Sat, Aug 10, 2019 at 5:37 AM Andrea Faulds wrote: > > > As the person who initially proposed and implemented strict_types, I > > think this is heading in the wrong direction. Perhaps that directive was > > a mistake, if it will lead to so many attempts inspired by it to > > fragment the language, including this one. Personally, I don't actually > > want a language like C++ or Java. PHP's flexibility is great, and I > > think splitting the language means going in a direction where you are > > forced to have everything be strict or nothing be. PHP++ sounds like > > Hack, but in mainline. I think it'll end up a mess in the long term. > > > > Yes, I would suspect it would get a bit weird having a AnythingGoes > vs. NothingGoes barrier in the code like that. Forcing a balance, even > if sometimes the arguments get rather heated (and they were just as > heated, if not more so 20+ years ago), keeps everyone on the same > page and working on the same code-base without the us vs. them > situation that is bound to creep in. > > -Rasmus -- Guilherme Blanco SVP Technology at Statflo Inc. Mobile: +1 647 232 5599