From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: AS4713 221.184.0.0/13 X-Spam-Status: No, score=-3.7 required=3.0 tests=AWL,BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED,SPF_PASS shortcircuit=no autolearn=ham autolearn_force=no version=3.4.1 Received: from neon.ruby-lang.org (neon.ruby-lang.org [221.186.184.75]) by dcvr.yhbt.net (Postfix) with ESMTP id 6881E1F404 for ; Mon, 13 Aug 2018 03:35:08 +0000 (UTC) Received: from neon.ruby-lang.org (localhost [IPv6:::1]) by neon.ruby-lang.org (Postfix) with ESMTP id 78CE41209B1; Mon, 13 Aug 2018 12:35:04 +0900 (JST) Received: from o1678916x28.outbound-mail.sendgrid.net (o1678916x28.outbound-mail.sendgrid.net [167.89.16.28]) by neon.ruby-lang.org (Postfix) with ESMTPS id 4CF46120928 for ; Mon, 13 Aug 2018 12:35:01 +0900 (JST) Received: by filter0067p3iad2.sendgrid.net with SMTP id filter0067p3iad2-25771-5B70FC61-6 2018-08-13 03:34:57.211048567 +0000 UTC m=+192687.701025683 Received: from herokuapp.com (ec2-54-204-223-32.compute-1.amazonaws.com [54.204.223.32]) by ismtpd0020p1iad2.sendgrid.net (SG) with ESMTP id nqtBxX5RRqarJ-shYZd1AA Mon, 13 Aug 2018 03:34:57.211 +0000 (UTC) Date: Mon, 13 Aug 2018 03:34:57 +0000 (UTC) From: merch-redmine@jeremyevans.net To: ruby-core@ruby-lang.org Message-ID: References: Mime-Version: 1.0 X-Redmine-MailingListIntegration-Message-Ids: 63848 X-Redmine-Project: ruby-trunk X-Redmine-Issue-Id: 14982 X-Redmine-Issue-Author: jjyr X-Redmine-Sender: jeremyevans0 X-Mailer: Redmine X-Redmine-Host: bugs.ruby-lang.org X-Redmine-Site: Ruby Issue Tracking System X-Auto-Response-Suppress: All Auto-Submitted: auto-generated X-SG-EID: ync6xU2WACa70kv/Ymy4QrNMhiuLXJG8OTL2vJD1yS6668ljpqj7leR7Q0+8quzHBtO/rCSPB1mMb1 NNkgxdVa3N+GzMSRpNNIW5/cP5wC5UkMKDsWyIa8bhiqANLmLvarmHAlcB58Z14XOI+HJiVWlYkS9M oZB0JOuYhea2JQQuK4egyzoo1gMEMrQIjUSj5k0DqGOP/hc8hxWwxZpSag== X-ML-Name: ruby-core X-Mail-Count: 88459 Subject: [ruby-core:88459] [Ruby trunk Feature#14982] Improve namespace system in ruby to avoiding top-level names chaos X-BeenThere: ruby-core@ruby-lang.org X-Mailman-Version: 2.1.15 Precedence: list Reply-To: Ruby developers List-Id: Ruby developers List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: ruby-core-bounces@ruby-lang.org Sender: "ruby-core" SXNzdWUgIzE0OTgyIGhhcyBiZWVuIHVwZGF0ZWQgYnkgamVyZW15ZXZhbnMwIChKZXJlbXkgRXZh bnMpLgoKCkluIHRoZSBXaHk/IHNlY3Rpb24sIGNhc2UgMSBpcyBqdXN0IGEgcHJvZ3JhbW1pbmcg ZXJyb3Igb24gdGhlIGxpYnJhcnkgZGV2ZWxvcGVyJ3Mgb3IgbGlicmFyeSB1c2VyJ3MgcGFydCwg ZGVwZW5kaW5nIG9uIGhvdyB0aGUgbGlicmFyeSBpcyBkb2N1bWVudGVkLiAgCgpJbiB0ZXJtcyBv ZiBjYXNlIDIgKG11bHRpcGxlIGdlbXMgZGVmaW5lIG92ZXJsYXBwaW5nIGNvbnN0YW50cyBpbiB0 aGUgdG9wIGxldmVsIG5hbWVzcGFjZSksIHRoYXQgY291bGQgYmUgYSBpc3N1ZSBpbiB0aGVvcnks IGJ1dCBpdCBkb2Vzbid0IGdlbmVyYWxseSBwcmVzZW50IGEgcHJvYmxlbSBpbiBwcmFjdGljZSBh cyBsaWJyYXJ5IGF1dGhvcnMgaW4gbW9zdCBjYXNlcyB0YWtlIGNhcmUgdG8gY2hvb3NlIG5vbi1v dmVybGFwcGluZyBuYW1lcy4KCkl0IHdpbGwgcHJvYmFibHkgYmUgY2hhbGxlbmdpbmcgdG8gbWFr ZSBgaW1wb3J0YCB3b3JrIHdpdGggcnVieSdzIGNvbnN0YW50IGxvb2t1cCBpZiB0aGUgdG9wIGxl dmVsIG5hbWVzcGFjZSBpcyBub3QgYWN0dWFsbHkgbW9kaWZpZWQuICBMaWJyYXJpZXMgbWF5IGV4 cGVjdCB0aGF0IHRoZWlyIGNvbnN0YW50cyBuYW1lcyBhcmUgYXZhaWxhYmxlIGluIHRoZSB0b3Ag bGV2ZWwgbmFtZXNwYWNlOgoKfn5+IHJ1YnkKIyBmb29fYS5yYgpjbGFzcyBGb28KICBkZWYgc2Vs Zi5mb28KICAgIDo6Rm9vCiAgICAjIG9yIEZvbwogICAgIyBvciBPYmplY3QuY29uc3RfZ2V0KDpG b28pCiAgZW5kCmVuZAoKIyBmb29fYi5yYgpjbGFzcyBGb28KICBkZWYgc2VsZi5mb28KICAgIDo6 Rm9vCiAgZW5kCmVuZAoKIyBtYWluCm5hbWVzcGFjZSA6QmFyIGRvCiAgaW1wb3J0IDpGb28sIGFz OiA6Rm9vX0EsIGZyb206ICdmb29fYScKICBpbXBvcnQgOkZvbywgYXM6IDpGb29fQiwgZnJvbTog J2Zvb19iJwoKICBGb29fQS5mb28KICBGb29fQi5mb28KZW5kCn5+fgoKSSBzdXBwb3NlIGl0IGlz IHBvc3NpYmxlLCBidXQgQ1JFRiBoYW5kbGluZyBpbiB0aGUgVk0gd291bGQgaGF2ZSB0byBiZSBt YWRlIHNpZ25pZmljYW50bHkgbW9yZSBjb21wbGV4IHRvIGltcGxlbWVudCBpdCBjb3JyZWN0bHkg KHNvIHRoYXQgdGhlIGNvZGUgd29ya3MgdGhlIHNhbWUgYm90aCB2aWEgYHJlcXVpcmVgIGFuZCBg aW1wb3J0IDphc2ApLgoKCllvdSBjYW4gc29ydCBvZiBnZXQgd2hhdCB5b3Ugd2FudCBpbiB0ZXJt cyBvZiBhbiBpc29sYXRlZCBuYW1lc3BhY2Ugd2l0aCBCYXNpY09iamVjdCBzdWJjbGFzc2VzOgoK fn5+IHJ1YnkKY2xhc3MgRm9vCmVuZAoKY2xhc3MgSGVsbG8gPCBCYXNpY09iamVjdAplbmQKCmNs YXNzIEhlbGxvCiAgRm9vICMgTmFtZUVycm9yCmVuZAoKSGVsbG86OkZvbyA9IDo6Rm9vCgpjbGFz cyBIZWxsbwogIEZvbyAjIG5vIE5hbWVFcnJvcgplbmQKCm1vZHVsZSBBCiAgbW9kdWxlIEIKICAg IG1vZHVsZSBDCiAgICAgIG1vZHVsZSBECiAgICAgIGVuZAogICAgZW5kCiAgZW5kCmVuZAoKSGVs bG86OkUgPSA6OkE6OkI6OkM6OkQKCmRlZiBGb28uZm9vOyAxOyBlbmQKT2JqZWN0LnNlbmQoOnJl bW92ZV9jb25zdCwgOkZvbykKCnJlcXVpcmUgJ2Zvb19hJwojIGluIGZvb19hLnJiCiMgY2xhc3Mg Rm9vOyBlbmQKIyBkZWYgRm9vLmZvbzsgMjsgZW5kCkhlbGxvOjpGb29fQSA9IE9iamVjdC5zZW5k KDpyZW1vdmVfY29uc3QsIDpGb28pCgpyZXF1aXJlICdmb29fYicKIyBpbiBmb29fYi5yYgojIGNs YXNzIEZvbzsgZW5kCiMgZGVmIEZvby5mb287IDM7IGVuZApIZWxsbzo6Rm9vX0IgPSBPYmplY3Qu c2VuZCg6cmVtb3ZlX2NvbnN0LCA6Rm9vKQoKY2xhc3MgSGVsbG8KICBjbGFzcyBCYXIKICAgIGRl ZiB4eHgKICAgICAgW0ZvbywgRm9vX0EsIEZvb19CXS5tYXB7fHN8IFtzLCBzLmZvb119CiAgICBl bmQKICBlbmQKZW5kCgpIZWxsbzo6QmFyLm5ldy54eHgKIyBbW0ZvbywgMV0sIFtGb28sIDJdLCBb Rm9vLCAzXV0Kfn5+CgpTdWNoIGFuIGFwcHJvYWNoIGNlcnRhaW5seSBoYXMgaXQncyBvd24gaXNz dWVzLCB0aG91Z2guIEFsc28sIGl0IGRvZXNuJ3QgcmVhbGx5IGFkZHJlc3MgdGhlIGlzc3VlIG9m IHRyeWluZyB0byBoYW5kbGUgb3ZlcmxhcHBpbmcgdG9wIGxldmVsIGNvbnN0YW50cyBpbiBzZXBh cmF0ZSBsaWJyYXJpZXMuCgpJIHNlZSB0aGUgYmVuZWZpdHMgb2YgdGhpcyBwcm9wb3NhbCwgYXMg cmVxdWlyZSBpbnRvIGlzb2xhdGVkIGJpbmRpbmcgaXMgYSBuaWNlIHRvIGhhdmUgYXNzdW1pbmcg ZXZlcnl0aGluZyBjb250aW51ZXMgdG8gd29yay4gSG93ZXZlciwgSSBkb24ndCB0aGluayB0aGUg YmVuZWZpdHMgb2YgdGhpcyBwcm9wb3NhbCB3b3VsZCBleGNlZWQgdGhlIGltcGxlbWVudGF0aW9u IGFuZCBtYWludGVuYW5jZSBjb3N0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLQpGZWF0dXJlICMxNDk4MjogSW1wcm92ZSBuYW1lc3BhY2Ugc3lzdGVtIGluIHJ1Ynkg dG8gYXZvaWRpbmcgdG9wLWxldmVsICBuYW1lcyBjaGFvcwpodHRwczovL2J1Z3MucnVieS1sYW5n Lm9yZy9pc3N1ZXMvMTQ5ODIjY2hhbmdlLTczNTI2CgoqIEF1dGhvcjogamp5ciAoSmlueWFuZyBK aWFuZykKKiBTdGF0dXM6IE9wZW4KKiBQcmlvcml0eTogTm9ybWFsCiogQXNzaWduZWU6IAoqIFRh cmdldCB2ZXJzaW9uOiAKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpV cGRhdGVkOiBodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy9pc3N1ZXMvMTQ5ODIjbm90ZS01CgoK CiMjIFdoeQoKUnVieSBoYXMgZXZhbHVhdGlvbiBhbGwgY2xhc3MvbW9kdWxlIG5hbWVzIGluIHRv cC1sZXZlbCBjb250ZXh0KGFrYSBUT1BMRVZFTF9CSU5ESU5HKS4gCkFzIGEgdXNlciB3ZSBiYXNp Y2FsbHkgaGFyZCB0byBrbm93IGhvdyBtYW55IG5hbWVzIGluIHRoZSBjdXJyZW50IGNvbnRleHQs IGlzIGNhdXNpbmcgY2hhb3MgaW4gc29tZSBjYXNlcy4gRm9yIGV4YW1wbGU6CgpjYXNlIDE6IAoK UHV0IGNvbW1vbiB1c2VkIGVycm9ycyBjbGFzcyBpbiBhIHNpbmdsZSBmaWxlLCBsaWtlIGJlbG93 CgpgYGAgcnVieQojIHV0aWxzL2Vycm9ycy5yYgoKY2xhc3MgRm9vRXJyb3IKZW5kCgpjbGFzcyBC YXJFcnJvcgplbmQKYGBgCgpJbiBvdGhlciBmaWxlcyB1bmRlciAndXRpbHMnIHdlIHdhbnQgdG8g dXNlIHRob3NlIGVycm9ycywgc28gdGhlIGJlc3QgcHJhY3RpY2UgaXMgdG8gdXNlIGByZXF1aXJl X3JlbGF0aXZlICdlcnJvcnMnYCBpbiBlYWNoIGZpbGUgd2UgbmVlZC4KCmBgYCBydWJ5CiMgdXRp bHMvYmluYXJ5X2hlbHBlci5yYgoKIyB3ZSBmb3JnZXQgcmVxdWlyZSBlcnJvcnMKCm1vZHVsZSBC aW5hcnlIZWxwZXIKIyAuLi4KICByYWlzZSBCYXJFcnJvcgojIC4uLgplbmQKCmBgYAoKQnV0IHNv bWV0aW1lIHdlIG1heSBmb3JnZXQgdG8gcmVxdWlyZSBkZXBlbmRlbmNpZXMgaW4gYSBmaWxlLCBp dCdzIGhhcmQgdG8gbm90aWNlIGJlY2F1c2UKIGlmIFJ1YnlWTSBhbHJlYWR5IGV4ZWN1dGUgdGhl IHJlcXVpcmVzIHdlIHN0aWxsIGNhbiBhY2Nlc3MgdGhlIG5hbWUgQmFyRXJyb3IsCgpidXQgaWYg dXNlciBkaXJlY3RseSB0byByZXF1aXJlICd1dGlscy9iaW5hcnlfaGVscGVyJywgaGUvc2hlIHdp bGwgZ290IGFuIE5hbWVFcnJvci4KCgpjYXNlIDI6IAoKVHdvIGdlbXMgdXNlIHNhbWUgdG9wLWxl dmVsIG1vZHVsZSBuYW1lLCBzbyB3ZSBjYW4ndCB1c2UgdGhlbSB0b2dldGhlcgoKIyMgVGhlIFJl YXNvbiBvZiBUaGUgUHJvYmxlbQoKVGhlIHJlYXNvbiBpcyB3ZSBsZXQgbW9kdWxlIGF1dGhvciB0 byBkZWNpc2lvbiB3aGljaCBtb2R1bGUgdXNlciBjYW4gdXNlLiAoJ3JlcXVpcmUnIGlzIGJhc2lj YWxseSBldmFsdWF0aW9uLCBoaWdobHkgZGVwZW5kZW50IG9uIHRoZSBtb2R1bGUgYXV0aG9yJ3Mg ZGVzaWduKQoKQnV0IHdlIHNob3VsZCBsZXQgdXNlcnMgY29udHJvbCB3aGljaCBuYW1lcyB0byB1 c2UgYW5kIGF2YWlsYWJsZSBpbiBjb250ZXh0LiBBcyBtYW55IG90aGVyIHBvcHVsYXIgbGFuZ3Vh Z2VzIGRvc2UoUnVzdCwgUHl0aG9uLi4pCgpJIHRoaW5rIHRoZSBzb2x1dGlvbiBpcyBiYXNpY2Fs bHkgdGhlIHNhbWUgcGhpbG9zb3BoeSBjb21wYXJlcyB0byByZWZpbmVtZW50IGZlYXR1cmUuCgoK IyMgVGhlIERlc2lnbgoKSSBwcm9wb3NlIGFuIGltcHJvdmVkIG5hbWVzcGFjZSB0byBSdWJ5LCB0 byBzb2x2ZSB0aGUgcHJvYmxlbXMgYW5kIHN0aWxsIGNvbXBhdGlibGUgd2l0aCB0aGUgY3VycmVu dCBSdWJ5IG1vZHVsZSBzeXN0ZW0uCgpgYGAgcnVieQpjbGFzcyBGb28KZW5kCgojIGludHJvZHVj ZSBLZXJuZWwjbmFtZXNwYWNlCm5hbWVzcGFjZSA6SGVsbG8gZG8KICAjIGF2b2lkaW5nIG5hbWVz cGFjZSBjaGFvcwogICMgRm9vIC0+IE5hbWVFcnJvciwgY2FuJ3QgYWNjZXNzIFRPUExFVkVMX0JJ TkRJTkcgZGlyZWN0bHkKICAKICAjIEtlcm5lbCNpbXBvcnQgbWV0aG9kLCBpbnRyb2R1Y2UgRm9v IG5hbWUgZnJvbSBUT1BMRVZFTF9CSU5ESU5HCiAgaW1wb3J0IDpGb28KCiAgIyBpbiBhIG5hbWVz cGFjZSB1c2VyIGNhbiBvbmx5IGFjY2VzcyBpbXBvcnRlZCBuYW1lCiAgRm9vCgogICMgaW1wb3J0 IGNvbnN0YW50IHRvIGFub3RoZXIgYWxpYXMgbmFtZQogICMgY2FuIGF2b2lkIHdyaXRpbmcgbmVz dGVkIG1vZHVsZS9jbGFzcyBuYW1lcwogIGltcG9ydCA6IkE6OkI6OkM6OkQiLCBhczogOkUKCiAg IyByZXF1aXJlIHRoZW4gaW1wb3J0LCBmb3IgY29udmVuaWVudCAKICBpbXBvcnQgOiJBOjpCOjpD OjpEIiwgYXM6IDpFLCBmcm9tOiAnc29tZV9yYl9maWxlJwoKICAjIGltcG9ydCBzYW1lIG5hbWUg ZnJvbSB0d28gZ2VtcwogIGltcG9ydCA6IkZvbyIsIGFzOiA6Rm9vX0EsIGZyb206ICdmb29fYScK ICBpbXBvcnQgOiJGb28iLCBhczogOkZvb19CLCBmcm9tOiAnZm9vX2InCgogICMgaW1wb3J0IG5h bWVzIGluIGJhdGNoCiAgaW1wb3J0ICVpeyJBOjpCOjpDOjpEIiwgIkFub3RoZXJDbGFzcyJ9LCBm cm9tOiAnc29tZV9yYl9maWxlJwoKICAjIGltcG9ydCBhbmQgYWxpYXMgaW4gYmF0Y2gKICBpbXBv cnQgezoiQTo6Qjo6Qzo6RCIgPT4gOkUsIDpGb28gPT4gRm9vMn0sIGZyb206ICdzb21lX3JiX2Zp bGUnCgogIGNsYXNzIEJhcgogICAgZGVmIHh4eAogICAgICAjIGNhbiBhY2Nlc3MgYWxsIG5hbWVz IGluIG5hbWVzcGFjZSBzY29wZQogICAgICBbRm9vLCBGb29fQSwgRm9vX0JdCiAgICBlbmQKICBl bmQKZW5kCgpIZWxsby5jbGFzcyAjICAtPiBtb2R1bGUuIG5hbWVzcGFjZSBpcyBqdXN0IGEgbW9k dWxlCkhlbGxvOjpCYXIgIyBzbyB3ZSBkbyBub3QgYnJva2VuIGN1cnJlbnQgcnVieSBtb2R1bGUg ZGVzaWduCgojIG5hbWVzcGFjZSBzeXN0ZW0gaXMgaW50ZW50IHRvIGxldCB1c2VyIHRvIGNvbnRy b2wgbmFtZXMgaW4gY29udGV4dAojIFNvIHVzZXIgY2FuIGNob29zZSB1c2UgdGhlIG9sZCByZXF1 aXJlIHdheQoKcmVxdWlyZSAnaGVsbG8nCgpIZWxsbzo6QmFyCgoKIyBPciB1c2VyIGNhbiB1c2Ug bmFtZXNwYWNlIHN5c3RlbSBhcyB3ZSBkbyBpbiBoZWxsby5yYgoKbmFtZXNwYWNlIDpFeGFtcGxl IGRvCiAgaW1wb3J0IDoiSGVsbG86OkJhciIsIGFzOiA6QmFyCiAgQmFyICMgb2sKICBGb28gIyBu YW1lIGVycm9yLCBjYXVzZSB3ZSBkbyBub3QgaW1wb3J0IEZvbyBpbiA6RXhhbXBsZSBuYW1lc3Bh Y2UKZW5kCgpGb28gIyBvaywgY2F1c2UgRm9vIGlzIGxvYWRlZCBpbiBUT1BMRVZFTF9CSU5ESU5H CgojIGRlZmluZSBuZXN0ZWQgbmFtZXNwYWNlCgojIG1vcmUgY2xlYXIgc3ludGF4IHRoYW4g4oCc bW9kdWxlIEV4YW1wbGU6Ok5lc3RlZEV4YW1wbGXigJ0KbmFtZXNwYWNlIDpOZXN0ZWRFeGFtcGxl LCB1bmRlcjogRXhhbXBsZSBkbwplbmQKCm5hbWVzcGFjZSA6RXhhbXBsZTIgZG8KICBuYW1lc3Bh Y2UgOk5lc3RlZEV4YW1wbGUgZG8KICBlbmQKZW5kCgpgYGAKClByb3M6CgoqIENvbXBsZXRlbHkg Y29tcGF0aWJsZSB3aXRoIHRoZSBjdXJyZW50IG1vZHVsZSBzeXN0ZW0sIGEgZ2VtIHVzZXIgY2Fu IGNvbXBsZXRlbHkgaWdub3JlIHdoZXRoZXIgYSBnZW0gaXMgd3JpdGUgaW4gTmFtZXNwYWNlIG9y IG5vdC4KKiBVc2VyIGNhbiBjb21wbGV0ZWx5IGNvbnRyb2wgd2hpY2ggbmFtZXMgaW4gY3VycmVu dCBjb250ZXh0L3Njb3BlLgoqIE1heSBzb2x2ZSB0aGUgdG9wIG1vZHVsZSBuYW1lIGNvbmZsaWN0 IGlzc3VlKGRlcGVuZHMgb24gVk0gaW1wbGVtZW50YXRpb24pLgoqIEF2b2lkIGludHJvZHVjaW5n IG5ldyBrZXl3b3JkIGFuZCBzeW50YXguCiogVHlwZSBoaW50IG9yIG5hbWUgaGludCBjYW4gYmUg bW9yZSBhY2N1cmFjeSB1bmRlciBuYW1lc3BhY2Uobm90IHN1cmUpLgoKQ29uczoKCiogTmVlZCB0 byBtb2RpZnkgUnVieSBWTSB0byBzdXBwb3J0IHRoZSBmZWF0dXJlLgoKCgoKLS0gCmh0dHBzOi8v YnVncy5ydWJ5LWxhbmcub3JnLwo=