diff options
author | Nicholas Clark <nick@ccl4.org> | 2006-01-27 10:36:05 +0000 |
---|---|---|
committer | Nicholas Clark <nick@ccl4.org> | 2006-01-27 10:36:05 +0000 |
commit | e761a78610045f5eed6e9ca93d8aaefb22dcb0a6 (patch) | |
tree | f9bb264c11b7b911124d24470127c24f51d758b5 | |
parent | 4b645107ff280e9efe46ab2fc89b620041a5b949 (diff) | |
download | perl-e761a78610045f5eed6e9ca93d8aaefb22dcb0a6.tar.gz |
A description of the new constants.
p4raw-id: //depot/perl@26955
-rw-r--r-- | pod/perl593delta.pod | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/pod/perl593delta.pod b/pod/perl593delta.pod index d29b928b5f..4a1a3056a5 100644 --- a/pod/perl593delta.pod +++ b/pod/perl593delta.pod @@ -234,7 +234,18 @@ transliteration mappings has been reimplemented in XS. =head2 Constant subroutines -XXX +The interpreter internals now support a far more memory efficient form of +inlineable constants. Storing a reference to a constant value in a symbol +table is equivalent to a full typeglob referencing a constant subroutine, +but using about 400 bytes less memory. This proxy constant subroutine is +automatically upgraded to a real typeglob with subroutine if necessary. +The approach taken is analogous to the existing space optimisation for +subroutine stub declarations, which are stored as plain scalars in place +of the full typeglob. + +Several of the core modules have been converted to use this feature for +their system dependent constants - as a result C<use POSIX;> now takes about +200K less memory. =head2 C<PERL_DONT_CREATE_GVSV> |