Re: Documentation for ${^GLOBAL_PHASE}
[email protected] ("Chas. Owens") Tue, 2 Nov 2010 10:36:25 -0400
| Newsgroups | perl.perl5.porters,perl.documentation |
|---|---|
| Message-ID | <[email protected]> |
--0016364d206b786bc0049412dba0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On Mon, Nov 1, 2010 at 10:55, Chas. Owens <[email protected]> wrote: > On Mon, Nov 1, 2010 at 02:14, Florian Ragwitz <[email protected]> wrote: > snip >> Obviously it needs an entry in perlvar, but I don't think explaining >> all the details of it there is appropriate. "BEGIN, UNITCHECK, CHECK, >> INIT and END" in perlmod explains many things related to >> ${^GLOBAL_PHASE}, but it does so from the perspective of a single >> module, i.e. one compilation unit, for which most of the behaviour of >> the new variable is irrelevant, as that's only concert with global >> phases. Also it'd seem somewhat unlikely that anyone would look up >> "perlmod - Perl modules (packages and symbol tables)" to read about the >> phases of the interpreter. > snip > > My gut reaction is that the values need to be documented in perlvar in > a similar way to how you have listed them here and a mention of it > should be in each paragraph of perlmod that deals with BEGIN, INIT, > etc. =C2=A0I will throw something together tonight. snip I have attached my first draft of the documentation (they include brian d foy's changes from last night). Also attached is a patch that adds a mention of the fact that string do and require behave the same way as string eval with respect to UNIT and INIT blocks. --=20 Chas. Owens wonkden.net The most important skill a programmer can have is the ability to read. --0016364d206b786bc0049412dba0 Content-Type: application/octet-stream; name="0002-add-example-for-GLOBAL_PHASE-and-description-to-perl.patch" Content-Disposition: attachment; filename="0002-add-example-for-GLOBAL_PHASE-and-description-to-perl.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_gg0vpluh0 RnJvbSBjMjc5NDBjM2JkN2MzMmYzN2JlNzQyMjI3YjNiOGFhMzIwODVjOWE3IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBDaGFzLiBKLiBPd2VucyBJViA8Y2hhcy5vd2Vuc0BnbWFpbC5j b20+CkRhdGU6IFR1ZSwgMiBOb3YgMjAxMCAxMDoyODo1NCAtMDQwMApTdWJqZWN0OiBbUEFUQ0gg Mi8yXSBhZGQgZXhhbXBsZSBmb3IgJHteR0xPQkFMX1BIQVNFfSBhbmQgZGVzY3JpcHRpb24gdG8g cGVybG1vZAoKLS0tCiBwb2QvcGVybG1vZC5wb2QgfCAgIDI2ICsrKysrKysrKysrKysrKysrKysr KysrKystCiBwb2QvcGVybHZhci5wb2QgfCAgIDQ1ICsrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKystLQogMiBmaWxlcyBjaGFuZ2VkLCA2OCBpbnNlcnRpb25zKCspLCAz IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3BvZC9wZXJsbW9kLnBvZCBiL3BvZC9wZXJsbW9k LnBvZAppbmRleCBkNmRkZDgzLi40NGQ1OTI0IDEwMDY0NAotLS0gYS9wb2QvcGVybG1vZC5wb2QK KysrIGIvcG9kL3Blcmxtb2QucG9kCkBAIC0yNzMsNiArMjczLDExIEBAIGFuZCBzdWNoIGZyb20g b3RoZXIgZmlsZXMgaW4gdGltZSB0byBiZSB2aXNpYmxlIHRvIHRoZSByZXN0IG9mIHRoZSBjb21w aWxlCiBhbmQgcnVuIHRpbWUuICBPbmNlIGEgQzxCRUdJTj4gaGFzIHJ1biwgaXQgaXMgaW1tZWRp YXRlbHkgdW5kZWZpbmVkIGFuZCBhbnkKIGNvZGUgaXQgdXNlZCBpcyByZXR1cm5lZCB0byBQZXJs J3MgbWVtb3J5IHBvb2wuCiAKK0luc2lkZSBvZiBhIEM8QkVHSU4+IGJsb2NrLCB0aGUgQzwke15H TE9CQUxfUEhBU0V9PiB2YXJpYWJsZSB3aWxsIGJlIHNldCB0bworQzwiU1RBUlQiPiwgdW5sZXNz IHRoZSBDPEJFR0lOPiBibG9jayB3YXMgZXhlY3V0ZWQgYnkgQzxyZXF1aXJlPiwgc3RyaW5nCitD PGRvPiwgb3Igc3RyaW5nIEM8ZXZhbD4uICBJbiB0aG9zZSBjYXNlcyB0aGUgQzwke15HTE9CQUxf UEhBU0V9PiB3aWxsIGJlCitzZXQgdG8gdGhlIHBoYXNlIHRoZSBDPHJlcXVpcmU+LCBDPGRvPiwg b3Igc3RyaW5nIEM8ZXZhbD4gd2FzIGV4ZWN1dGVkIGluLgorCiBBbiBDPEVORD4gY29kZSBibG9j ayBpcyBleGVjdXRlZCBhcyBsYXRlIGFzIHBvc3NpYmxlLCB0aGF0IGlzLCBhZnRlcgogcGVybCBo YXMgZmluaXNoZWQgcnVubmluZyB0aGUgcHJvZ3JhbSBhbmQganVzdCBiZWZvcmUgdGhlIGludGVy cHJldGVyCiBpcyBiZWluZyBleGl0ZWQsIGV2ZW4gaWYgaXQgaXMgZXhpdGluZyBhcyBhIHJlc3Vs dCBvZiBhIGRpZSgpIGZ1bmN0aW9uLgpAQCAtMjk0LDYgKzI5OSw5IEBAIHZhbHVlIG9mIHRoZSBw cm9ncmFtLiAgQmV3YXJlIG9mIGNoYW5naW5nIEM8JD8+IGJ5IGFjY2lkZW50IChlLmcuIGJ5CiBy dW5uaW5nIHNvbWV0aGluZyB2aWEgQzxzeXN0ZW0+KS4KIFg8JD8+CiAKK0luc2lkZSBvZiBhIEM8 RU5EPiBibG9jaywgdGhlIEM8JHteR0xPQkFMX1BIQVNFfT4gdmFyaWFibGUgd2lsbCBiZSBzZXQg dG8KK0M8IkVORCI+LgorCiBDPFVOSVRDSEVDSz4sIEM8Q0hFQ0s+IGFuZCBDPElOSVQ+IGNvZGUg YmxvY2tzIGFyZSB1c2VmdWwgdG8gY2F0Y2ggdGhlCiB0cmFuc2l0aW9uIGJldHdlZW4gdGhlIGNv bXBpbGF0aW9uIHBoYXNlIGFuZCB0aGUgZXhlY3V0aW9uIHBoYXNlIG9mCiB0aGUgbWFpbiBwcm9n cmFtLgpAQCAtMzAyLDE1ICszMTAsMzEgQEAgQzxVTklUQ0hFQ0s+IGJsb2NrcyBhcmUgcnVuIGp1 c3QgYWZ0ZXIgdGhlIHVuaXQgd2hpY2ggZGVmaW5lZCB0aGVtIGhhcwogYmVlbiBjb21waWxlZC4g IFRoZSBtYWluIHByb2dyYW0gZmlsZSBhbmQgZWFjaCBtb2R1bGUgaXQgbG9hZHMgYXJlCiBjb21w aWxhdGlvbiB1bml0cywgYXMgYXJlIHN0cmluZyBDPGV2YWw+cywgY29kZSBjb21waWxlZCB1c2lu ZyB0aGUKIEM8KD97IH0pPiBjb25zdHJ1Y3QgaW4gYSByZWdleCwgY2FsbHMgdG8gQzxkbyBGSUxF PiwgQzxyZXF1aXJlIEZJTEU+LAotYW5kIGNvZGUgYWZ0ZXIgdGhlIEM8LWU+IHN3aXRjaCBvbiB0 aGUgY29tbWFuZCBsaW5lLgorYW5kIGNvZGUgYWZ0ZXIgdGhlIEM8LWU+IHN3aXRjaCBvbiB0aGUg Y29tbWFuZCBsaW5lLiBTbyBsb25nIGFzIHRoZQorQzxVTklUQ0hFQ0s+IGlzIG5vdCBleGVjdXRl ZCBieSBhIEM8cmVxdWlyZT4sIEM8ZG8+LCBvciBzdHJpbmcgQzxldmFsPiwKK3RoZSB2YWx1ZSBv ZiB0aGUgQzwke15HTE9CQUxfUEhBU0V9PiB2YXJpYWJsZSB3aWxsIGJlIHNldCB0byBDPCJTVEFS VCI+LAorb3RoZXJ3aXNlIGl0IHdpbGwgYmUgc2V0IHRvIHRoZSBwaGFzZSB0aGUgQzxyZXF1aXJl PiwgQzxkbz4sIG9yCitzdHJpbmcgQzxldmFsPiByYW4gaW4uCisKK0luc2lkZSBvZiBhIEM8VU5J VENIRUNLPiBibG9jaywgdGhlIEM8JHteR0xPQkFMX1BIQVNFfT4gdmFyaWFibGUgd2lsbCBiZQor c2V0IHRvIEM8IlNUQVJUIj4sIHVubGVzcyB0aGUgQzxVTklUQ0hFQ0s+IGJsb2NrIHdhcyBleGVj dXRlZCBieSBDPHJlcXVpcmU+LAorc3RyaW5nIEM8ZG8+LCBvciBzdHJpbmcgQzxldmFsPi4gIElu IHRob3NlIGNhc2VzIHRoZSBDPCR7XkdMT0JBTF9QSEFTRX0+Cit3aWxsIGJlIHNldCB0byB0aGUg cGhhc2UgdGhlIEM8cmVxdWlyZT4sIEM8ZG8+LCBvciBzdHJpbmcgQzxldmFsPiB3YXMKK2V4ZWN1 dGVkIGluLgogCiBDPENIRUNLPiBjb2RlIGJsb2NrcyBhcmUgcnVuIGp1c3QgYWZ0ZXIgdGhlIEI8 aW5pdGlhbD4gUGVybCBjb21waWxlIHBoYXNlIGVuZHMKIGFuZCBiZWZvcmUgdGhlIHJ1biB0aW1l IGJlZ2lucywgaW4gTElGTyBvcmRlci4gIEM8Q0hFQ0s+IGNvZGUgYmxvY2tzIGFyZSB1c2VkCiBp biB0aGUgUGVybCBjb21waWxlciBzdWl0ZSB0byBzYXZlIHRoZSBjb21waWxlZCBzdGF0ZSBvZiB0 aGUgcHJvZ3JhbS4KIAorSW5zaWRlIG9mIGEgQzxDSEVDSz4gYmxvY2ssIHRoZSBDPCR7XkdMT0JB TF9QSEFTRX0+IHZhcmlhYmxlIHdpbGwgYmUgc2V0IHRvCitDPCJDSEVDSyI+LgorCiBDPElOSVQ+ IGJsb2NrcyBhcmUgcnVuIGp1c3QgYmVmb3JlIHRoZSBQZXJsIHJ1bnRpbWUgYmVnaW5zIGV4ZWN1 dGlvbiwgaW4KICJmaXJzdCBpbiwgZmlyc3Qgb3V0IiAoRklGTykgb3JkZXIuCiAKK0luc2lkZSBv ZiBhbiBDPElOSVQ+IGJsb2NrLCB0aGUgQzwke15HTE9CQUxfUEhBU0V9PiB2YXJpYWJsZSB3aWxs IGJlIHNldCB0bworQzwiSU5JVCI+LgorCiBUaGUgQzxDSEVDSz4gYW5kIEM8SU5JVD4gYmxvY2tz IGluIGNvZGUgZXhlY3V0ZWQgYnkgQzxyZXF1aXJlPiwgc3RyaW5nIEM8ZG8+CiAsIG9yIHN0cmlu ZyBDPGV2YWw+IHdpbGwgbm90IGJlIGV4ZWN1dGVkIGlmIHRoZXkgb2NjdXIgYWZ0ZXIgdGhlIGVu ZCBvZiB0aGUKIG1haW4gY29tcGlsYXRpb24gcGhhc2UgKGkuZS4gdGhleSBhcmUgbm90IGluIGEg QzxCRUdJTj4gYmxvY2spOyB0aGF0IGNhbiBiZQpkaWZmIC0tZ2l0IGEvcG9kL3Blcmx2YXIucG9k IGIvcG9kL3Blcmx2YXIucG9kCmluZGV4IGQzNjg0YTEuLmYxNTk4MzIgMTAwNjQ0Ci0tLSBhL3Bv ZC9wZXJsdmFyLnBvZAorKysgYi9wb2QvcGVybHZhci5wb2QKQEAgLTUwMyw4ICs1MDMsNDkgQEAg Tm90IGV2ZXJ5IHByb2dyYW0gaGFzIHRvIGdvIHRocm91Z2ggZWFjaCBvZiB0aGUgcG9zc2libGUg cGhhc2VzLCBidXQKIHRyYW5zaXRpb24gZnJvbSBvbmUgcGhhc2UgdG8gYW5vdGhlciBjYW4gb25s eSBoYXBwZW4gaW4gdGhlIG9yZGVyCiBkZXNjcmliZWQgaW4gdGhlIGFib3ZlIGxpc3QuCiAKLVRo ZSBwYXRjaCBhbHNvIGluY2x1ZGVzIHNvbWUgYmFzaWMgdGVzdHMsIGlmIHlvdSBwcmVmZXIgYWN0 dWFsIHdvcmtpbmcKLWV4YW1wbGVzIG9mIGhvdyBDPCR7XkdMT0JBTF9QSEFTRX0+IGJlaGF2ZXMu CitBbiBleGFtcGxlIG9mIGFsbCBvZiB0aGUgcGhhc2VzIFBlcmwgY29kZSBjYW4gc2VlOgorCisg ICAgQkVHSU4geyBwcmludCAiY29tcGlsZS10aW1lOiAke15HTE9CQUxfUEhBU0V9XG4iIH0KKwor ICAgIElOSVQgIHsgcHJpbnQgImluaXQtdGltZTogJHteR0xPQkFMX1BIQVNFfVxuIiB9CisKKyAg ICBDSEVDSyB7IHByaW50ICJjaGVjay10aW1lOiAke15HTE9CQUxfUEhBU0V9XG4iIH0KKworICAg IHsKKyAgICAgICAgcGFja2FnZSBQcmludDo6UGhhc2U7CisKKyAgICAgICAgc3ViIG5ldyB7Cisg ICAgICAgICAgICBteSAoJGNsYXNzLCAkdGltZSkgPSBAXzsKKyAgICAgICAgICAgIHJldHVybiBi bGVzcyBcJHRpbWUsICRjbGFzczsKKyAgICAgICAgfQorCisgICAgICAgIHN1YiBERVNUUk9ZIHsK KyAgICAgICAgICAgIG15ICRzZWxmID0gc2hpZnQ7CisgICAgICAgICAgICBwcmludCAiJCRzZWxm OiAke15HTE9CQUxfUEhBU0V9XG4iOworICAgICAgICB9CisgICAgfQorCisgICAgcHJpbnQgInJ1 bi10aW1lOiAke15HTE9CQUxfUEhBU0V9XG4iOworCisgICAgbXkgJHJ1bnRpbWUgPSBQcmludDo6 UGhhc2UtPm5ldygKKyAgICAgICAgImxleGljYWwgdmFyaWFibGVzIGFyZSBnYXJiYWdlIGNvbGxl Y3RlZCBiZWZvcmUgRU5EIgorICAgICk7CisKKyAgICBFTkQgICB7IHByaW50ICJlbmQtdGltZTog JHteR0xPQkFMX1BIQVNFfVxuIiB9CisKKyAgICBvdXIgJGRlc3RydWN0ID0gUHJpbnQ6OlBoYXNl LT5uZXcoCisgICAgICAgICJwYWNrYWdlIHZhcmlhYmxlcyBhcmUgZ2FyYmFnZSBjb2xsZWN0ZWQg YWZ0ZXIgRU5EIgorICAgICk7CisKK1RoaXMgd2lsbCBwcmludCBvdXQKKworICAgIGNvbXBpbGUt dGltZTogU1RBUlQKKyAgICBjaGVjay10aW1lOiBDSEVDSworICAgIGluaXQtdGltZTogSU5JVAor ICAgIHJ1bi10aW1lOiBSVU4KKyAgICBsZXhpY2FsIHZhcmlhYmxlcyBhcmUgZ2FyYmFnZSBjb2xs ZWN0ZWQgYmVmb3JlIEVORDogUlVOCisgICAgZW5kLXRpbWU6IEVORAorICAgIHBhY2thZ2UgdmFy aWFibGVzIGFyZSBnYXJiYWdlIGNvbGxlY3RlZCBhZnRlciBFTkQ6IERFU1RSVUNUCiAKIFRoaXMg dmFyaWFibGUgd2FzIGFkZGVkIGluIFBlcmwgNS4xMy43LgogCi0tIAoxLjcuMS4xCgo= --0016364d206b786bc0049412dba0 Content-Type: application/octet-stream; name="0001-string-do-and-require-don-t-execute-INIT-and-CHECK-b.patch" Content-Disposition: attachment; filename="0001-string-do-and-require-don-t-execute-INIT-and-CHECK-b.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_gg0vplun1 RnJvbSA5MmRmMDM1YTc4MjFlYTU1NTI0NzgwZmVhMWFmMzFjYjY0NTI3NDJlIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBDaGFzLiBKLiBPd2VucyBJViA8Y2hhcy5vd2Vuc0BnbWFpbC5j b20+CkRhdGU6IFR1ZSwgMiBOb3YgMjAxMCAxMDoxNTozMiAtMDQwMApTdWJqZWN0OiBbUEFUQ0gg MS8yXSBzdHJpbmcgZG8gYW5kIHJlcXVpcmUgZG9uJ3QgZXhlY3V0ZSBJTklUIGFuZCBDSEVDSyBi bG9ja3MKCi0tLQogcG9kL3Blcmxtb2QucG9kIHwgICAgOSArKysrKy0tLS0KIDEgZmlsZXMgY2hh bmdlZCwgNSBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3BvZC9w ZXJsbW9kLnBvZCBiL3BvZC9wZXJsbW9kLnBvZAppbmRleCBlYWE4YmE5Li5kNmRkZDgzIDEwMDY0 NAotLS0gYS9wb2QvcGVybG1vZC5wb2QKKysrIGIvcG9kL3Blcmxtb2QucG9kCkBAIC0zMTEsMTAg KzMxMSwxMSBAQCBpbiB0aGUgUGVybCBjb21waWxlciBzdWl0ZSB0byBzYXZlIHRoZSBjb21waWxl ZCBzdGF0ZSBvZiB0aGUgcHJvZ3JhbS4KIEM8SU5JVD4gYmxvY2tzIGFyZSBydW4ganVzdCBiZWZv cmUgdGhlIFBlcmwgcnVudGltZSBiZWdpbnMgZXhlY3V0aW9uLCBpbgogImZpcnN0IGluLCBmaXJz dCBvdXQiIChGSUZPKSBvcmRlci4KIAotVGhlIEM8Q0hFQ0s+IGFuZCBDPElOSVQ+IGNvZGUgYmxv Y2tzIHdpbGwgbm90IGJlIGV4ZWN1dGVkIGluc2lkZSBhIHN0cmluZwotZXZhbCgpLCBpZiB0aGF0 IGV2YWwoKSBoYXBwZW5zIGFmdGVyIHRoZSBlbmQgb2YgdGhlIG1haW4gY29tcGlsYXRpb24KLXBo YXNlOyB0aGF0IGNhbiBiZSBhIHByb2JsZW0gaW4gbW9kX3BlcmwgYW5kIG90aGVyIHBlcnNpc3Rl bnQgZW52aXJvbm1lbnRzCi13aGljaCB1c2UgQzxldmFsIFNUUklORz4gdG8gbG9hZCBjb2RlIGF0 IHJ1bnRpbWUuCitUaGUgQzxDSEVDSz4gYW5kIEM8SU5JVD4gYmxvY2tzIGluIGNvZGUgZXhlY3V0 ZWQgYnkgQzxyZXF1aXJlPiwgc3RyaW5nIEM8ZG8+CissIG9yIHN0cmluZyBDPGV2YWw+IHdpbGwg bm90IGJlIGV4ZWN1dGVkIGlmIHRoZXkgb2NjdXIgYWZ0ZXIgdGhlIGVuZCBvZiB0aGUKK21haW4g Y29tcGlsYXRpb24gcGhhc2UgKGkuZS4gdGhleSBhcmUgbm90IGluIGEgQzxCRUdJTj4gYmxvY2sp OyB0aGF0IGNhbiBiZQorYSBwcm9ibGVtIGluIG1vZF9wZXJsIGFuZCBvdGhlciBwZXJzaXN0ZW50 IGVudmlyb25tZW50cyB3aGljaCB1c2UgdGhvc2UKK2Z1bmN0aW9ucyB0byBsb2FkIGNvZGUgYXQg cnVudGltZS4KIAogV2hlbiB5b3UgdXNlIHRoZSBCPC1uPiBhbmQgQjwtcD4gc3dpdGNoZXMgdG8g UGVybCwgQzxCRUdJTj4gYW5kCiBDPEVORD4gd29yayBqdXN0IGFzIHRoZXkgZG8gaW4gQjxhd2s+ LCBhcyBhIGRlZ2VuZXJhdGUgY2FzZS4KLS0gCjEuNy4xLjEKCg== --0016364d206b786bc0049412dba0--