diff options
-rw-r--r-- | Todo-5.6 | 5 | ||||
-rw-r--r-- | pod/perldata.pod | 23 | ||||
-rw-r--r-- | pod/perlport.pod | 8 |
3 files changed, 22 insertions, 14 deletions
@@ -1,3 +1,7 @@ +Bugs + perl_run() can longjmp out + fix small memory leaks on compile-time failures + Unicode support finish byte <-> utf8 and localencoding <-> utf8 conversions make "$bytestr$charstr" do the right conversion @@ -64,7 +68,6 @@ Win32 stuff work out DLL versioning Miscellaneous - magic_setisa should be made to update %FIELDS [???] add new modules (Archive::Tar, Compress::Zlib, CPAN::FTP?) replace pod2html with new PodtoHtml? (requires other modules from CPAN) automate testing with large parts of CPAN diff --git a/pod/perldata.pod b/pod/perldata.pod index 0b83214a73..a122d34c80 100644 --- a/pod/perldata.pod +++ b/pod/perldata.pod @@ -600,16 +600,16 @@ of how to arrange for an output ordering. =head2 Slices -A common way access an array or a hash is one scalar element at a time. -You can also subscript a list to get a single element from it. +A common way to access an array or a hash is one scalar element at a +time. You can also subscript a list to get a single element from it. $whoami = $ENV{"USER"}; # one element from the hash $parent = $ISA[0]; # one element from the array $dir = (getpwnam("daemon"))[7]; # likewise, but with list A slice accesses several elements of a list, an array, or a hash -simultaneously using a list of subscripts. It's a more convenient -that writing out the individual elements as a list of separate +simultaneously using a list of subscripts. It's more convenient +than writing out the individual elements as a list of separate scalar values. ($him, $her) = @folks[0,-1]; # array slice @@ -633,8 +633,8 @@ The previous assignments are exactly equivalent to ($folks[0], $folks[-1]) = ($folks[0], $folks[-1]); Since changing a slice changes the original array or hash that it's -slicing, a C<foreach> construct will alter through some--or even -all--of the values of the array or hash. +slicing, a C<foreach> construct will alter some--or even all--of the +values of the array or hash. foreach (@array[ 4 .. 10 ]) { s/peter/paul/ } @@ -644,15 +644,16 @@ all--of the values of the array or hash. s/(\w+)/\u\L$1/g; # "titlecase" words } -You couldn't just loop through C<values %hash> to do this because -that function produces a new list which is a copy of the values, -so changing them doesn't change the original. - A slice of an empty list is still an empty list. Thus: @a = ()[1,0]; # @a has no elements @b = (@a)[0,1]; # @b has no elements - @b = (1,undef)[1,0,1]; # @b has three elements + @c = (0,1)[2,3]; # @c has no elements + +But: + + @a = (1)[1,0]; # @a has two elements + @b = (1,undef)[1,0,2]; # @b has three elements This makes it easy to write loops that terminate when a null list is returned: diff --git a/pod/perlport.pod b/pod/perlport.pod index 7a500f8838..7533abd2f2 100644 --- a/pod/perlport.pod +++ b/pod/perlport.pod @@ -90,7 +90,7 @@ Perl uses C<\n> to represent the "logical" newline, where what is logical may depend on the platform in use. In MacPerl, C<\n> always means C<\015>. In DOSish perls, C<\n> usually means C<\012>, but when accessing a file in "text" mode, STDIO translates it to (or -from) C<\015\012>, depending on whether your reading or writing. +from) C<\015\012>, depending on whether you're reading or writing. Unix does the same thing on ttys in canonical mode. C<\015\012> is commonly referred to as CRLF. @@ -1675,6 +1675,10 @@ Not useful. (S<RISC OS>) =over 4 +=item v1.46, 12 February 2000 + +Updates for VOS and MPE/iX. (Peter Prymmer) Other small changes. + =item v1.45, 20 December 1999 Small changes from 5.005_63 distribution, more changes to EBCDIC info. @@ -1786,4 +1790,4 @@ E<lt>pudge@pobox.comE<gt>. =head1 VERSION -Version 1.45, last modified 20 December 1999 +Version 1.46, last modified 12 February 2000 |