Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:47224 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 52594 invoked from network); 13 Mar 2010 15:41:31 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 13 Mar 2010 15:41:31 -0000 Authentication-Results: pb1.pair.com smtp.mail=mozo@mozo.jp; spf=permerror; sender-id=permerror Authentication-Results: pb1.pair.com header.from=mozo@mozo.jp; sender-id=permerror Received-SPF: error (pb1.pair.com: domain mozo.jp from 209.85.212.42 cause and error) X-PHP-List-Original-Sender: mozo@mozo.jp X-Host-Fingerprint: 209.85.212.42 mail-vw0-f42.google.com Received: from [209.85.212.42] ([209.85.212.42:58073] helo=mail-vw0-f42.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id CF/75-15916-922BB9B4 for ; Sat, 13 Mar 2010 10:41:30 -0500 Received: by vws18 with SMTP id 18so226773vws.29 for ; Sat, 13 Mar 2010 07:41:27 -0800 (PST) MIME-Version: 1.0 Received: by 10.220.128.78 with SMTP id j14mr1937916vcs.56.1268494887256; Sat, 13 Mar 2010 07:41:27 -0800 (PST) In-Reply-To: References: <4B9926E8.4080202@lerdorf.com> <7f3ed2c31003120958w7bd41059o88869669c6f5b0d9@mail.gmail.com> <661d85d51003130107o7cf19012m7ce93f0147c7585a@mail.gmail.com> Date: Sun, 14 Mar 2010 00:41:07 +0900 Message-ID: To: Pierre Joye Cc: Chen Ze , Derick Rethans , Hannes Magnusson , Rasmus Lerdorf , PHP Developers Mailing List Content-Type: multipart/mixed; boundary=001636ed74b52788850481b07bd7 Subject: Re: [PHP-DEV] PHP 6 From: mozo@mozo.jp (Moriyoshi Koizumi) --001636ed74b52788850481b07bd7 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Surprisingly, It can be done quite easily with the current object handler infrastructure. Moriyoshi On Sun, Mar 14, 2010 at 12:08 AM, Pierre Joye wrote: > On Sat, Mar 13, 2010 at 3:13 PM, Moriyoshi Koizumi wrote: > >> I don't totally agree with what is being said here, but I guess we >> don't have to make Unicode a first-class value. =A0Once operator >> overloading is supported, Unicode strings can be represented as >> objects, like Python does although =A0I didn't have a look at past >> discussion on this topic. > > Operators overloading, while being a cool feature, should not be > associated with Unicode&related features. Or we are going to do the > exact same mistakes than before, way too many changes, features, work > to even get a visible deadline for the next major release. > > Cheers, > -- > Pierre > > @pierrejoye | http://blog.thepimp.net | http://www.libgd.org > --001636ed74b52788850481b07bd7 Content-Type: text/plain; charset=US-ASCII; name="php-5.3-object-overloading-poc.patch.diff.txt" Content-Disposition: attachment; filename="php-5.3-object-overloading-poc.patch.diff.txt" Content-Transfer-Encoding: base64 X-Attachment-Id: f_g6ql33310 ZGlmZiAtLWdpdCBhL1plbmQvemVuZC5oIGIvWmVuZC96ZW5kLmgKaW5kZXggMzhmNDYxYy4uMGZm Y2IxYSAxMDA2NDQKLS0tIGEvWmVuZC96ZW5kLmgKKysrIGIvWmVuZC96ZW5kLmgKQEAgLTQ0Miw2 ICs0NDIsNyBAQCBzdHJ1Y3QgX3plbmRfY2xhc3NfZW50cnkgewogCXVuaW9uIF96ZW5kX2Z1bmN0 aW9uICpfX2NhbGw7CiAJdW5pb24gX3plbmRfZnVuY3Rpb24gKl9fY2FsbHN0YXRpYzsKIAl1bmlv biBfemVuZF9mdW5jdGlvbiAqX190b3N0cmluZzsKKwl1bmlvbiBfemVuZF9mdW5jdGlvbiAqX19j b25jYXQ7CiAJdW5pb24gX3plbmRfZnVuY3Rpb24gKnNlcmlhbGl6ZV9mdW5jOwogCXVuaW9uIF96 ZW5kX2Z1bmN0aW9uICp1bnNlcmlhbGl6ZV9mdW5jOwogCmRpZmYgLS1naXQgYS9aZW5kL3plbmRf QVBJLmMgYi9aZW5kL3plbmRfQVBJLmMKaW5kZXggNTQzM2RjMS4uZTBkY2Q3MyAxMDA2NDQKLS0t IGEvWmVuZC96ZW5kX0FQSS5jCisrKyBiL1plbmQvemVuZF9BUEkuYwpAQCAtMTc5OSw3ICsxNzk5 LDcgQEAgWkVORF9BUEkgaW50IHplbmRfcmVnaXN0ZXJfZnVuY3Rpb25zKHplbmRfY2xhc3NfZW50 cnkgKnNjb3BlLCBjb25zdCB6ZW5kX2Z1bmN0aW8KIAlpbnQgY291bnQ9MCwgdW5sb2FkPTA7CiAJ SGFzaFRhYmxlICp0YXJnZXRfZnVuY3Rpb25fdGFibGUgPSBmdW5jdGlvbl90YWJsZTsKIAlpbnQg ZXJyb3JfdHlwZTsKLQl6ZW5kX2Z1bmN0aW9uICpjdG9yID0gTlVMTCwgKmR0b3IgPSBOVUxMLCAq Y2xvbmUgPSBOVUxMLCAqX19nZXQgPSBOVUxMLCAqX19zZXQgPSBOVUxMLCAqX191bnNldCA9IE5V TEwsICpfX2lzc2V0ID0gTlVMTCwgKl9fY2FsbCA9IE5VTEwsICpfX2NhbGxzdGF0aWMgPSBOVUxM LCAqX190b3N0cmluZyA9IE5VTEw7CisJemVuZF9mdW5jdGlvbiAqY3RvciA9IE5VTEwsICpkdG9y ID0gTlVMTCwgKmNsb25lID0gTlVMTCwgKl9fZ2V0ID0gTlVMTCwgKl9fc2V0ID0gTlVMTCwgKl9f dW5zZXQgPSBOVUxMLCAqX19pc3NldCA9IE5VTEwsICpfX2NhbGwgPSBOVUxMLCAqX19jYWxsc3Rh dGljID0gTlVMTCwgKl9fdG9zdHJpbmcgPSBOVUxMLCAqX19jb25jYXQgPSBOVUxMOwogCWNoYXIg Kmxvd2VyY2FzZV9uYW1lOwogCWludCBmbmFtZV9sZW47CiAJY2hhciAqbGNfY2xhc3NfbmFtZSA9 IE5VTEw7CkBAIC0xOTI5LDYgKzE5MjksOCBAQCBaRU5EX0FQSSBpbnQgemVuZF9yZWdpc3Rlcl9m dW5jdGlvbnMoemVuZF9jbGFzc19lbnRyeSAqc2NvcGUsIGNvbnN0IHplbmRfZnVuY3RpbwogCQkJ CV9fdW5zZXQgPSByZWdfZnVuY3Rpb247CiAJCQl9IGVsc2UgaWYgKChmbmFtZV9sZW4gPT0gc2l6 ZW9mKFpFTkRfSVNTRVRfRlVOQ19OQU1FKS0xKSAmJiAhbWVtY21wKGxvd2VyY2FzZV9uYW1lLCBa RU5EX0lTU0VUX0ZVTkNfTkFNRSwgc2l6ZW9mKFpFTkRfSVNTRVRfRlVOQ19OQU1FKSkpIHsKIAkJ CQlfX2lzc2V0ID0gcmVnX2Z1bmN0aW9uOworCQkJfSBlbHNlIGlmICgoZm5hbWVfbGVuID09IHNp emVvZihaRU5EX0NPTkNBVF9GVU5DX05BTUUpLTEpICYmICFtZW1jbXAobG93ZXJjYXNlX25hbWUs IFpFTkRfQ09OQ0FUX0ZVTkNfTkFNRSwgc2l6ZW9mKFpFTkRfQ09OQ0FUX0ZVTkNfTkFNRSkpKSB7 CisJCQkJX19jb25jYXQgPSByZWdfZnVuY3Rpb247CiAJCQl9IGVsc2UgewogCQkJCXJlZ19mdW5j dGlvbiA9IE5VTEw7CiAJCQl9CkBAIC0xOTY3LDYgKzE5NjksNyBAQCBaRU5EX0FQSSBpbnQgemVu ZF9yZWdpc3Rlcl9mdW5jdGlvbnMoemVuZF9jbGFzc19lbnRyeSAqc2NvcGUsIGNvbnN0IHplbmRf ZnVuY3RpbwogCQlzY29wZS0+X19zZXQgPSBfX3NldDsKIAkJc2NvcGUtPl9fdW5zZXQgPSBfX3Vu c2V0OwogCQlzY29wZS0+X19pc3NldCA9IF9faXNzZXQ7CisgICAgICAgIHNjb3BlLT5fX2NvbmNh dCA9IF9fY29uY2F0OwogCQlpZiAoY3RvcikgewogCQkJY3Rvci0+Y29tbW9uLmZuX2ZsYWdzIHw9 IFpFTkRfQUNDX0NUT1I7CiAJCQlpZiAoY3Rvci0+Y29tbW9uLmZuX2ZsYWdzICYgWkVORF9BQ0Nf U1RBVElDKSB7CkBAIC0yMDMwLDYgKzIwMzMsMTIgQEAgWkVORF9BUEkgaW50IHplbmRfcmVnaXN0 ZXJfZnVuY3Rpb25zKHplbmRfY2xhc3NfZW50cnkgKnNjb3BlLCBjb25zdCB6ZW5kX2Z1bmN0aW8K IAkJCX0KIAkJCV9faXNzZXQtPmNvbW1vbi5mbl9mbGFncyAmPSB+WkVORF9BQ0NfQUxMT1dfU1RB VElDOwogCQl9CisJCWlmIChfX2NvbmNhdCkgeworCQkJaWYgKF9fY29uY2F0LT5jb21tb24uZm5f ZmxhZ3MgJiBaRU5EX0FDQ19TVEFUSUMpIHsKKwkJCQl6ZW5kX2Vycm9yKGVycm9yX3R5cGUsICJN ZXRob2QgJXM6OiVzKCkgY2Fubm90IGJlIHN0YXRpYyIsIHNjb3BlLT5uYW1lLCBfX2NvbmNhdC0+ Y29tbW9uLmZ1bmN0aW9uX25hbWUpOworCQkJfQorCQkJX19jb25jYXQtPmNvbW1vbi5mbl9mbGFn cyAmPSB+WkVORF9BQ0NfQUxMT1dfU1RBVElDOworCQl9CiAJCWVmcmVlKGxjX2NsYXNzX25hbWUp OwogCX0KIAlyZXR1cm4gU1VDQ0VTUzsKZGlmZiAtLWdpdCBhL1plbmQvemVuZF9jb21waWxlLmMg Yi9aZW5kL3plbmRfY29tcGlsZS5jCmluZGV4IDEzYjZjNTUuLjkxY2QzNGEgMTAwNjQ0Ci0tLSBh L1plbmQvemVuZF9jb21waWxlLmMKKysrIGIvWmVuZC96ZW5kX2NvbXBpbGUuYwpAQCAtMTI2Nyw2 ICsxMjY3LDEwIEBAIHZvaWQgemVuZF9kb19iZWdpbl9mdW5jdGlvbl9kZWNsYXJhdGlvbih6bm9k ZSAqZnVuY3Rpb25fdG9rZW4sIHpub2RlICpmdW5jdGlvbl9uCiAJCQl9IGVsc2UgaWYgKChuYW1l X2xlbiA9PSBzaXplb2YoWkVORF9UT1NUUklOR19GVU5DX05BTUUpLTEpICYmICghbWVtY21wKGxj bmFtZSwgWkVORF9UT1NUUklOR19GVU5DX05BTUUsIHNpemVvZihaRU5EX1RPU1RSSU5HX0ZVTkNf TkFNRSktMSkpKSB7CiAJCQkJaWYgKGZuX2ZsYWdzICYgKChaRU5EX0FDQ19QUFBfTUFTSyB8IFpF TkRfQUNDX1NUQVRJQykgXiBaRU5EX0FDQ19QVUJMSUMpKSB7CiAJCQkJCXplbmRfZXJyb3IoRV9X QVJOSU5HLCAiVGhlIG1hZ2ljIG1ldGhvZCBfX3RvU3RyaW5nKCkgbXVzdCBoYXZlIHB1YmxpYyB2 aXNpYmlsaXR5IGFuZCBjYW5ub3QgYmUgc3RhdGljIik7CisgICAgICAgICAgICAgICAgfQorCQkJ fSBlbHNlIGlmICgobmFtZV9sZW4gPT0gc2l6ZW9mKFpFTkRfQ09OQ0FUX0ZVTkNfTkFNRSktMSkg JiYgKCFtZW1jbXAobGNuYW1lLCBaRU5EX0NPTkNBVF9GVU5DX05BTUUsIHNpemVvZihaRU5EX0NP TkNBVF9GVU5DX05BTUUpLTEpKSkgeworCQkJCWlmIChmbl9mbGFncyAmICgoWkVORF9BQ0NfUFBQ X01BU0sgfCBaRU5EX0FDQ19TVEFUSUMpIF4gWkVORF9BQ0NfUFVCTElDKSkgeworCQkJCQl6ZW5k X2Vycm9yKEVfV0FSTklORywgIlRoZSBtYWdpYyBtZXRob2QgIiBaRU5EX0NPTkNBVF9GVU5DX05B TUUgIiBtdXN0IGhhdmUgcHVibGljIHZpc2liaWxpdHkgYW5kIGNhbm5vdCBiZSBzdGF0aWMiKTsK IAkJCQl9CiAJCQl9CiAJCX0gZWxzZSB7CkBAIC0xMzM1LDYgKzEzMzksMTEgQEAgdm9pZCB6ZW5k X2RvX2JlZ2luX2Z1bmN0aW9uX2RlY2xhcmF0aW9uKHpub2RlICpmdW5jdGlvbl90b2tlbiwgem5v ZGUgKmZ1bmN0aW9uX24KIAkJCQkJemVuZF9lcnJvcihFX1dBUk5JTkcsICJUaGUgbWFnaWMgbWV0 aG9kIF9fdG9TdHJpbmcoKSBtdXN0IGhhdmUgcHVibGljIHZpc2liaWxpdHkgYW5kIGNhbm5vdCBi ZSBzdGF0aWMiKTsKIAkJCQl9CQkJCQogCQkJCUNHKGFjdGl2ZV9jbGFzc19lbnRyeSktPl9fdG9z dHJpbmcgPSAoemVuZF9mdW5jdGlvbiAqKSBDRyhhY3RpdmVfb3BfYXJyYXkpOworCQkJfSBlbHNl IGlmICgobmFtZV9sZW4gPT0gc2l6ZW9mKFpFTkRfQ09OQ0FUX0ZVTkNfTkFNRSktMSkgJiYgKCFt ZW1jbXAobGNuYW1lLCBaRU5EX0NPTkNBVF9GVU5DX05BTUUsIHNpemVvZihaRU5EX0NPTkNBVF9G VU5DX05BTUUpLTEpKSkgeworCQkJCWlmIChmbl9mbGFncyAmICgoWkVORF9BQ0NfUFBQX01BU0sg fCBaRU5EX0FDQ19TVEFUSUMpIF4gWkVORF9BQ0NfUFVCTElDKSkgeworCQkJCQl6ZW5kX2Vycm9y KEVfV0FSTklORywgIlRoZSBtYWdpYyBtZXRob2QgIiBaRU5EX0NPTkNBVF9GVU5DX05BTUUgIiBt dXN0IGhhdmUgcHVibGljIHZpc2liaWxpdHkgYW5kIGNhbm5vdCBiZSBzdGF0aWMiKTsKKwkJCQl9 CQkJCQorCQkJCUNHKGFjdGl2ZV9jbGFzc19lbnRyeSktPl9fY29uY2F0ID0gKHplbmRfZnVuY3Rp b24gKikgQ0coYWN0aXZlX29wX2FycmF5KTsKIAkJCX0gZWxzZSBpZiAoIShmbl9mbGFncyAmIFpF TkRfQUNDX1NUQVRJQykpIHsKIAkJCQlDRyhhY3RpdmVfb3BfYXJyYXkpLT5mbl9mbGFncyB8PSBa RU5EX0FDQ19BTExPV19TVEFUSUM7CiAJCQl9CmRpZmYgLS1naXQgYS9aZW5kL3plbmRfY29tcGls ZS5oIGIvWmVuZC96ZW5kX2NvbXBpbGUuaAppbmRleCBmYWZmMWVjLi4wNjU2ODgzIDEwMDY0NAot LS0gYS9aZW5kL3plbmRfY29tcGlsZS5oCisrKyBiL1plbmQvemVuZF9jb21waWxlLmgKQEAgLTc0 NSw2ICs3NDUsNyBAQCBFTkRfRVhURVJOX0MoKQogI2RlZmluZSBaRU5EX0NBTExTVEFUSUNfRlVO Q19OQU1FICAgIl9fY2FsbHN0YXRpYyIKICNkZWZpbmUgWkVORF9UT1NUUklOR19GVU5DX05BTUUg ICAgICJfX3Rvc3RyaW5nIgogI2RlZmluZSBaRU5EX0FVVE9MT0FEX0ZVTkNfTkFNRSAgICAgIl9f YXV0b2xvYWQiCisjZGVmaW5lIFpFTkRfQ09OQ0FUX0ZVTkNfTkFNRQkJIl9fY29uY2F0IgogCiAv KiBUaGUgZm9sbG93aW5nIGNvbnN0YW50cyBtYXkgYmUgY29tYmluZWQgaW4gQ0coY29tcGlsZXJf b3B0aW9ucykKICAqIHRvIGNoYW5nZSB0aGUgZGVmYXVsdCBjb21waWxlciBiZWhhdmlvciAqLwo= --001636ed74b52788850481b07bd7--