From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: AS4713 221.184.0.0/13 X-Spam-Status: No, score=-2.8 required=3.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, FORGED_GMAIL_RCVD,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED, SPF_PASS shortcircuit=no autolearn=no autolearn_force=no version=3.4.2 Received: from neon.ruby-lang.org (neon.ruby-lang.org [221.186.184.75]) by dcvr.yhbt.net (Postfix) with ESMTP id 699021F87F for ; Thu, 22 Nov 2018 15:04:58 +0000 (UTC) Received: from neon.ruby-lang.org (localhost [IPv6:::1]) by neon.ruby-lang.org (Postfix) with ESMTP id C9AC4121926; Fri, 23 Nov 2018 00:04:56 +0900 (JST) Received: from o1678948x4.outbound-mail.sendgrid.net (o1678948x4.outbound-mail.sendgrid.net [167.89.48.4]) by neon.ruby-lang.org (Postfix) with ESMTPS id 9EF3E121924 for ; Fri, 23 Nov 2018 00:04:53 +0900 (JST) Received: by filter0169p3mdw1.sendgrid.net with SMTP id filter0169p3mdw1-32498-5BF6C586-A 2018-11-22 15:04:38.085769985 +0000 UTC m=+586888.915300834 Received: from herokuapp.com (ec2-54-167-181-83.compute-1.amazonaws.com [54.167.181.83]) by ismtpd0017p1iad2.sendgrid.net (SG) with ESMTP id q6qYhY0fR9CoTKo2I8PAvQ Thu, 22 Nov 2018 15:04:37.943 +0000 (UTC) Date: Thu, 22 Nov 2018 15:04:38 +0000 (UTC) From: ciconia@gmail.com To: ruby-core@ruby-lang.org Message-ID: References: Mime-Version: 1.0 X-Redmine-MailingListIntegration-Message-Ids: 65373 X-Redmine-Project: ruby-trunk X-Redmine-Issue-Id: 14982 X-Redmine-Issue-Author: jjyr X-Redmine-Issue-Assignee: matz X-Redmine-Sender: ciconia 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/Ymy4QrNMhiuLXJG8OTL2vJD1yS4sVdZts5UPY7DB82QPNxnKHUsbgxtpvAKU9x GFLGRF5xAW/Ag/GB7ctt0A2lMEaCGQ51IPZ92Y9ytrWE5ilfAodGOsfKNbyZOHIqHPyfRuMTjmWetT EZ2QVO9+WJmDQ8QS+FEzro48iNuYgkd5O+zUWsRGbSuCJth5v3Zva186Rw== X-ML-Name: ruby-core X-Mail-Count: 89974 Subject: [ruby-core:89974] [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" SXNzdWUgIzE0OTgyIGhhcyBiZWVuIHVwZGF0ZWQgYnkgY2ljb25pYSAoU2hhcm9uIFJvc25lciku CgoKSSdkIGxpa2UgdG8gc2hvdyBzb21ldGhpbmcgSSd2ZSBiZWVuIHdvcmtpbmcgb24gZm9yIHRo ZSBsYXN0IGZldyBtb250aHMuIEl0J3MgY2FsbGVkIE1vZHVsYXRpb24sIGEgc21hbGwgKGxlc3Mg dGhhbiAzMDAgTE9DKSBnZW0gcHJvdmlkaW5nIGFuIGFsdGVybmF0aXZlIHdheSB0byBtYW5hZ2Ug ZGVwZW5kZW5jaWVzIGluIFJ1YnkgYXBwbGljYXRpb25zLiBNb2R1bGF0aW9uIHByb3ZpZGVzIGNv bXBsZXRlIGlzb2xhdGlvbiBvZiBlYWNoIG1vZHVsZSAoaS5lLiBzb3VyY2UgZmlsZSksIGFuZCBl bmZvcmNlcyAqZXhwbGljaXQqIGV4cG9ydGluZyBhbmQgaW1wb3J0aW5nIG9mIGNvbnN0YW50cyBh bmQgbWV0aG9kcy4gQW55IGltcGxlbWVudGF0aW9uIGRldGFpbHMgbWF5IGJlIGNvbXBsZXRlbHkg aGlkZGVuIGJ5IGVhY2ggbW9kdWxlLgoKSGVyZSdzIGEgc2ltcGxlIGV4YW1wbGU6CgoqZ3JlZXRl ci5yYio6Cn5+fiBydWJ5CmV4cG9ydCA6Z3JlZXQKCkdSRUVUSU5HID0gJ0hlbGxvJwoKZGVmIGdy ZWV0KG5hbWUpCiAgcHV0cyAiI3tHUkVFVElOR30sICN7bmFtZX0hIgplbmQKfn5+CgoqYXBwLnJi KjoKfn5+IHJ1YnkKcmVxdWlyZSAnbW9kdWxhdGlvbicKR3JlZXRlciA9IGltcG9ydCgnLi9ncmVl dGVyJykKCkdyZWV0ZXIuZ3JlZXQoJ3dvcmxkJykKCnB1dHMgR3JlZXRlcjo6R1JFRVRJTkcgIz0+ IHdpbGwgcmFpc2UgTmFtZUVycm9yLCBzaW5jZSBHUkVFVElORyB3YXMgbm90IGV4cG9ydGVkCnB1 dHMgR1JFRVRJTkcgIz0+IHdpbGwgcmFpc2UgTmFtZUVycm9yLCBzaW5jZSBHUkVFVElORyB3YXMg ZGVmaW5lZCBpbnNpZGUgdGhlIEdyZWV0ZXIgbW9kdWxlCn5+fgoKKFllcywgdGhpcyBpcyBhIHZl cnkgYmFzaWMgZXhhbXBsZSwgdGhlcmUgYXJlIG1vcmUgZXhhbXBsZXMgaGVyZTogW2h0dHBzOi8v Z2l0aHViLmNvbS9jaWNvbmlhL21vZHVsYXRpb24vdHJlZS9tYXN0ZXIvZXhhbXBsZXNdKGh0dHBz Oi8vZ2l0aHViLmNvbS9jaWNvbmlhL21vZHVsYXRpb24vdHJlZS9tYXN0ZXIvZXhhbXBsZXMpKQoK VGhlIGlkZWEgaXMgdG8gbG9hZCBlYWNoIGZpbGUgaW4gdGhlIGNvbnRleHQgb2YgYSBuZXcgYE1v ZHVsZWAgaW5zdGFuY2UsIGFuZCBleHBvc2Ugb25seSB0aGUgZGVmaW5pdGlvbnMgdGhhdCB3ZXJl IGV4cGxpY2l0bHkgZXhwb3J0ZWQuIEluIGFkZGl0aW9uLCB0aGVyZSdzIHN1cHBvcnQgZm9yIGRl ZmF1bHQgZXhwb3J0cywgcmVsb2FkaW5nIG9mIG1vZHVsZXMgYXQgcnVuLXRpbWUsIGFuZCBtb2Nr aW5nIG9mIGRlcGVuZGVuY2llcyBmb3IgdGVzdGluZyBwdXJwb3Nlcy4KClRoZXJlJ3MgYSBidW5j aCBvZiBwYXR0ZXJucyBhbmQgdGVjaG5pcXVlcyB0aGF0IE1vZHVsYXRpb24gbWFrZXMgbXVjaCBl YXNpZXIgdG8gaW1wbGVtZW50OiBzaW5nbGV0b25zLCBmdW5jdGlvbmFsIGNvZGUsIGludmVyc2lv biBvZiBjb250cm9sLiBIb3BlZnVsbHkgdGhpcyBjb250cmlidXRlcyB0byB0aGUgcHJlc2VudCBk aXNjdXNzaW9uIGFuZCBtYXliZSBvdGhlcnMgd291bGQgZmluZCBpdCB1c2VmdWwuCgpTb3VyY2Ug Y29kZSBoZXJlOiBbaHR0cHM6Ly9naXRodWIuY29tL2NpY29uaWEvbW9kdWxhdGlvbl0oaHR0cHM6 Ly9naXRodWIuY29tL2NpY29uaWEvbW9kdWxhdGlvbikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tCkZlYXR1cmUgIzE0OTgyOiBJbXByb3ZlIG5hbWVzcGFjZSBzeXN0 ZW0gaW4gcnVieSB0byBhdm9pZGluZyB0b3AtbGV2ZWwgIG5hbWVzIGNoYW9zCmh0dHBzOi8vYnVn cy5ydWJ5LWxhbmcub3JnL2lzc3Vlcy8xNDk4MiNjaGFuZ2UtNzUwODAKCiogQXV0aG9yOiBqanly IChKaW55YW5nIEppYW5nKQoqIFN0YXR1czogT3BlbgoqIFByaW9yaXR5OiBOb3JtYWwKKiBBc3Np Z25lZTogbWF0eiAoWXVraWhpcm8gTWF0c3Vtb3RvKQoqIFRhcmdldCB2ZXJzaW9uOiBOZXh0IE1h am9yCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KVXBkYXRlZDogaHR0 cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcvaXNzdWVzLzE0OTgyI25vdGUtNQoKCgojIyBXaHkKClJ1 YnkgaGFzIGV2YWx1YXRpb24gYWxsIGNsYXNzL21vZHVsZSBuYW1lcyBpbiB0b3AtbGV2ZWwgY29u dGV4dChha2EgVE9QTEVWRUxfQklORElORykuIApBcyBhIHVzZXIgd2UgYmFzaWNhbGx5IGhhcmQg dG8ga25vdyBob3cgbWFueSBuYW1lcyBpbiB0aGUgY3VycmVudCBjb250ZXh0LCBpcyBjYXVzaW5n IGNoYW9zIGluIHNvbWUgY2FzZXMuIEZvciBleGFtcGxlOgoKY2FzZSAxOiAKClB1dCBjb21tb24g dXNlZCBlcnJvcnMgY2xhc3MgaW4gYSBzaW5nbGUgZmlsZSwgbGlrZSBiZWxvdwoKYGBgIHJ1YnkK IyB1dGlscy9lcnJvcnMucmIKCmNsYXNzIEZvb0Vycm9yCmVuZAoKY2xhc3MgQmFyRXJyb3IKZW5k CmBgYAoKSW4gb3RoZXIgZmlsZXMgdW5kZXIgJ3V0aWxzJyB3ZSB3YW50IHRvIHVzZSB0aG9zZSBl cnJvcnMsIHNvIHRoZSBiZXN0IHByYWN0aWNlIGlzIHRvIHVzZSBgcmVxdWlyZV9yZWxhdGl2ZSAn ZXJyb3JzJ2AgaW4gZWFjaCBmaWxlIHdlIG5lZWQuCgpgYGAgcnVieQojIHV0aWxzL2JpbmFyeV9o ZWxwZXIucmIKCiMgd2UgZm9yZ2V0IHJlcXVpcmUgZXJyb3JzCgptb2R1bGUgQmluYXJ5SGVscGVy CiMgLi4uCiAgcmFpc2UgQmFyRXJyb3IKIyAuLi4KZW5kCgpgYGAKCkJ1dCBzb21ldGltZSB3ZSBt YXkgZm9yZ2V0IHRvIHJlcXVpcmUgZGVwZW5kZW5jaWVzIGluIGEgZmlsZSwgaXQncyBoYXJkIHRv IG5vdGljZSBiZWNhdXNlCiBpZiBSdWJ5Vk0gYWxyZWFkeSBleGVjdXRlIHRoZSByZXF1aXJlcyB3 ZSBzdGlsbCBjYW4gYWNjZXNzIHRoZSBuYW1lIEJhckVycm9yLAoKYnV0IGlmIHVzZXIgZGlyZWN0 bHkgdG8gcmVxdWlyZSAndXRpbHMvYmluYXJ5X2hlbHBlcicsIGhlL3NoZSB3aWxsIGdvdCBhbiBO YW1lRXJyb3IuCgoKY2FzZSAyOiAKClR3byBnZW1zIHVzZSBzYW1lIHRvcC1sZXZlbCBtb2R1bGUg bmFtZSwgc28gd2UgY2FuJ3QgdXNlIHRoZW0gdG9nZXRoZXIKCiMjIFRoZSBSZWFzb24gb2YgVGhl IFByb2JsZW0KClRoZSByZWFzb24gaXMgd2UgbGV0IG1vZHVsZSBhdXRob3IgdG8gZGVjaXNpb24g d2hpY2ggbW9kdWxlIHVzZXIgY2FuIHVzZS4gKCdyZXF1aXJlJyBpcyBiYXNpY2FsbHkgZXZhbHVh dGlvbiwgaGlnaGx5IGRlcGVuZGVudCBvbiB0aGUgbW9kdWxlIGF1dGhvcidzIGRlc2lnbikKCkJ1 dCB3ZSBzaG91bGQgbGV0IHVzZXJzIGNvbnRyb2wgd2hpY2ggbmFtZXMgdG8gdXNlIGFuZCBhdmFp bGFibGUgaW4gY29udGV4dC4gQXMgbWFueSBvdGhlciBwb3B1bGFyIGxhbmd1YWdlcyBkb3NlKFJ1 c3QsIFB5dGhvbi4uKQoKSSB0aGluayB0aGUgc29sdXRpb24gaXMgYmFzaWNhbGx5IHRoZSBzYW1l IHBoaWxvc29waHkgY29tcGFyZXMgdG8gcmVmaW5lbWVudCBmZWF0dXJlLgoKCiMjIFRoZSBEZXNp Z24KCkkgcHJvcG9zZSBhbiBpbXByb3ZlZCBuYW1lc3BhY2UgdG8gUnVieSwgdG8gc29sdmUgdGhl IHByb2JsZW1zIGFuZCBzdGlsbCBjb21wYXRpYmxlIHdpdGggdGhlIGN1cnJlbnQgUnVieSBtb2R1 bGUgc3lzdGVtLgoKYGBgIHJ1YnkKY2xhc3MgRm9vCmVuZAoKIyBpbnRyb2R1Y2UgS2VybmVsI25h bWVzcGFjZQpuYW1lc3BhY2UgOkhlbGxvIGRvCiAgIyBhdm9pZGluZyBuYW1lc3BhY2UgY2hhb3MK ICAjIEZvbyAtPiBOYW1lRXJyb3IsIGNhbid0IGFjY2VzcyBUT1BMRVZFTF9CSU5ESU5HIGRpcmVj dGx5CiAgCiAgIyBLZXJuZWwjaW1wb3J0IG1ldGhvZCwgaW50cm9kdWNlIEZvbyBuYW1lIGZyb20g VE9QTEVWRUxfQklORElORwogIGltcG9ydCA6Rm9vCgogICMgaW4gYSBuYW1lc3BhY2UgdXNlciBj YW4gb25seSBhY2Nlc3MgaW1wb3J0ZWQgbmFtZQogIEZvbwoKICAjIGltcG9ydCBjb25zdGFudCB0 byBhbm90aGVyIGFsaWFzIG5hbWUKICAjIGNhbiBhdm9pZCB3cml0aW5nIG5lc3RlZCBtb2R1bGUv Y2xhc3MgbmFtZXMKICBpbXBvcnQgOiJBOjpCOjpDOjpEIiwgYXM6IDpFCgogICMgcmVxdWlyZSB0 aGVuIGltcG9ydCwgZm9yIGNvbnZlbmllbnQgCiAgaW1wb3J0IDoiQTo6Qjo6Qzo6RCIsIGFzOiA6 RSwgZnJvbTogJ3NvbWVfcmJfZmlsZScKCiAgIyBpbXBvcnQgc2FtZSBuYW1lIGZyb20gdHdvIGdl bXMKICBpbXBvcnQgOiJGb28iLCBhczogOkZvb19BLCBmcm9tOiAnZm9vX2EnCiAgaW1wb3J0IDoi Rm9vIiwgYXM6IDpGb29fQiwgZnJvbTogJ2Zvb19iJwoKICAjIGltcG9ydCBuYW1lcyBpbiBiYXRj aAogIGltcG9ydCAlaXsiQTo6Qjo6Qzo6RCIsICJBbm90aGVyQ2xhc3MifSwgZnJvbTogJ3NvbWVf cmJfZmlsZScKCiAgIyBpbXBvcnQgYW5kIGFsaWFzIGluIGJhdGNoCiAgaW1wb3J0IHs6IkE6OkI6 OkM6OkQiID0+IDpFLCA6Rm9vID0+IEZvbzJ9LCBmcm9tOiAnc29tZV9yYl9maWxlJwoKICBjbGFz cyBCYXIKICAgIGRlZiB4eHgKICAgICAgIyBjYW4gYWNjZXNzIGFsbCBuYW1lcyBpbiBuYW1lc3Bh Y2Ugc2NvcGUKICAgICAgW0ZvbywgRm9vX0EsIEZvb19CXQogICAgZW5kCiAgZW5kCmVuZAoKSGVs bG8uY2xhc3MgIyAgLT4gbW9kdWxlLiBuYW1lc3BhY2UgaXMganVzdCBhIG1vZHVsZQpIZWxsbzo6 QmFyICMgc28gd2UgZG8gbm90IGJyb2tlbiBjdXJyZW50IHJ1YnkgbW9kdWxlIGRlc2lnbgoKIyBu YW1lc3BhY2Ugc3lzdGVtIGlzIGludGVudCB0byBsZXQgdXNlciB0byBjb250cm9sIG5hbWVzIGlu IGNvbnRleHQKIyBTbyB1c2VyIGNhbiBjaG9vc2UgdXNlIHRoZSBvbGQgcmVxdWlyZSB3YXkKCnJl cXVpcmUgJ2hlbGxvJwoKSGVsbG86OkJhcgoKCiMgT3IgdXNlciBjYW4gdXNlIG5hbWVzcGFjZSBz eXN0ZW0gYXMgd2UgZG8gaW4gaGVsbG8ucmIKCm5hbWVzcGFjZSA6RXhhbXBsZSBkbwogIGltcG9y dCA6IkhlbGxvOjpCYXIiLCBhczogOkJhcgogIEJhciAjIG9rCiAgRm9vICMgbmFtZSBlcnJvciwg Y2F1c2Ugd2UgZG8gbm90IGltcG9ydCBGb28gaW4gOkV4YW1wbGUgbmFtZXNwYWNlCmVuZAoKRm9v ICMgb2ssIGNhdXNlIEZvbyBpcyBsb2FkZWQgaW4gVE9QTEVWRUxfQklORElORwoKIyBkZWZpbmUg bmVzdGVkIG5hbWVzcGFjZQoKIyBtb3JlIGNsZWFyIHN5bnRheCB0aGFuIOKAnG1vZHVsZSBFeGFt cGxlOjpOZXN0ZWRFeGFtcGxl4oCdCm5hbWVzcGFjZSA6TmVzdGVkRXhhbXBsZSwgdW5kZXI6IEV4 YW1wbGUgZG8KZW5kCgpuYW1lc3BhY2UgOkV4YW1wbGUyIGRvCiAgbmFtZXNwYWNlIDpOZXN0ZWRF eGFtcGxlIGRvCiAgZW5kCmVuZAoKYGBgCgpQcm9zOgoKKiBDb21wbGV0ZWx5IGNvbXBhdGlibGUg d2l0aCB0aGUgY3VycmVudCBtb2R1bGUgc3lzdGVtLCBhIGdlbSB1c2VyIGNhbiBjb21wbGV0ZWx5 IGlnbm9yZSB3aGV0aGVyIGEgZ2VtIGlzIHdyaXRlIGluIE5hbWVzcGFjZSBvciBub3QuCiogVXNl ciBjYW4gY29tcGxldGVseSBjb250cm9sIHdoaWNoIG5hbWVzIGluIGN1cnJlbnQgY29udGV4dC9z Y29wZS4KKiBNYXkgc29sdmUgdGhlIHRvcCBtb2R1bGUgbmFtZSBjb25mbGljdCBpc3N1ZShkZXBl bmRzIG9uIFZNIGltcGxlbWVudGF0aW9uKS4KKiBBdm9pZCBpbnRyb2R1Y2luZyBuZXcga2V5d29y ZCBhbmQgc3ludGF4LgoqIFR5cGUgaGludCBvciBuYW1lIGhpbnQgY2FuIGJlIG1vcmUgYWNjdXJh Y3kgdW5kZXIgbmFtZXNwYWNlKG5vdCBzdXJlKS4KCkNvbnM6CgoqIE5lZWQgdG8gbW9kaWZ5IFJ1 YnkgVk0gdG8gc3VwcG9ydCB0aGUgZmVhdHVyZS4KCgoKCi0tIApodHRwczovL2J1Z3MucnVieS1s YW5nLm9yZy8K