<?xml version='1.0' encoding='utf-8'?>
<pod xmlns="http://axkit.org/ns/2000/pod2xml">
<head>
	<title>perldelta - what is new for perl v5.10.1</title>
</head>
<sect1>
<title>perldelta - what is new for perl v5.10.1</title>
<para>
perldelta - perl v5.10.1 での変更点
</para>
</sect1>
<sect1>
<title>DESCRIPTION</title>
<para>
This document describes differences between the 5.10.0 release and
the 5.10.1 release.
</para>
<para>
このドキュメントは 5.10.0 リリースと 5.10.1 リリースの変更点を記述しています。
</para>
<para>
If you are upgrading from an earlier release such as 5.8.8, first read
the <link xref='perl5100delta'>perl5100delta</link>, which describes differences between 5.8.8 and
5.10.0
</para>
<para>
もしそれよりも前のリリース、例えば 5.8.8 等からアップデートするのなら、
5.8.8 と 5.10.0 との違いが書かれている <link xref='perl5100delta'>perl5100delta</link> を読んでおいた方が
よいでしょう。
</para>
</sect1>
<sect1>
<title>Incompatible Changes</title>
<para>
(互換性のない変更)
</para>
<sect2>
<title>Switch statement changes</title>
<para>
(switch 文の変更)
</para>
<para>
The handling of complex expressions by the <code>given</code>/<code>when</code> switch
statement has been enhanced. There are two new cases where <code>when</code> now
interprets its argument as a boolean, instead of an expression to be used
in a smart match:
</para>
<para>
<code>given</code>/<code>when</code> による複雑な式の扱いが拡張されました。
新しく、<code>when</code> がスマートマッチングの式ではなく真偽値として
引数を解釈する場合が二つあります。
</para>
<list>
<item><itemtext>flip-flop operators</itemtext>
<para>
(フリップフロップ演算子)
</para>
<para>
The <code>..</code> and <code>...</code> flip-flop operators are now evaluated in boolean
context, following their usual semantics; see <link xref='perlop#Range_Operators'>perlop/&quot;Range Operators&quot;</link>.
</para>
<para>
<code>..</code> と <code>...</code> のフリップフロップ演算子は、通常の文法に従ってブール値
コンテキストで評価されるようになりました。
<link xref='perlop#Range_Operators'>perlop/&quot;Range Operators&quot;</link> を参照してください。
</para>
<para>
Note that, as in perl 5.10.0, <code>when (1..10)</code> will not work to test
whether a given value is an integer between 1 and 10; you should use
<code>when ([1..10])</code> instead (note the array reference).
</para>
<para>
perl 5.10.0 では、<code>when (1..10)</code> としても、与えられた値が 1 から 10 の間の
数値かどうかをテストするようには動作しないことに注意してください;
代わりに <code>when ([1..10])</code> を使うべきです (配列リファレンスに
注意してください)。
</para>
<para>
However, contrary to 5.10.0, evaluating the flip-flop operators in boolean
context ensures it can now be useful in a <code>when()</code>, notably for
implementing bistable conditions, like in:
</para>
<para>
しかし、5.10.0 とは反対に、<code>when()</code> でブール値コンテキストで
フリップフロップ演算子が評価されることが保証されることで、
特に以下のように双安定条件を実装するときに便利です:
</para>
<verbatim><![CDATA[
when (/^=begin/ .. /^=end/) {
  # do something
}
]]></verbatim>
</item>
<item><itemtext>defined-or operator</itemtext>
<para>
(定義性和 (defined-or) 演算子)
</para>
<para>
A compound expression involving the defined-or operator, as in
<code>when (expr1 // expr2)</code>, will be treated as boolean if the first
expression is boolean. (This just extends the existing rule that applies
to the regular or operator, as in <code>when (expr1 || expr2)</code>.)
</para>
<para>
<code>when (expr1 // expr2)</code> のような、定義性和 (defined-or) を含む複合式は、
最初の式が真偽値なら真偽値として扱われます。
(これは単に、<code>when (expr1 || expr2)</code> のような通常の or 演算子に
適用されるすでにあるルールの拡張です。
</para>
</item>
</list>
<para>
The next section details more changes brought to the semantics to
the smart match operator, that naturally also modify the behaviour
of the switch statements where smart matching is implicitly used.
</para>
<para>
次の章では、スマートマッチング演算子の文法に関するさらなる変更と、
当然のながら暗黙にスマートマッチングを使っている switch 文の
振る舞いの変更について詳述します。
</para>
</sect2>
<sect2>
<title>Smart match changes</title>
<para>
(スマートマッチングの変更)
</para>
<sect3>
<title>Changes to type-based dispatch</title>
<para>
(型ベースの発行(dispatch)への変更)
</para>
<para>
The smart match operator <code>~~</code> is no longer commutative. The behaviour of
a smart match now depends primarily on the type of its right hand
argument. Moreover, its semantics have been adjusted for greater
consistency or usefulness in several cases. While the general backwards
compatibility is maintained, several changes must be noted:
</para>
<para>
スマートマッチング演算子 <code>~~</code> はもはや可換性を持ちません。
スマートマッチングの振る舞いは、まず右側の引数の型に依存します。
さらに、その文法は一貫性と有用性をより高めるために調整されました。
一般的な後方互換性は維持されている一方、いくつかの変更点には
注意しなければなりません:
</para>
<list>
<item><para>
Code references with an empty prototype are no longer treated specially.
They are passed an argument like the other code references (even if they
choose to ignore it).
</para>
<para>
空のプロトタイプを持つコードリファレンスは特別扱いされなくなりました。
(たとえ無視されることになるとしても)これらはその他のコードリファレンスと同様に
引数として渡されます。
</para>
</item>
<item><para>
<code>%hash ~~ sub {}</code> and <code>@array ~~ sub {}</code> now test that the subroutine
returns a true value for each key of the hash (or element of the
array), instead of passing the whole hash or array as a reference to
the subroutine.
</para>
<para>
<code>%hash ~~ sub {}</code> と <code>@array ~~ sub {}</code> は、
ハッシュや配列全体をリファレンスとしてサブルーチンに渡すのではなく、
ハッシュのそれぞれのキー(または配列の要素)に対してサブルーチンが
真を返すかどうかをテストするようになりました。
</para>
</item>
<item><para>
Due to the commutativity breakage, code references are no longer
treated specially when appearing on the left of the <code>~~</code> operator,
but like any vulgar scalar.
</para>
<para>
可換性の破綻により、コードリファレンスは <code>~~</code> 演算子の左側に
現れたときにはもはや特別扱いされず、普通のスカラと同じように扱われます。
</para>
</item>
<item><para>
<code>undef ~~ %hash</code> is always false (since <code>undef</code> can't be a key in a
hash). No implicit conversion to <code>&quot;&quot;</code> is done (as was the case in perl
5.10.0).
</para>
<para>
<code>undef ~~ %hash</code> は常に偽となります (なぜなら <code>undef</code> はハッシュのキーとして
使えないからです)。
(perl 5.10.0 の場合のように)<code>&quot;&quot;</code> への暗黙の変換は行われません。
</para>
</item>
<item><para>
<code>$scalar ~~ @array</code> now always distributes the smart match across the
elements of the array. It's true if one element in @array verifies
<code>$scalar ~~ $element</code>. This is a generalization of the old behaviour
that tested whether the array contained the scalar.
</para>
<para>
<code>$scalar ~~ @array</code> は常に配列の要素に対してスマートマッチングを
分配するようになりました。
これは、もし @array の一つの要素が <code>$scalar ~~ $element</code> で検証されれば
真となります。
これは、配列にあるスカラが含まれているかどうかをテストする古い振る舞いの
一般化です。
</para>
</item>
</list>
<para>
The full dispatch table for the smart match operator is given in
<link xref='perlsyn#Smart_matching_in_detail'>perlsyn/&quot;Smart matching in detail&quot;</link>.
</para>
<para>
スマートマッチング演算子に関する完全な発行テーブルは
<link xref='perlsyn#Smart_matching_in_detail'>perlsyn/&quot;Smart matching in detail&quot;</link> にあります。
</para>
</sect3>
<sect3>
<title>Smart match and overloading</title>
<para>
(スマートマッチングとオーバーロード)
</para>
<para>
According to the rule of dispatch based on the rightmost argument type,
when an object overloading <code>~~</code> appears on the right side of the
operator, the overload routine will always be called (with a 3rd argument
set to a true value, see <link xref='overload'>overload</link>.) However, when the object will
appear on the left, the overload routine will be called only when the
rightmost argument is a simple scalar. This way distributivity of smart match
across arrays is not broken, as well as the other behaviours with complex
types (coderefs, hashes, regexes). Thus, writers of overloading routines
for smart match mostly need to worry only with comparing against a scalar,
and possibly with stringification overloading; the other common cases
will be automatically handled consistently.
</para>
<para>
一番右の引数の型に依存するという発行ルールによれば、
演算子の右側にオブジェクトのオーバーロード <code>~~</code> が現れたとき、
オーバーロードルーチンは(3 番目の引数に真の値を設定して; <link xref='overload'>overload</link> を
参照してください) 常に呼び出されます。
しかし、オブジェクトが左側に現れたとき、オーバーロードルーチンは
一番右の引数が単純なスカラの場合にのみ呼び出されます。
これによって配列に対するスマートマッチングの分配性や
複合型(コードリファレンス、ハッシュ、正規表現)に対するその他の振る舞いは
壊れません。
従って、スマートマッチングのためのローバーロードルーチンの作者は
ほとんどの場合、スカラの比較と、可能性があるなら文字列化のオーバーロードに
関してのみ心配する必要があります; その他の一般的な場合は
一貫性を持って自動的に扱われます。
</para>
<para>
<code>~~</code> will now refuse to work on objects that do not overload it (in order
to avoid relying on the object's underlying structure). (However, if the
object overloads the stringification or the numification operators, and
if overload fallback is active, it will be used instead, as usual.)
</para>
<para>
<code>~~</code> は、オーバーロードしていないオブジェクトに対して動作しなくなりました
(オブジェクトの基礎となる構造に依存することを避けるためです)。
しかし、オブジェクトが文字列化か数値化演算子をオーバーロードしていて、
オーバーロードのフォールバックが有効の場合は、通常通りに使われます。)
</para>
</sect3>
</sect2>
<sect2>
<title>Other incompatible changes</title>
<para>
(その他の互換性のない変更)
</para>
<list>
<item><para>
The semantics of <code>use feature :5.10*</code> have changed slightly.
See <link xref='#Modules_and_Pragmata'>&quot;Modules and Pragmata&quot;</link> for more information.
</para>
<para>
<code>use feature :5.10*</code> の文法が少し変更されました。
さらなる情報については <link xref='#Modules_and_Pragmata'>&quot;Modules and Pragmata&quot;</link> を参照してください。
</para>
</item>
<item><para>
It is now a run-time error to use the smart match operator <code>~~</code>
with an object that has no overload defined for it. (This way
<code>~~</code> will not break encapsulation by matching against the
object's internal representation as a reference.)
</para>
<para>
オーバーロードが定義されていないオブジェクトに対してスマートマッチング
演算子 <code>~~</code> を使うと、実行時エラーが出るようになりました。
(これで、<code>~~</code> オブジェクトのリファレンスとしての内部表現に
マッチングすることでカプセル化を壊すことがなくなります。)
</para>
</item>
<item><para>
The version control system used for the development of the perl
interpreter has been switched from Perforce to git.  This is mainly an
internal issue that only affects people actively working on the perl core;
but it may have minor external visibility, for example in some of details
of the output of <code>perl -V</code>. See <link xref='perlrepository'>perlrepository</link> for more information.
</para>
<para>
perl インタプリタの開発で使われるバージョン管理システムが Perforce から
git に変更されました。
これは主に内部の問題で、perl コアに対して積極的に作業をする
人々にのみ影響があります;
しかし、<code>perl -V</code> の出力の詳細の一部のように、外から見えるところにも
多少の変更があります。
さらなる情報については <link xref='perlrepository'>perlrepository</link> を参照してください。
</para>
</item>
<item><para>
The internal structure of the <code>ext/</code> directory in the perl source has
been reorganised. In general, a module <code>Foo::Bar</code> whose source was
stored under <filename>ext/Foo/Bar/</filename> is now located under <filename>ext/Foo-Bar/</filename>. Also,
some modules have been moved from <filename>lib/</filename> to <filename>ext/</filename>. This is purely a
source tarball change, and should make no difference to the compilation or
installation of perl, unless you have a very customised build process that
explicitly relies on this structure, or which hard-codes the <code>nonxs_ext</code>
<filename>Configure</filename> parameter. Specifically, this change does not by default
alter the location of any files in the final installation.
</para>
<para>
perl ソースの <code>ext/</code> ディレクトリの内部構造が再構成されました。
一般的に、今まで <filename>ext/Foo/Bar/</filename> にソースが保管されていた
<code>Foo::Bar</code> モジュールは、<filename>ext/Foo-Bar/</filename> に置かれるようになりました。
また、いくつかのモジュールが <filename>lib/</filename> から <filename>ext/</filename> に移動しました。
これは純粋にソース tarball の変更なので、この構造に明示的に
依存していたり、<filename>Configure</filename> の <code>nonxs_ext</code> パラメータを
ハードコーディングしているような、とてもカスタマイズされたビルド処理を
するのでない限り、perl のコンパイルやインストールに違いはないはずです。
特に、この変更によっても最終的にインストールされたファイルの位置は
変更されません。
</para>
</item>
<item><para>
As part of the <code>Test::Harness</code> 2.x to 3.x upgrade, the experimental
<code>Test::Harness::Straps</code> module has been removed.
See <link xref='#Updated_Modules'>/&quot;Updated Modules&quot;</link> for more details.
</para>
<para>
<code>Test::Harness</code> 2.x から 3.x へのアップグレードへの一部として、
実験的な <code>Test::Harness::Straps</code> モジュールは取り除かれました。
さらなる詳細については <link xref='#Updated_Modules'>/&quot;Updated Modules&quot;</link> を参照してください。
</para>
</item>
<item><para>
As part of the <code>ExtUtils::MakeMaker</code> upgrade, the
<code>ExtUtils::MakeMaker::bytes</code> and <code>ExtUtils::MakeMaker::vmsish</code> modules
have been removed from this distribution.
</para>
<para>
<code>ExtUtils::MakeMaker</code> のアップグレードの一部として、
<code>ExtUtils::MakeMaker::bytes</code> と <code>ExtUtils::MakeMaker::vmsish</code> の
モジュールはこの配布から取り除かれました。
</para>
</item>
<item><para>
<code>Module::CoreList</code> no longer contains the <code>%:patchlevel</code> hash.
</para>
<para>
<code>Module::CoreList</code> はもはや <code>%:patchlevel</code> ハッシュを含まなくなりました。
</para>
</item>
<item><para>
This one is actually a change introduced in 5.10.0, but it was missed
from that release's perldelta, so it is mentioned here instead.
</para>
<para>
これは実際には 5.10.0 で導入された変更ですが、5.10.0 の perldelta からは
漏れているので、代わりにここで言及します。
</para>
<para>
A bugfix related to the handling of the <code>/m</code> modifier and <code>qr</code> resulted
in a change of behaviour between 5.8.x and 5.10.0:
</para>
<para>
<code>/m</code> 修飾子と <code>qr</code> の扱いに関するバグ修正の結果、5.8.x と 5.10.0 で
振る舞いが変わっています:
</para>
<verbatim><![CDATA[
# matches in 5.8.x, doesn't match in 5.10.0
$re = qr/^bar/; "foo\nbar" =~ /$re/m;
]]></verbatim>
</item>
</list>
</sect2>
</sect1>
<sect1>
<title>Core Enhancements</title>
<para>
(コアの拡張)
</para>
<sect2>
<title>Unicode Character Database 5.1.0</title>
<para>
The copy of the Unicode Character Database included in Perl 5.10.1 has
been updated to 5.1.0 from 5.0.0. See
<link xref='{tag:xlink uri='http:#/www.unicode.org/versions/Unicode5.1.0/#NotableChanges'>http:#/www.unicode.org/versions/Unicode5.1.0/#NotableChanges</xlink>'}<xlink uri='http://www.unicode.org/versions/Unicode5.1.0/#NotableChanges'>http://www.unicode.org/versions/Unicode5.1.0/#NotableChanges</xlink></link> for the
notable changes.
</para>
<para>
Perl 5.10.1 に含まれる Unicode Character Database は 5.0.0 から 5.1.0 に
更新されました。
注目するべき変更点については
<link xref='{tag:xlink uri='http:#/www.unicode.org/versions/Unicode5.1.0/#NotableChanges'>http:#/www.unicode.org/versions/Unicode5.1.0/#NotableChanges</xlink>'}<xlink uri='http://www.unicode.org/versions/Unicode5.1.0/#NotableChanges'>http://www.unicode.org/versions/Unicode5.1.0/#NotableChanges</xlink></link> を
参照してください。
</para>
</sect2>
<sect2>
<title>A proper interface for pluggable Method Resolution Orders</title>
<para>
(プラグ可能なメソッド解決順序のための適切なインターフェース)
</para>
<para>
As of Perl 5.10.1 there is a new interface for plugging and using method
resolution orders other than the default (linear depth first search).
The C3 method resolution order added in 5.10.0 has been re-implemented as
a plugin, without changing its Perl-space interface. See <link xref='perlmroapi'>perlmroapi</link> for
more information.
</para>
<para>
Perl 5.10.1 から、デフォルト (線形深さ優先検索) 以外のメソッド解決順序を
追加して使うための新しいインターフェースがあります。
5.10.0 で追加された C3 メソッド解決順序は、Perl 空間でのインターフェースの
変更なしにプラグインとして再実装されました。
さらなる情報については <link xref='perlmroapi'>perlmroapi</link> を参照してください。
</para>
</sect2>
<sect2>
<title>The <code>overloading</code> pragma</title>
<para>
(<code>overloading</code> プラグマ)
</para>
<para>
This pragma allows you to lexically disable or enable overloading
for some or all operations. (Yuval Kogman)
</para>
<para>
このプラグマは、演算子の一部あるいは全部を、レキシカルに無効化あるいは
有効化します。
(Yuval Kogman)
</para>
</sect2>
<sect2>
<title>Parallel tests</title>
<para>
(並列テスト)
</para>
<para>
The core distribution can now run its regression tests in parallel on
Unix-like platforms. Instead of running <code>make test</code>, set <code>TEST_JOBS</code> in
your environment to the number of tests to run in parallel, and run
<code>make test_harness</code>. On a Bourne-like shell, this can be done as
</para>
<para>
コア配布は、Unix 風プラットフォームでは退行テストを並列に実行できるように
なりました。
<code>make test</code> を実行する代わりに、環境変数 <code>TEST_JOBS</code> に並列に
実行するテスト数を設定して、<code>make test_harness</code> を実行します。 
Bourne-風のシェルでは、これは以下のようにします
</para>
<verbatim><![CDATA[
TEST_JOBS=3 make test_harness  # Run 3 tests in parallel
]]></verbatim>
<para>
An environment variable is used, rather than parallel make itself, because
<link xref='TAP::Harness'>TAP::Harness</link> needs to be able to schedule individual non-conflicting test
scripts itself, and there is no standard interface to <code>make</code> utilities to
interact with their job schedulers.
</para>
<para>
並列 make 自身ではなく、環境変数を使います; なぜなら
<link xref='TAP::Harness'>TAP::Harness</link> はここの競合しないテストスクリプト自身を計画できる必要が
ありますが、<code>make</code> ユーティリティのジョブスケジューラと相互作用するための
標準的なインターフェースはないからです。
</para>
<para>
Note that currently some test scripts may fail when run in parallel (most
notably <code>ext/IO/t/io_dir.t</code>). If necessary run just the failing scripts
again sequentially and see if the failures go away.
</para>
<para>
いくつかのテストスクリプト(特に <code>ext/IO/t/io_dir.t</code>)は並列に実行すると
失敗するかもしれないことに注意してください。
もし必要なら、失敗したスクリプトを順番に再実行して、失敗しなくなることを
確認してください。
</para>
</sect2>
<sect2>
<title>DTrace support</title>
<para>
(DTrace 対応)
</para>
<para>
Some support for DTrace has been added. See &quot;DTrace support&quot; in <filename>INSTALL</filename>.
</para>
<para>
DTrace へのいくらかの対応が追加されました。
<filename>INSTALL</filename> の &quot;DTrace support&quot; を参照してください。
</para>
</sect2>
<sect2>
<title>Support for <code>configure_requires</code> in CPAN module metadata</title>
<para>
(CPAN モジュールメタデータの <code>configure_requires</code> への対応)
</para>
<para>
Both <code>CPAN</code> and <code>CPANPLUS</code> now support the <code>configure_requires</code> keyword
in the <code>META.yml</code> metadata file included in most recent CPAN distributions.
This allows distribution authors to specify configuration prerequisites that
must be installed before running <filename>Makefile.PL</filename> or <filename>Build.PL</filename>.
</para>
<para>
<code>CPAN</code> と <code>CPANPLUS</code> は、ほとんどの最近の CPAN 配布が含んでいる
メタデータファイル <code>META.yml</code> の <code>configure_requires</code> キーワードに
対応しました。
これにより、<filename>Makefile.PL</filename> や <filename>Build.PL</filename> が実行される前に
インストールされていなければならない設定の事前条件を指定できます。
</para>
<para>
See the documentation for <code>ExtUtils::MakeMaker</code> or <code>Module::Build</code> for more
on how to specify <code>configure_requires</code> when creating a distribution for CPAN.
</para>
<para>
CPAN で配布するときに <code>configure_requires</code> を指定する方法については
<code>ExtUtils::MakeMaker</code> か <code>Module::Build</code> の文書を参照してください。
</para>
</sect2>
</sect1>
<sect1>
<title>Modules and Pragmata</title>
<para>
(モジュールとプラグマ)
</para>
<sect2>
<title>New Modules and Pragmata</title>
<para>
(新しいモジュールとプラグマ)
</para>
<list>
<item><itemtext><code>autodie</code></itemtext>
<para>
This is a new lexically-scoped alternative for the <code>Fatal</code> module.
The bundled version is 2.06_01. Note that in this release, using a string
eval when <code>autodie</code> is in effect can cause the autodie behaviour to leak
into the surrounding scope. See <link xref='autodie#BUGS'>autodie/&quot;BUGS&quot;</link> for more details.
</para>
<para>
これは <code>Fatal</code> モジュール代用品で、新しくレキシカルスコープを持つものです。
同梱されているバージョンは 2.06_01 です。
このリリースでは、<code>autodie</code> が有効の時に文字列 eval を使うと、
autodie の振る舞いが周りのスコープに漏れるかもしれないことに
注意してください。
さらなる詳細については <link xref='autodie#BUGS'>autodie/&quot;BUGS&quot;</link> を参照してください。
</para>
</item>
<item><itemtext><code>Compress::Raw::Bzip2</code></itemtext>
<para>
This has been added to the core (version 2.020).
</para>
<para>
これはコアに追加されました (バージョン 2.020)。
</para>
</item>
<item><itemtext><code>parent</code></itemtext>
<para>
This pragma establishes an ISA relationship with base classes at compile
time. It provides the key feature of <code>base</code> without the feature creep.
</para>
<para>
このプラグマは、基底クラスとの ISA 関係をコンパイル時に構築します。
これは、機能の不愉快な部分なしに <code>base</code> の主となる機能を提供します。
</para>
</item>
<item><itemtext><code>Parse::CPAN::Meta</code></itemtext>
<para>
This has been added to the core (version 1.39).
</para>
<para>
これはコアに追加されました (バージョン 1.39)。
</para>
</item>
</list>
</sect2>
<sect2>
<title>Pragmata Changes</title>
<para>
(変更されたプラグマ)
</para>
<list>
<item><itemtext><code>attributes</code></itemtext>
<para>
Upgraded from version 0.08 to 0.09.
</para>
<para>
0.08 から 0.09 に更新されました。
</para>
</item>
<item><itemtext><code>attrs</code></itemtext>
<para>
Upgraded from version 1.02 to 1.03.
</para>
<para>
1.02 から 1.03 に更新されました。
</para>
</item>
<item><itemtext><code>base</code></itemtext>
<para>
Upgraded from version 2.13 to 2.14. See <link xref='parent'>parent</link> for a replacement.
</para>
<para>
2.13 から 2.14 に更新されました。
代用品については <link xref='parent'>parent</link> を参照してください。
</para>
</item>
<item><itemtext><code>bigint</code></itemtext>
<para>
Upgraded from version 0.22 to 0.23.
</para>
<para>
0.22 から 0.23 に更新されました。
</para>
</item>
<item><itemtext><code>bignum</code></itemtext>
<para>
Upgraded from version 0.22 to 0.23.
</para>
<para>
0.22 から 0.23 に更新されました。
</para>
</item>
<item><itemtext><code>bigrat</code></itemtext>
<para>
Upgraded from version 0.22 to 0.23.
</para>
<para>
0.22 から 0.23 に更新されました。
</para>
</item>
<item><itemtext><code>charnames</code></itemtext>
<para>
Upgraded from version 1.06 to 1.07.
</para>
<para>
1.06 から 1.07 に更新されました。
</para>
<para>
The Unicode <filename>NameAliases.txt</filename> database file has been added. This has the
effect of adding some extra <code>\N</code> character names that formerly wouldn't
have been recognised; for example, <code>&quot;\N{LATIN CAPITAL LETTER GHA}&quot;</code>.
</para>
<para>
Unicode <filename>NameAliases.txt</filename> データベースファイルが追加されました。
これにより、以前は認識されなかった追加の <code>\N</code> 文字名(例えば
<code>&quot;\N{LATIN CAPITAL LETTER GHA}&quot;</code>) が追加される効果があります。
</para>
</item>
<item><itemtext><code>constant</code></itemtext>
<para>
Upgraded from version 1.13 to 1.17.
</para>
<para>
1.13 から 1.17 に更新されました。
</para>
</item>
<item><itemtext><code>feature</code></itemtext>
<para>
The meaning of the <code>:5.10</code> and <code>:5.10.X</code> feature bundles has
changed slightly. The last component, if any (i.e. <code>X</code>) is simply ignored.
This is predicated on the assumption that new features will not, in
general, be added to maintenance releases. So <code>:5.10</code> and <code>:5.10.X</code>
have identical effect. This is a change to the behaviour documented for
5.10.0.
</para>
<para>
<code>:5.10</code> および <code>:5.10.X</code> で組み込まれる機能が僅かに変更されました。
最後の要素 (つまり <code>X</code>) がもしあっても、単に無視されます。 
これは、一般的にはメンテナンスリリースでは新しい機能はないという仮定に
基づいています。
従って、<code>:5.10</code> と <code>:5.10.X</code> は同じ効果を持ちます。
これは 5.10.0 で文書化されている振る舞いへの変更です。
</para>
</item>
<item><itemtext><code>fields</code></itemtext>
<para>
Upgraded from version 2.13 to 2.14 (this was just a version bump; there
were no functional changes).
</para>
<para>
2.13 から 2.14 に更新されました (これは単なるバージョン番号の衝突でした;
機能的な変更はありません)。
</para>
</item>
<item><itemtext><code>lib</code></itemtext>
<para>
Upgraded from version 0.5565 to 0.62.
</para>
<para>
0.5565 から 0.62 に更新されました。
</para>
</item>
<item><itemtext><code>open</code></itemtext>
<para>
Upgraded from version 1.06 to 1.07.
</para>
<para>
1.06 から 1.07 に更新されました。
</para>
</item>
<item><itemtext><code>overload</code></itemtext>
<para>
Upgraded from version 1.06 to 1.07.
</para>
<para>
1.06 から 1.07 に更新されました。
</para>
</item>
<item><itemtext><code>overloading</code></itemtext>
<para>
See <link xref='&quot;The {tag:code>overloading{#tag:code} pragma&quot;'}/&quot;The <code>overloading</code> pragma&quot;</link> above.
</para>
<para>
上述の <link xref='&quot;The {tag:code>overloading{#tag:code} pragma&quot;'}/&quot;The <code>overloading</code> pragma&quot;</link> を参照してください。
</para>
</item>
<item><itemtext><code>version</code></itemtext>
<para>
Upgraded from version 0.74 to 0.77.
</para>
<para>
0.74 から 0.77 に更新されました。
</para>
</item>
</list>
</sect2>
<sect2>
<title>Updated Modules</title>
<para>
(更新されたモジュール)
</para>
<list>
<item><itemtext><code>Archive::Extract</code></itemtext>
<para>
Upgraded from version 0.24 to 0.34.
</para>
<para>
0.24 から 0.34 に更新されました。
</para>
</item>
<item><itemtext><code>Archive::Tar</code></itemtext>
<para>
Upgraded from version 1.38 to 1.52.
</para>
<para>
1.38 から 1.52 に更新されました。
</para>
</item>
<item><itemtext><code>Attribute::Handlers</code></itemtext>
<para>
Upgraded from version 0.79 to 0.85.
</para>
<para>
0.79 から 0.85 に更新されました。
</para>
</item>
<item><itemtext><code>AutoLoader</code></itemtext>
<para>
Upgraded from version 5.63 to 5.68.
</para>
<para>
5.63 から 5.68 に更新されました。
</para>
</item>
<item><itemtext><code>AutoSplit</code></itemtext>
<para>
Upgraded from version 1.05 to 1.06.
</para>
<para>
1.05 から 1.06 に更新されました。
</para>
</item>
<item><itemtext><code>B</code></itemtext>
<para>
Upgraded from version 1.17 to 1.22.
</para>
<para>
1.17 から 1.22 に更新されました。
</para>
</item>
<item><itemtext><code>B::Debug</code></itemtext>
<para>
Upgraded from version 1.05 to 1.11.
</para>
<para>
1.05 から 1.11 に更新されました。
</para>
</item>
<item><itemtext><code>B::Deparse</code></itemtext>
<para>
Upgraded from version 0.83 to 0.89.
</para>
<para>
0.83 から 0.89 に更新されました。
</para>
</item>
<item><itemtext><code>B::Lint</code></itemtext>
<para>
Upgraded from version 1.09 to 1.11.
</para>
<para>
1.09 から 1.11 に更新されました。
</para>
</item>
<item><itemtext><code>B::Xref</code></itemtext>
<para>
Upgraded from version 1.01 to 1.02.
</para>
<para>
1.01 から 1.02 に更新されました。
</para>
</item>
<item><itemtext><code>Benchmark</code></itemtext>
<para>
Upgraded from version 1.10 to 1.11.
</para>
<para>
1.10 から 1.11 に更新されました。
</para>
</item>
<item><itemtext><code>Carp</code></itemtext>
<para>
Upgraded from version 1.08 to 1.11.
</para>
<para>
1.08 から 1.11 に更新されました。
</para>
</item>
<item><itemtext><code>CGI</code></itemtext>
<para>
Upgraded from version 3.29 to 3.43.
(also includes the &quot;default_value for popup_menu()&quot; fix from 3.45).
</para>
<para>
3.29 から 3.43 に更新されました。
(また、3.45 の &quot;default_value for popup_menu()&quot; の修正を含んでいます)。
</para>
</item>
<item><itemtext><code>Compress::Zlib</code></itemtext>
<para>
Upgraded from version 2.008 to 2.020.
</para>
<para>
2.008 から 2.020 に更新されました。
</para>
</item>
<item><itemtext><code>CPAN</code></itemtext>
<para>
Upgraded from version 1.9205 to 1.9402. <code>CPAN::FTP</code> has a local fix to
stop it being too verbose on download failure.
</para>
<para>
1.9205 から 1.9402 に更新されました。
<code>CPAN::FTP</code> は、ダウンロード失敗時に饒舌すぎるのを止めるローカルな
修正をしています。
</para>
</item>
<item><itemtext><code>CPANPLUS</code></itemtext>
<para>
Upgraded from version 0.84 to 0.88.
</para>
<para>
0.84 から 0.88 に更新されました。
</para>
</item>
<item><itemtext><code>CPANPLUS::Dist::Build</code></itemtext>
<para>
Upgraded from version 0.06_02 to 0.36.
</para>
<para>
0.06_02 から 0.36 に更新されました。
</para>
</item>
<item><itemtext><code>Cwd</code></itemtext>
<para>
Upgraded from version 3.25_01 to 3.30.
</para>
<para>
3.25_01 から 3.30 に更新されました。
</para>
</item>
<item><itemtext><code>Data::Dumper</code></itemtext>
<para>
Upgraded from version 2.121_14 to 2.124.
</para>
<para>
2.121_14 から 2.124 に更新されました。
</para>
</item>
<item><itemtext><code>DB</code></itemtext>
<para>
Upgraded from version 1.01 to 1.02.
</para>
<para>
1.01 から 1.02 に更新されました。
</para>
</item>
<item><itemtext><code>DB_File</code></itemtext>
<para>
Upgraded from version 1.816_1 to 1.820.
</para>
<para>
1.816_1 から 1.820 に更新されました。
</para>
</item>
<item><itemtext><code>Devel::PPPort</code></itemtext>
<para>
Upgraded from version 3.13 to 3.19.
</para>
<para>
3.13 から 3.19 に更新されました。
</para>
</item>
<item><itemtext><code>Digest::MD5</code></itemtext>
<para>
Upgraded from version 2.36_01 to 2.39.
</para>
<para>
2.36_01 から 2.39 に更新されました。
</para>
</item>
<item><itemtext><code>Digest::SHA</code></itemtext>
<para>
Upgraded from version 5.45 to 5.47.
</para>
<para>
5.45 から 5.47 に更新されました。
</para>
</item>
<item><itemtext><code>DirHandle</code></itemtext>
<para>
Upgraded from version 1.01 to 1.03.
</para>
<para>
1.01 から 1.03 に更新されました。
</para>
</item>
<item><itemtext><code>Dumpvalue</code></itemtext>
<para>
Upgraded from version 1.12 to 1.13.
</para>
<para>
1.12 から 1.13 に更新されました。
</para>
</item>
<item><itemtext><code>DynaLoader</code></itemtext>
<para>
Upgraded from version 1.08 to 1.10.
</para>
<para>
1.08 から 1.10 に更新されました。
</para>
</item>
<item><itemtext><code>Encode</code></itemtext>
<para>
Upgraded from version 2.23 to 2.35.
</para>
<para>
2.23 から 2.35 に更新されました。
</para>
</item>
<item><itemtext><code>Errno</code></itemtext>
<para>
Upgraded from version 1.10 to 1.11.
</para>
<para>
1.10 から 1.11 に更新されました。
</para>
</item>
<item><itemtext><code>Exporter</code></itemtext>
<para>
Upgraded from version 5.62 to 5.63.
</para>
<para>
5.62 から 5.63 に更新されました。
</para>
</item>
<item><itemtext><code>ExtUtils::CBuilder</code></itemtext>
<para>
Upgraded from version 0.21 to 0.2602.
</para>
<para>
0.21 から 0.2602 に更新されました。
</para>
</item>
<item><itemtext><code>ExtUtils::Command</code></itemtext>
<para>
Upgraded from version 1.13 to 1.16.
</para>
<para>
1.13 から 1.16 に更新されました。
</para>
</item>
<item><itemtext><code>ExtUtils::Constant</code></itemtext>
<para>
Upgraded from 0.20 to 0.22. (Note that neither of these versions are
available on CPAN.)
</para>
<para>
0.20 から 0.22 に更新されました。
(これらのバージョンは CPAN にはないことに注意してください。)
</para>
</item>
<item><itemtext><code>ExtUtils::Embed</code></itemtext>
<para>
Upgraded from version 1.27 to 1.28.
</para>
<para>
1.27 から 1.28 に更新されました。
</para>
</item>
<item><itemtext><code>ExtUtils::Install</code></itemtext>
<para>
Upgraded from version 1.44 to 1.54.
</para>
<para>
1.44 から 1.54 に更新されました。
</para>
</item>
<item><itemtext><code>ExtUtils::MakeMaker</code></itemtext>
<para>
Upgraded from version 6.42 to 6.55_02.
</para>
<para>
6.42 から 6.55_02 に更新されました。
</para>
<para>
Note that <code>ExtUtils::MakeMaker::bytes</code> and <code>ExtUtils::MakeMaker::vmsish</code>
have been removed from this distribution.
</para>
<para>
<code>ExtUtils::MakeMaker::bytes</code> と <code>ExtUtils::MakeMaker::vmsish</code> は
この配布から取り除かれたことに注意してください。
</para>
</item>
<item><itemtext><code>ExtUtils::Manifest</code></itemtext>
<para>
Upgraded from version 1.51_01 to 1.56.
</para>
<para>
1.51_01 から 1.56 に更新されました。
</para>
</item>
<item><itemtext><code>ExtUtils::ParseXS</code></itemtext>
<para>
Upgraded from version 2.18_02 to 2.2002.
</para>
<para>
2.18_02 から 2.2002 に更新されました。
</para>
</item>
<item><itemtext><code>Fatal</code></itemtext>
<para>
Upgraded from version 1.05 to 2.06_01. See also the new pragma <code>autodie</code>.
</para>
<para>
1.05 から 2.06_01 に更新されました。
新しいプラグマである <code>autodie</code> も参照してください。
</para>
</item>
<item><itemtext><code><xlink uri='File::Basename'>File::Basename</xlink></code></itemtext>
<para>
Upgraded from version 2.76 to 2.77.
</para>
<para>
2.76 から 2.77 に更新されました。
</para>
</item>
<item><itemtext><code><xlink uri='File::Compare'>File::Compare</xlink></code></itemtext>
<para>
Upgraded from version 1.1005 to 1.1006.
</para>
<para>
1.1005 から 1.1006 に更新されました。
</para>
</item>
<item><itemtext><code><xlink uri='File::Copy'>File::Copy</xlink></code></itemtext>
<para>
Upgraded from version 2.11 to 2.14.
</para>
<para>
2.11 から 2.14 に更新されました。
</para>
</item>
<item><itemtext><code><xlink uri='File::Fetch'>File::Fetch</xlink></code></itemtext>
<para>
Upgraded from version 0.14 to 0.20.
</para>
<para>
0.14 から 0.20 に更新されました。
</para>
</item>
<item><itemtext><code><xlink uri='File::Find'>File::Find</xlink></code></itemtext>
<para>
Upgraded from version 1.12 to 1.14.
</para>
<para>
1.12 から 1.14 に更新されました。
</para>
</item>
<item><itemtext><code><xlink uri='File::Path'>File::Path</xlink></code></itemtext>
<para>
Upgraded from version 2.04 to 2.07_03.
</para>
<para>
2.04 から 2.07_03 に更新されました。
</para>
</item>
<item><itemtext><code><xlink uri='File::Spec'>File::Spec</xlink></code></itemtext>
<para>
Upgraded from version 3.2501 to 3.30.
</para>
<para>
3.2501 から 3.30 に更新されました。
</para>
</item>
<item><itemtext><code><xlink uri='File::stat'>File::stat</xlink></code></itemtext>
<para>
Upgraded from version 1.00 to 1.01.
</para>
<para>
1.00 から 1.01 に更新されました。
</para>
</item>
<item><itemtext><code><xlink uri='File::Temp'>File::Temp</xlink></code></itemtext>
<para>
Upgraded from version 0.18 to 0.22.
</para>
<para>
0.18 から 0.22 に更新されました。
</para>
</item>
<item><itemtext><code>FileCache</code></itemtext>
<para>
Upgraded from version 1.07 to 1.08.
</para>
<para>
1.07 から 1.08 に更新されました。
</para>
</item>
<item><itemtext><code>FileHandle</code></itemtext>
<para>
Upgraded from version 2.01 to 2.02.
</para>
<para>
2.01 から 2.02 に更新されました。
</para>
</item>
<item><itemtext><code>Filter::Simple</code></itemtext>
<para>
Upgraded from version 0.82 to 0.84.
</para>
<para>
0.82 から 0.84 に更新されました。
</para>
</item>
<item><itemtext><code>Filter::Util::Call</code></itemtext>
<para>
Upgraded from version 1.07 to 1.08.
</para>
<para>
1.07 から 1.08 に更新されました。
</para>
</item>
<item><itemtext><code>FindBin</code></itemtext>
<para>
Upgraded from version 1.49 to 1.50.
</para>
<para>
1.49 から 1.50 に更新されました。
</para>
</item>
<item><itemtext><code>GDBM_File</code></itemtext>
<para>
Upgraded from version 1.08 to 1.09.
</para>
<para>
1.08 から 1.09 に更新されました。
</para>
</item>
<item><itemtext><code>Getopt::Long</code></itemtext>
<para>
Upgraded from version 2.37 to 2.38.
</para>
<para>
2.37 から 2.38 に更新されました。
</para>
</item>
<item><itemtext><code>Hash::Util::FieldHash</code></itemtext>
<para>
Upgraded from version 1.03 to 1.04. This fixes a memory leak.
</para>
<para>
1.03 から 1.04 に更新されました。
これはメモリリークを修正しています。
</para>
</item>
<item><itemtext><code>I18N::Collate</code></itemtext>
<para>
Upgraded from version 1.00 to 1.01.
</para>
<para>
1.00 から 1.01 に更新されました。
</para>
</item>
<item><itemtext><code>IO</code></itemtext>
<para>
Upgraded from version 1.23_01 to 1.25.
</para>
<para>
1.23_01 から 1.25 に更新されました。
</para>
<para>
This makes non-blocking mode work on Windows in <code>IO::Socket::INET</code>
[CPAN #43573].
</para>
<para>
これにより、Windows で <code>IO::Socket::INET</code> の非ブロッキングモードが
動作するようになります [CPAN #43573] 。
</para>
</item>
<item><itemtext><code>IO::Compress::*</code></itemtext>
<para>
Upgraded from version 2.008 to 2.020.
</para>
<para>
2.008 から 2.020 に更新されました。
</para>
</item>
<item><itemtext><code>IO::Dir</code></itemtext>
<para>
Upgraded from version 1.06 to 1.07.
</para>
<para>
1.06 から 1.07 に更新されました。
</para>
</item>
<item><itemtext><code>IO::Handle</code></itemtext>
<para>
Upgraded from version 1.27 to 1.28.
</para>
<para>
1.27 から 1.28 に更新されました。
</para>
</item>
<item><itemtext><code>IO::Socket</code></itemtext>
<para>
Upgraded from version 1.30_01 to 1.31.
</para>
<para>
1.30_01 から 1.31 に更新されました。
</para>
</item>
<item><itemtext><code>IO::Zlib</code></itemtext>
<para>
Upgraded from version 1.07 to 1.09.
</para>
<para>
1.07 から 1.09 に更新されました。
</para>
</item>
<item><itemtext><code>IPC::Cmd</code></itemtext>
<para>
Upgraded from version 0.40_1 to 0.46.
</para>
<para>
0.40_1 から 0.46 に更新されました。
</para>
</item>
<item><itemtext><code>IPC::Open3</code></itemtext>
<para>
Upgraded from version 1.02 to 1.04.
</para>
<para>
1.02 から 1.04 に更新されました。
</para>
</item>
<item><itemtext><code>IPC::SysV</code></itemtext>
<para>
Upgraded from version 1.05 to 2.01.
</para>
<para>
1.05 から 2.01 に更新されました。
</para>
</item>
<item><itemtext><code>lib</code></itemtext>
<para>
Upgraded from version 0.5565 to 0.62.
</para>
<para>
0.5565 から 0.62 に更新されました。
</para>
</item>
<item><itemtext><code>List::Util</code></itemtext>
<para>
Upgraded from version 1.19 to 1.21.
</para>
<para>
1.19 から 1.21 に更新されました。
</para>
</item>
<item><itemtext><code>Locale::MakeText</code></itemtext>
<para>
Upgraded from version 1.12 to 1.13.
</para>
<para>
1.12 から 1.13 に更新されました。
</para>
</item>
<item><itemtext><code>Log::Message</code></itemtext>
<para>
Upgraded from version 0.01 to 0.02.
</para>
<para>
0.01 から 0.02 に更新されました。
</para>
</item>
<item><itemtext><code>Math::BigFloat</code></itemtext>
<para>
Upgraded from version 1.59 to 1.60.
</para>
<para>
1.59 から 1.60 に更新されました。
</para>
</item>
<item><itemtext><code>Math::BigInt</code></itemtext>
<para>
Upgraded from version 1.88 to 1.89.
</para>
<para>
1.88 から 1.89 に更新されました。
</para>
</item>
<item><itemtext><code>Math::BigInt::FastCalc</code></itemtext>
<para>
Upgraded from version 0.16 to 0.19.
</para>
<para>
0.16 から 0.19 に更新されました。
</para>
</item>
<item><itemtext><code>Math::BigRat</code></itemtext>
<para>
Upgraded from version 0.21 to 0.22.
</para>
<para>
0.21 から 0.22 に更新されました。
</para>
</item>
<item><itemtext><code>Math::Complex</code></itemtext>
<para>
Upgraded from version 1.37 to 1.56.
</para>
<para>
1.37 から 1.56 に更新されました。
</para>
</item>
<item><itemtext><code>Math::Trig</code></itemtext>
<para>
Upgraded from version 1.04 to 1.20.
</para>
<para>
1.04 から 1.20 に更新されました。
</para>
</item>
<item><itemtext><code>Memoize</code></itemtext>
<para>
Upgraded from version 1.01_02 to 1.01_03 (just a minor documentation
change).
</para>
<para>
1.01_02 から 1.01_03 に更新されました
(単なる軽微な文書の修正です)。
</para>
</item>
<item><itemtext><code>Module::Build</code></itemtext>
<para>
Upgraded from version 0.2808_01 to 0.34_02.
</para>
<para>
0.2808_01 から 0.34_02 に更新されました。
</para>
</item>
<item><itemtext><code>Module::CoreList</code></itemtext>
<para>
Upgraded from version 2.13 to 2.18. This release no longer contains the
<code>%Module::CoreList::patchlevel</code> hash.
</para>
<para>
2.13 から 2.18 に更新されました。
このリリースにはもはや <code>%Module::CoreList::patchlevel</code> ハッシュは
含まれていません。
</para>
</item>
<item><itemtext><code>Module::Load</code></itemtext>
<para>
Upgraded from version 0.12 to 0.16.
</para>
<para>
0.12 から 0.16 に更新されました。
</para>
</item>
<item><itemtext><code>Module::Load::Conditional</code></itemtext>
<para>
Upgraded from version 0.22 to 0.30.
</para>
<para>
0.22 から 0.30 に更新されました。
</para>
</item>
<item><itemtext><code>Module::Loaded</code></itemtext>
<para>
Upgraded from version 0.01 to 0.02.
</para>
<para>
0.01 から 0.02 に更新されました。
</para>
</item>
<item><itemtext><code>Module::Pluggable</code></itemtext>
<para>
Upgraded from version 3.6 to 3.9.
</para>
<para>
3.6 から 3.9 に更新されました。
</para>
</item>
<item><itemtext><code>NDBM_File</code></itemtext>
<para>
Upgraded from version 1.07 to 1.08.
</para>
<para>
1.07 から 1.08 に更新されました。
</para>
</item>
<item><itemtext><code>Net::Ping</code></itemtext>
<para>
Upgraded from version 2.33 to 2.36.
</para>
<para>
2.33 から 2.36 に更新されました。
</para>
</item>
<item><itemtext><code>NEXT</code></itemtext>
<para>
Upgraded from version 0.60_01 to 0.64.
</para>
<para>
0.60_01 から 0.64 に更新されました。
</para>
</item>
<item><itemtext><code>Object::Accessor</code></itemtext>
<para>
Upgraded from version 0.32 to 0.34.
</para>
<para>
0.32 から 0.34 に更新されました。
</para>
</item>
<item><itemtext><code>OS2::REXX</code></itemtext>
<para>
Upgraded from version 1.03 to 1.04.
</para>
<para>
1.03 から 1.04 に更新されました。
</para>
</item>
<item><itemtext><code>Package::Constants</code></itemtext>
<para>
Upgraded from version 0.01 to 0.02.
</para>
<para>
0.01 から 0.02 に更新されました。
</para>
</item>
<item><itemtext><code>PerlIO</code></itemtext>
<para>
Upgraded from version 1.04 to 1.06.
</para>
<para>
1.04 から 1.06 に更新されました。
</para>
</item>
<item><itemtext><code>PerlIO::via</code></itemtext>
<para>
Upgraded from version 0.04 to 0.07.
</para>
<para>
0.04 から 0.07 に更新されました。
</para>
</item>
<item><itemtext><code>Pod::Man</code></itemtext>
<para>
Upgraded from version 2.16 to 2.22.
</para>
<para>
2.16 から 2.22 に更新されました。
</para>
</item>
<item><itemtext><code>Pod::Parser</code></itemtext>
<para>
Upgraded from version 1.35 to 1.37.
</para>
<para>
1.35 から 1.37 に更新されました。
</para>
</item>
<item><itemtext><code>Pod::Simple</code></itemtext>
<para>
Upgraded from version 3.05 to 3.07.
</para>
<para>
3.05 から 3.07 に更新されました。
</para>
</item>
<item><itemtext><code>Pod::Text</code></itemtext>
<para>
Upgraded from version 3.08 to 3.13.
</para>
<para>
3.08 から 3.13 に更新されました。
</para>
</item>
<item><itemtext><code>POSIX</code></itemtext>
<para>
Upgraded from version 1.13 to 1.17.
</para>
<para>
1.13 から 1.17 に更新されました。
</para>
</item>
<item><itemtext><code>Safe</code></itemtext>
<para>
Upgraded from 2.12 to 2.18.
</para>
<para>
2.12 から 2.18 に更新されました。
</para>
</item>
<item><itemtext><code>Scalar::Util</code></itemtext>
<para>
Upgraded from version 1.19 to 1.21.
</para>
<para>
1.19 から 1.21 に更新されました。
</para>
</item>
<item><itemtext><code>SelectSaver</code></itemtext>
<para>
Upgraded from 1.01 to 1.02.
</para>
<para>
1.01 から 1.02 に更新されました。
</para>
</item>
<item><itemtext><code>SelfLoader</code></itemtext>
<para>
Upgraded from 1.11 to 1.17.
</para>
<para>
1.11 から 1.17 に更新されました。
</para>
</item>
<item><itemtext><code>Socket</code></itemtext>
<para>
Upgraded from 1.80 to 1.82.
</para>
<para>
1.80 から 1.82 に更新されました。
</para>
</item>
<item><itemtext><code>Storable</code></itemtext>
<para>
Upgraded from 2.18 to 2.20.
</para>
<para>
2.18 から 2.20 に更新されました。
</para>
</item>
<item><itemtext><code>Switch</code></itemtext>
<para>
Upgraded from version 2.13 to 2.14. Please see <link xref='Deprecations'>/Deprecations</link>.
</para>
<para>
2.13 から 2.14 に更新されました。
<link xref='Deprecations'>/Deprecations</link> を参照してください。
</para>
</item>
<item><itemtext><code>Symbol</code></itemtext>
<para>
Upgraded from version 1.06 to 1.07.
</para>
<para>
1.06 から 1.07 に更新されました。
</para>
</item>
<item><itemtext><code>Sys::Syslog</code></itemtext>
<para>
Upgraded from version 0.22 to 0.27.
</para>
<para>
0.22 から 0.27 に更新されました。
</para>
</item>
<item><itemtext><code>Term::ANSIColor</code></itemtext>
<para>
Upgraded from version 1.12 to 2.00.
</para>
<para>
1.12 から 2.00 に更新されました。
</para>
</item>
<item><itemtext><code>Term::ReadLine</code></itemtext>
<para>
Upgraded from version 1.03 to 1.04.
</para>
<para>
1.03 から 1.04 に更新されました。
</para>
</item>
<item><itemtext><code>Term::UI</code></itemtext>
<para>
Upgraded from version 0.18 to 0.20.
</para>
<para>
0.18 から 0.20 に更新されました。
</para>
</item>
<item><itemtext><code>Test::Harness</code></itemtext>
<para>
Upgraded from version 2.64 to 3.17.
</para>
<para>
2.64 から 3.17 に更新されました。
</para>
<para>
Note that one side-effect of the 2.x to 3.x upgrade is that the
experimental <code>Test::Harness::Straps</code> module (and its supporting
<code>Assert</code>, <code>Iterator</code>, <code>Point</code> and <code>Results</code> modules) have been
removed. If you still need this, then they are available in the
(unmaintained) <code>Test-Harness-Straps</code> distribution on CPAN.
</para>
<para>
Note that 
2.x から 3.x へのアップグレードに対する副作用の一つとして、
実験的な <code>Test::Harness::Straps</code> モジュール (およびそのサポートである
<code>Assert</code>, <code>Iterator</code>, <code>Point</code>, <code>Results</code> モジュール) は
取り除かれました。
もしまだこれらが必要なら、CPAN にある(メンテナンスされていない)
<code>Test-Harness-Straps</code> が利用可能です。
</para>
</item>
<item><itemtext><code>Test::Simple</code></itemtext>
<para>
Upgraded from version 0.72 to 0.92.
</para>
<para>
0.72 から 0.92 に更新されました。
</para>
</item>
<item><itemtext><code>Text::ParseWords</code></itemtext>
<para>
Upgraded from version 3.26 to 3.27.
</para>
<para>
3.26 から 3.27 に更新されました。
</para>
</item>
<item><itemtext><code>Text::Tabs</code></itemtext>
<para>
Upgraded from version 2007.1117 to 2009.0305.
</para>
<para>
2007.1117 から 2009.0305 に更新されました。
</para>
</item>
<item><itemtext><code>Text::Wrap</code></itemtext>
<para>
Upgraded from version 2006.1117 to 2009.0305.
</para>
<para>
2006.1117 から 2009.0305 に更新されました。
</para>
</item>
<item><itemtext><code>Thread::Queue</code></itemtext>
<para>
Upgraded from version 2.00 to 2.11.
</para>
<para>
2.00 から 2.11 に更新されました。
</para>
</item>
<item><itemtext><code>Thread::Semaphore</code></itemtext>
<para>
Upgraded from version 2.01 to 2.09.
</para>
<para>
2.01 から 2.09 に更新されました。
</para>
</item>
<item><itemtext><code>threads</code></itemtext>
<para>
Upgraded from version 1.67 to 1.72.
</para>
<para>
1.67 から 1.72 に更新されました。
</para>
</item>
<item><itemtext><code>threads::shared</code></itemtext>
<para>
Upgraded from version 1.14 to 1.29.
</para>
<para>
1.14 から 1.29 に更新されました。
</para>
</item>
<item><itemtext><code>Tie::RefHash</code></itemtext>
<para>
Upgraded from version 1.37 to 1.38.
</para>
<para>
1.37 から 1.38 に更新されました。
</para>
</item>
<item><itemtext><code>Tie::StdHandle</code></itemtext>
<para>
This has documentation changes, and has been assigned a version for the
first time: version 4.2.
</para>
<para>
これは文書の変更と、初めてバージョン番号 4.2 が割り当てられました。
</para>
</item>
<item><itemtext><code>Time::HiRes</code></itemtext>
<para>
Upgraded from version 1.9711 to 1.9719.
</para>
<para>
1.9711 から 1.9719 に更新されました。
</para>
</item>
<item><itemtext><code>Time::Local</code></itemtext>
<para>
Upgraded from version 1.18 to 1.1901.
</para>
<para>
1.18 から 1.1901 に更新されました。
</para>
</item>
<item><itemtext><code>Time::Piece</code></itemtext>
<para>
Upgraded from version 1.12 to 1.15.
</para>
<para>
1.12 から 1.15 に更新されました。
</para>
</item>
<item><itemtext><code>Unicode::Normalize</code></itemtext>
<para>
Upgraded from version 1.02 to 1.03.
</para>
<para>
1.02 から 1.03 に更新されました。
</para>
</item>
<item><itemtext><code>Unicode::UCD</code></itemtext>
<para>
Upgraded from version 0.25 to 0.27.
</para>
<para>
0.25 から 0.27 に更新されました。
</para>
<para>
<code>charinfo()</code> now works on Unified CJK code points added to later versions
of Unicode.
</para>
<para>
<code>charinfo()</code> は、最近の Unicode で追加された統合 CJK 符号位置に対しても
動作するようになりました。
</para>
<para>
<code>casefold()</code> has new fields returned to provide both a simpler interface
and previously missing information. The old fields are retained for
backwards compatibility. Information about Turkic-specific code points is
now returned.
</para>
<para>
古いフィールドは過去互換性のために残されます。
テュルク諸語符号位置固有の情報も返すようになりました。
</para>
<para>
The documentation has been corrected and expanded.
</para>
<para>
文書が修正および拡張されました。
</para>
</item>
<item><itemtext><code>UNIVERSAL</code></itemtext>
<para>
Upgraded from version 1.04 to 1.05.
</para>
<para>
1.04 から 1.05 に更新されました。
</para>
</item>
<item><itemtext><code>Win32</code></itemtext>
<para>
Upgraded from version 0.34 to 0.39.
</para>
<para>
0.34 から 0.39 に更新されました。
</para>
</item>
<item><itemtext><code>Win32API::File</code></itemtext>
<para>
Upgraded from version 0.1001_01 to 0.1101.
</para>
<para>
0.1001_01 から 0.1101 に更新されました。
</para>
</item>
<item><itemtext><code>XSLoader</code></itemtext>
<para>
Upgraded from version 0.08 to 0.10.
</para>
<para>
0.08 から 0.10 に更新されました。
</para>
</item>
</list>
</sect2>
</sect1>
<sect1>
<title>Utility Changes</title>
<para>
(ツールの変更)
</para>
<list>
<item><itemtext><filename>h2ph</filename></itemtext>
<para>
Now looks in <code>include-fixed</code> too, which is a recent addition to gcc's
search path.
</para>
<para>
最近 gcc の検索パスとして追加された、<code>include-fixed</code> を見るように
なりました。
</para>
</item>
<item><itemtext><filename>h2xs</filename></itemtext>
<para>
No longer incorrectly treats enum values like macros (Daniel Burr).
</para>
<para>
マクロのような enum 値を間違って扱わなくなりました (Daniel Burr)。
</para>
<para>
Now handles C++ style constants (<code>//</code>) properly in enums. (A patch from
Rainer Weikusat was used; Daniel Burr also proposed a similar fix).
</para>
<para>
enum での C++ 形式の定数 (<code>//</code>) を扱うようになりました。
(Rainer Weikusat からのパッチを使いました; Daniel Burr からも似たような
修正を提案されました)。
</para>
</item>
<item><itemtext><filename>perl5db.pl</filename></itemtext>
<para>
<code>LVALUE</code> subroutines now work under the debugger.
</para>
<para>
<code>LVALUE</code> サブルーチンはデバッガからでも動作するようになりました。
</para>
<para>
The debugger now correctly handles proxy constant subroutines, and
subroutine stubs.
</para>
<para>
デバッガは代理定数サブルーチンとサブルーチンスタブを正しく扱えるように
なりました。
</para>
</item>
<item><itemtext><filename>perlthanks</filename></itemtext>
<para>
Perl 5.10.1 adds a new utility <filename>perlthanks</filename>, which is a variant of
<filename>perlbug</filename>, but for sending non-bug-reports to the authors and maintainers
of Perl. Getting nothing but bug reports can become a bit demoralising:
we'll see if this changes things.
</para>
<para>
Perl 5.10.1 に新しいユーティリティである <filename>perlthanks</filename> が追加されました;
これは <filename>perlbug</filename> の変種ですが、Perl の作者とメンテナにバグレポートではない
ものを送ります。
バグレポートでしかないものを受け取るのは少しがっかりさせるものに
なりつつあります: これによって変わるかどうかを見てみます。
</para>
</item>
</list>
</sect1>
<sect1>
<title>New Documentation</title>
<para>
(新しい文書)
</para>
<list>
<item><itemtext><link xref='perlhaiku'>perlhaiku</link></itemtext>
<para>
This contains instructions on how to build perl for the Haiku platform.
</para>
<para>
これには、Haiku プラットフォームで perl をビルドする方法についての
説明が含まれています。
</para>
</item>
<item><itemtext><link xref='perlmroapi'>perlmroapi</link></itemtext>
<para>
This describes the new interface for pluggable Method Resolution Orders.
</para>
<para>
これは、プラグ可能なメソッド解決順序の新しいインターフェースを
記述しています。
</para>
</item>
<item><itemtext><link xref='perlperf'>perlperf</link></itemtext>
<para>
This document, by Richard Foley, provides an introduction to the use of
performance and optimization techniques which can be used with particular
reference to perl programs.
</para>
<para>
この文書は Richard Foley によるもので、perl プログラムの個々の参照で
使えるパフォーマンスと最適化の技術の使用に関する導入を提供します。
</para>
</item>
<item><itemtext><link xref='perlrepository'>perlrepository</link></itemtext>
<para>
This describes how to access the perl source using the <emphasis>git</emphasis> version
control system.
</para>
<para>
これは、<emphasis>git</emphasis> バージョン管理システムを使って perl のソースに
アクセスする方法について記述しています。
</para>
</item>
<item><itemtext><link xref='perlthanks'>perlthanks</link></itemtext>
<para>
This describes the new <filename>perlthanks</filename> utility.
</para>
<para>
これは新しい <filename>perlthanks</filename> ユーティリティについて記述しています。
</para>
</item>
</list>
</sect1>
<sect1>
<title>Changes to Existing Documentation</title>
<para>
(既存の文書の変更)
</para>
<para>
The various large <code>Changes*</code> files (which listed every change made to perl
over the last 18 years) have been removed, and replaced by a small file,
also called <code>Changes</code>, which just explains how that same information may
be extracted from the git version control system.
</para>
<para>
(過去 18 年間にわたって perl に対して行われた全ての変更の一覧である)
様々な大きな <code>Changes*</code> ファイルが取り除かれ、
単に git バージョン制御システムから同じ情報を取り出す方法を説明した
小さいファイル <code>Changes</code> に置き換えられました。
</para>
<para>
The file <filename>Porting/patching.pod</filename> has been deleted, as it mainly described
interacting with the old Perforce-based repository, which is now obsolete.
Information still relevant has been moved to <link xref='perlrepository'>perlrepository</link>.
</para>
<para>
<filename>Porting/patching.pod</filename> ファイルは削除されました; これは主に古い
Perforce を基としたレポジトリとの相互作用について記述していて、
これは古いものです。
まだ関連のある情報は <link xref='perlrepository'>perlrepository</link> に移動しました。
</para>
<para>
<link xref='perlapi'>perlapi</link>, <link xref='perlintern'>perlintern</link>, <link xref='perlmodlib'>perlmodlib</link> and <link xref='perltoc'>perltoc</link> are now all
generated at build time, rather than being shipped as part of the release.
</para>
<para>
<link xref='perlapi'>perlapi</link>, <link xref='perlintern'>perlintern</link>, <link xref='perlmodlib'>perlmodlib</link>, <link xref='perltoc'>perltoc</link> はリリースの
一部としてではなく、全てビルド時に生成されるようになりました。
</para>
</sect1>
<sect1>
<title>Performance Enhancements</title>
<para>
(パフォーマンスの向上)
</para>
<list>
<item><para>
A new internal cache means that <code>isa()</code> will often be faster.
</para>
<para>
新しい内部キャッシュにより、<code>isa()</code> はしばしばより速くなります。
</para>
</item>
<item><para>
Under <code>use locale</code>, the locale-relevant information is now cached on
read-only values, such as the list returned by <code>keys %hash</code>. This makes
operations such as <code>sort keys %hash</code> in the scope of <code>use locale</code> much
faster.
</para>
<para>
<code>use locale</code> の元では、ロケール関係の情報は、<code>keys %hash</code> で
返されるリストのように、読み込み専用値としてキャッシュされるように
なりました。
これによって、<code>use locale</code> での <code>sort keys %hash</code> のような操作が
とても速くなります。
</para>
</item>
<item><para>
Empty <code>DESTROY</code> methods are no longer called.
</para>
<para>
空の <code>DESTROY</code> メソッドはもはや呼び出されなくなります。
</para>
</item>
</list>
</sect1>
<sect1>
<title>Installation and Configuration Improvements</title>
<para>
(インストールと設定の改良)
</para>
<sect2>
<title><filename>ext/</filename> reorganisation</title>
<para>
(<filename>ext/</filename> の再構成)
</para>
<para>
The layout of directories in <filename>ext</filename> has been revised. Specifically, all
extensions are now flat, and at the top level, with <code>/</code> in pathnames
replaced by <code>-</code>, so that <filename>ext/Data/Dumper/</filename> is now <filename>ext/Data-Dumper/</filename>,
etc.  The names of the extensions as specified to <filename>Configure</filename>, and as
reported by <code>%Config::Config</code> under the keys <code>dynamic_ext</code>,
<code>known_extensions</code>, <code>nonxs_ext</code> and <code>static_ext</code> have not changed, and
still use <code>/</code>. Hence this change will not have any affect once perl is
installed. However, <code>Attribute::Handlers</code>, <code>Safe</code> and <code>mro</code> have now
become extensions in their own right, so if you run <filename>Configure</filename> with
options to specify an exact list of extensions to build, you will need to
change it to account for this.
</para>
<para>
<filename>ext</filename> ディレクトリのレイアウトが見直されました。
特に、全てのエクステンションはフラットにトップレベルに置かれ、
パス名中の <code>/</code> は <code>-</code> に置き換えられます; 従って、
<filename>ext/Data/Dumper/</filename> は <filename>ext/Data-Dumper/</filename> のようになります。
エクステンションの名前のうち、<filename>Configure</filename> で指定されるもの、
<code>dynamic_ext</code>, <code>known_extensions</code>, <code>nonxs_ext</code>, <code>static_ext</code> で
<code>%Config::Config</code> によって報告されるものは変更なしで、<code>/</code> を
使い続けます。
従ってこの変更は一旦 perl がインストールされれば何の影響もありません。
しかし、<code>Attribute::Handlers</code>, <code>Safe</code>, <code>mro</code> が新たに独自の権限を持つ
エクステンションとなりましたので、もし <filename>Configure</filename> をビルドする
エクステンションの正確なリストを指定するオプション付きで実行する場合、
これらのために変更する必要があるでしょう。
</para>
<para>
For 5.10.2, it is planned that many dual-life modules will have been moved
from <filename>lib</filename> to <filename>ext</filename>; again this will have no effect on an installed
perl, but will matter if you invoke <filename>Configure</filename> with a pre-canned list of
extensions to build.
</para>
<para>
5.10.2 では、多くの 2 重管理されているモジュールが <filename>lib</filename> から <filename>ext</filename> に
移動することが計画されています;
やはりこれはインストールされた perl には何の変更もありませんが、
もし予め設定されたビルドするエクステンションのリストを使って
<filename>Configure</filename> を起動するときには影響があります。
</para>
</sect2>
<sect2>
<title>Configuration improvements</title>
<para>
(設定の改良)
</para>
<para>
If <code>vendorlib</code> and <code>vendorarch</code> are the same, then they are only added to
<code>@INC</code> once.
</para>
<para>
<code>vendorlib</code> と <code>vendorarch</code> が同じなら、<code>@INC</code> には 1 回だけ
追加されます。
</para>
<para>
<code>$Config{usedevel}</code> and the C-level <code>PERL_USE_DEVEL</code> are now defined if
perl is built with  <code>-Dusedevel</code>.
</para>
<para>
もし perl が <code>-Dusedevel</code> 付きでビルドされたなら、
<code>$Config{usedevel}</code> と C レベルの <code>PERL_USE_DEVEL</code> が定義されるように
なりました。
</para>
<para>
<filename>Configure</filename> will enable use of <code>-fstack-protector</code>, to provide protection
against stack-smashing attacks, if the compiler supports it.
</para>
<para>
<filename>Configure</filename> は、もしコンパイラが対応しているなら、
スタック破壊攻撃に対する防御のために、<code>-fstack-protector</code> の使用を
有効にします。
</para>
<para>
<filename>Configure</filename> will now determine the correct prototypes for re-entrant
functions, and for <code>gconvert</code>, if you are using a C++ compiler rather
than a C compiler.
</para>
<para>
<filename>Configure</filename> は、もし C コンパイラでなく C++ コンパイラを使うなら、
再入可能な関数と <code>gconvert</code> のための正しいプロトタイプを
決定するようになりました。
</para>
<para>
On Unix, if you build from a tree containing a git repository, the
configuration process will note the commit hash you have checked out, for
display in the output of <code>perl -v</code> and <code>perl -V</code>. Unpushed local commits
are automatically added to the list of local patches displayed by
<code>perl -V</code>.
</para>
<para>
Unix では、もし git レポジトリを含むツリーからビルドするなら、
設定プロセスは <code>perl -v</code> と <code>perl -V</code> の出力での表示のために、
チェックアウトしたコミットハッシュを記録します。
プッシュされないローカルのコミットは自動的に
<code>perl -V</code> によって表示されるローカルパッチの一覧に追加されます。
</para>
</sect2>
<sect2>
<title>Compilation improvements</title>
<para>
(コンパイルの改良)
</para>
<para>
As part of the flattening of <filename>ext</filename>, all extensions on all platforms are
built by <filename>make_ext.pl</filename>. This replaces the Unix-specific
<filename>ext/util/make_ext</filename>, VMS-specific <filename>make_ext.com</filename> and Win32-specific
<filename>win32/buildext.pl</filename>.
</para>
<para>
<filename>ext</filename> のフラット化の一部として、全てのプラットフォームの全ての
エクステンションは <filename>make_ext.pl</filename> でビルドされます。
これは Unix 固有の <filename>ext/util/make_ext</filename>、VMS 固有の <filename>make_ext.com</filename>、
Win32 固有の <filename>win32/buildext.pl</filename> を置き換えます。
</para>
</sect2>
<sect2>
<title>Platform Specific Changes</title>
<para>
(プラットフォーム固有の変更)
</para>
<list>
<item><itemtext>AIX</itemtext>
<para>
Removed <filename>libbsd</filename> for AIX 5L and 6.1. Only flock() was used from <filename>libbsd</filename>.
</para>
<para>
AIX 5L と 6.1 のための <filename>libbsd</filename> が取り除かれました。
flock() だけが <filename>libbsd</filename> を使っていました。
</para>
<para>
Removed <filename>libgdbm</filename> for AIX 5L and 6.1. The <filename>libgdbm</filename> is delivered as an
optional package with the AIX Toolbox. Unfortunately the 64 bit version 
is broken.
</para>
<para>
AIX 5L and 6.1 のための <filename>libgdbm</filename> が取り除かれました。
<filename>libgdbm</filename> は AIX Toolbox の追加パッケージとして配布されています。
残念ながら 64 ビット版は壊れています。
</para>
<para>
Hints changes mean that AIX 4.2 should work again.
</para>
<para>
AIX 4.2 で再び動作するようにヒントが変更されました。
</para>
</item>
<item><itemtext>Cygwin</itemtext>
<para>
On Cygwin we now strip the last number from the DLL. This has been the
behaviour in the cygwin.com build for years. The hints files have been
updated.
</para>
<para>
Cygwin においては、DLL から最後の番号を取り除くことにしました。
これは何年間も cygwin.com のビルドの振る舞いとなっています。
ヒントファイルが更新されました。
</para>
</item>
<item><itemtext>FreeBSD</itemtext>
<para>
The hints files now identify the correct threading libraries on FreeBSD 7
and later.
</para>
<para>
ヒントファイルは FreeBSD 7 以降での正しいスレッドライブラリを
識別するようになりました。
</para>
</item>
<item><itemtext>Irix</itemtext>
<para>
We now work around a bizarre preprocessor bug in the Irix 6.5 compiler:
<code>cc -E -</code> unfortunately goes into K&amp;R mode, but <code>cc -E file.c</code> doesn't.
</para>
<para>
Irix 6.5 コンパイラのプリプロセッサにある奇妙なバグを回避するように
なりました:
<code>cc -E -</code> は残念ながら K&amp;R モードになりますが、<code>cc -E file.c</code> では
なりません。
</para>
</item>
<item><itemtext>Haiku</itemtext>
<para>
Patches from the Haiku maintainers have been merged in. Perl should now
build on Haiku.
</para>
<para>
Haiku 管理者からのパッチがマージされました。
Perl は Haiku でビルドできるようになったはずです。
</para>
</item>
<item><itemtext>MirOS BSD</itemtext>
<para>
Perl should now build on MirOS BSD.
</para>
<para>
Perl は MirOS BSD でビルドできるようになったはずです。
</para>
</item>
<item><itemtext>NetBSD</itemtext>
<para>
Hints now supports versions 5.*.
</para>
<para>
ヒントがバージョン 5.* に対応しました。
</para>
</item>
<item><itemtext>Stratus VOS</itemtext>
<para>
Various changes from Stratus have been merged in.
</para>
<para>
Stratus からの様々な変更がマージされました。
</para>
</item>
<item><itemtext>Symbian</itemtext>
<para>
There is now support for Symbian S60 3.2 SDK and S60 5.0 SDK.
</para>
<para>
Symbian S60 3.2 SDK と S60 5.0 SDK に対応するようになりました。
</para>
</item>
<item><itemtext>Win32</itemtext>
<para>
Improved message window handling means that <code>alarm</code> and <code>kill</code> messages
will no longer be dropped under race conditions.
</para>
<para>
メッセージウィンドウの扱いが改良され、<code>alarm</code> と <code>kill</code> のメッセージが
競合状態でも欠落しなくなりました。
</para>
</item>
<item><itemtext>VMS</itemtext>
<para>
Reads from the in-memory temporary files of <code>PerlIO::scalar</code> used to fail
if <code>$/</code> was set to a numeric reference (to indicate record-style reads).
This is now fixed.
</para>
<para>
<code>PerlIO::scalar</code> のメモリ内一時ファイルからの読み込みは、
<code>$/</code> が(レコード風読み込みを示すために)数値リファレンスにセットされていると
失敗していました。
これは修正されました。
</para>
<para>
VMS now supports <code>getgrgid</code>.
</para>
<para>
VMS が <code>getgrgid</code> に対応するようになりました。
</para>
<para>
Many improvements and cleanups have been made to the VMS file name handling
and conversion code.
</para>
<para>
VMS ファイル名の扱いと変換に関するコードに対して多くの改良と整理が
行われました。
</para>
<para>
Enabling the <code>PERL_VMS_POSIX_EXIT</code> logical name now encodes a POSIX exit
status in a VMS condition value for better interaction with GNV's bash
shell and other utilities that depend on POSIX exit values.  See
<link xref='perlvms#$?'>perlvms/&quot;$?&quot;</link> for details.
</para>
<para>
論理名 <code>PERL_VMS_POSIX_EXIT</code> を有効にすることで、VMS 条件値を
POSIX 返りステータスに変換し、GNV の bash シェルやその他の POSIX 返り値に
依存しているユーティリティとの相互作用を高めます。
詳細については <link xref='perlvms#$?'>perlvms/&quot;$?&quot;</link> を参照してください。
</para>
</item>
</list>
</sect2>
</sect1>
<sect1>
<title>Selected Bug Fixes</title>
<para>
(バグ修正の抜粋)
</para>
<list>
<item><para>
5.10.0 inadvertently disabled an optimisation, which caused a measurable
performance drop in list assignment, such as is often used to assign
function parameters from <code>@_</code>. The optimisation has been re-instated, and
the performance regression fixed.
</para>
<para>
5.10.0 では不注意によって最適化が無効化されていたため、
例えば <code>@_</code> から関数の引数への代入でよく使われるような、
リスト代入において目に見えるほどの性能低下を引き起こしていました。
この最適化は再導入され、性能面の退行が修正されました。
</para>
</item>
<item><para>
Fixed memory leak on <code>while (1) { map 1, 1 }</code> [RT #53038].
</para>
<para>
<code>while (1) { map 1, 1 }</code> でのメモリリークが修正されました [RT #53038]。
</para>
</item>
<item><para>
Some potential coredumps in PerlIO fixed [RT #57322,54828].
</para>
<para>
PerlIO でのコアダンプの可能性が修正されました [RT #57322,54828]。
</para>
</item>
<item><para>
The debugger now works with lvalue subroutines.
</para>
<para>
デバッガは左辺値サブルーチンでも動作するようになりました。
</para>
</item>
<item><para>
The debugger's <code>m</code> command was broken on modules that defined constants
[RT #61222].
</para>
<para>
定数が定義されたモジュールでは、デバッガの <code>m</code> コマンドが壊れていました
[RT #61222]。
</para>
</item>
<item><para>
<code>crypt()</code> and string complement could return tainted values for untainted
arguments [RT #59998].
</para>
<para>
<code>crypt()</code> と文字列補完は汚染されていない引数から汚染された値を返すことが
ありました [RT #59998].
</para>
</item>
<item><para>
The <code>-i.suffix</code> command-line switch now recreates the file using
restricted permissions, before changing its mode to match the original
file. This eliminates a potential race condition [RT #60904].
</para>
<para>
<code>-i.suffix</code> コマンドラインオプションは、元のファイルに一致するように
モードを変更する前に、制限されたパーミッションを使ってファイルを
再作成します。
これは競合条件の可能性を除去します [RT #60904]。
</para>
</item>
<item><para>
On some UNIX systems, the value in <code>$?</code> would not have the top bit set
(<code>$? &amp; 128</code>) even if the child core dumped.
</para>
<para>
UNIX システムによっては、<code>$?</code> の値が、子がコアダンプしたときでも
最上位ビット (<code>$? &amp; 128</code>) がされないことがありました。
</para>
</item>
<item><para>
Under some circumstances, $^R could incorrectly become undefined
[RT #57042].
</para>
<para>
状況によっては、$^R が間違って未定義になりました [RT #57042]。
</para>
</item>
<item><para>
(XS) In various hash functions, passing a pre-computed hash to when the
key is UTF-8 might result in an incorrect lookup.
</para>
<para>
(XS) 様々なハッシュ関数において、キーが UTF-8 の時に予め計算された
ハッシュを渡すと、読み出しを間違うことがありました。
</para>
</item>
<item><para>
(XS) Including <filename>XSUB.h</filename> before <filename>perl.h</filename> gave a compile-time error
[RT #57176].
</para>
<para>
(XS) <filename>perl.h</filename> の前に <filename>XSUB.h</filename> をインクルードするとコンパイル時エラーが
発生していました [RT #57176]。
</para>
</item>
<item><para>
<code>$object-&gt;isa('Foo')</code> would report false if the package <code>Foo</code> didn't
exist, even if the object's <code>@ISA</code> contained <code>Foo</code>.
</para>
<para>
<code>$object-&gt;isa('Foo')</code> は、たとえ オブジェクトの <code>@ISA</code> に <code>Foo</code> を
含んでいても、パッケージに <code>Foo</code> が存在していなければ偽を
返すようになりました。
</para>
</item>
<item><para>
Various bugs in the new-to 5.10.0 mro code, triggered by manipulating
<code>@ISA</code>, have been found and fixed.
</para>
<para>
5.10.0 で新規導入された mro コードで、<code>@ISA</code> を操作することによって
引き起こされる様々なバグが発見され、修正されました。
</para>
</item>
<item><para>
Bitwise operations on references could crash the interpreter, e.g.
<code>$x=\$y; $x |= &quot;foo&quot;</code> [RT #54956].
</para>
<para>
<code>$x=\$y; $x |= &quot;foo&quot;</code> のような、リファレンスに対するビット単位演算子が
インタプリタをクラッシュさせることがありました [RT #54956]。
</para>
</item>
<item><para>
Patterns including alternation might be sensitive to the internal UTF-8
representation, e.g.
</para>
<para>
代替を含むパターンが内部 UTF-8 表現に敏感になっていました;
</para>
<verbatim><![CDATA[
my $byte = chr(192);
my $utf8 = chr(192); utf8::upgrade($utf8);
$utf8 =~ /$byte|X}/i;	# failed in 5.10.0
]]></verbatim>
</item>
<item><para>
Within UTF8-encoded Perl source files (i.e. where <code>use utf8</code> is in
effect), double-quoted literal strings could be corrupted where a <code>\xNN</code>,
<code>\0NNN</code> or <code>\N{}</code> is followed by a literal character with ordinal value
greater than 255 [RT #59908].
</para>
<para>
UTF8-エンコードされた (つまり <code>use utf8</code> が有効な) Perl ソースファイル内で、
ダブルクォートされたリテラル文字列が、
could be corrupted where a <code>\xNN</code>, <code>\0NNN</code>, <code>\N{}</code> の後に
その値が 255 を超えるリテラル文字が続いている場合に、壊れることがありました
[RT #59908]。
</para>
</item>
<item><para>
<code>B::Deparse</code> failed to correctly deparse various constructs:
<code>readpipe STRING</code> [RT #62428], <code>CORE::require(STRING)</code> [RT #62488],
<code>sub foo(_)</code> [RT #62484].
</para>
<para>
<code>B::Deparse</code> は様々な構造を逆パースするのに失敗していました:
<code>readpipe STRING</code> [RT #62428], <code>CORE::require(STRING)</code> [RT #62488],
<code>sub foo(_)</code> [RT #62484].
</para>
</item>
<item><para>
Using <code>setpgrp()</code> with no arguments could corrupt the perl stack.
</para>
<para>
<code>setpgrp()</code> を引数なしで使うと、perl のスタックが壊れることがありました。
</para>
</item>
<item><para>
The block form of <code>eval</code> is now specifically trappable by <code>Safe</code> and
<code>ops</code>.  Previously it was erroneously treated like string <code>eval</code>.
</para>
<para>
ブロック形式の <code>eval</code> は特別に <code>Safe</code> と <code>ops</code> でトラップ可能に
なりました。
以前は間違って文字列の <code>eval</code> のように扱われていました。
</para>
</item>
<item><para>
In 5.10.0, the two characters <code>[~</code> were sometimes parsed as the smart
match operator (<code>~~</code>) [RT #63854].
</para>
<para>
5.10.0 では、2 つの文字 <code>[~</code> が時々スマートマッチング演算子
(<code>~~</code>) としてパースされていました [RT #63854]。
</para>
</item>
<item><para>
In 5.10.0, the <code>*</code> quantifier in patterns was sometimes treated as
<code>{0,32767}</code> [RT #60034, #60464]. For example, this match would fail:
</para>
<para>
5.10.0 では、パターン中の <code>*</code> 量指定子が時々
<code>{0,32767}</code> として扱われていました[RT #60034, #60464]。
例えば、以下はマッチングに失敗していました:
</para>
<verbatim><![CDATA[
("ab" x 32768) =~ /^(ab)*$/
]]></verbatim>
</item>
<item><para>
<code>shmget</code> was limited to a 32 bit segment size on a 64 bit OS [RT #63924].
</para>
<para>
<code>shmget</code> は 64 ビット OS で 32 ビットセグメントサイズに制限されていました
[RT #63924]。
</para>
</item>
<item><para>
Using <code>next</code> or <code>last</code> to exit a <code>given</code> block no longer produces a
spurious warning like the following:
</para>
<para>
<code>given</code> ブロックから出るために <code>next</code> や <code>last</code> を使ったときに、
以下のような誤った警告が出力されなくなりました:
</para>
<verbatim><![CDATA[
Exiting given via last at foo.pl line 123
]]></verbatim>
</item>
<item><para>
On Windows, <code>'.\foo'</code> and <code>'..\foo'</code>  were treated differently than
<code>'./foo'</code> and <code>'../foo'</code> by <code>do</code> and <code>require</code> [RT #63492].
</para>
<para>
Windows では、<code>do</code> と <code>require</code> において、<code>'.\foo'</code> と <code>'..\foo'</code> が
<code>'./foo'</code> と <code>'../foo'</code> とは異なって扱われていました [RT #63492]。
</para>
</item>
<item><para>
Assigning a format to a glob could corrupt the format; e.g.:
</para>
<para>
以下のように、フォーマットからグロブへの代入を行うと、
フォーマットが壊れることがありました:
</para>
<verbatim><![CDATA[
*bar=*foo{FORMAT}; # foo format now bad
]]></verbatim>
</item>
<item><para>
Attempting to coerce a typeglob to a string or number could cause an
assertion failure. The correct error message is now generated,
<code>Can't coerce GLOB to <emphasis>$type</emphasis></code>.
</para>
<para>
型グロブを文字列や数値に変換しようとすると、アサーション失敗が
発生することがありました。
正しいエラーメッセージである <code>Can't coerce GLOB to <emphasis>$type</emphasis></code> が
生成されるようになりました。
</para>
</item>
<item><para>
Under <code>use filetest 'access'</code>, <code>-x</code> was using the wrong access mode. This
has been fixed [RT #49003].
</para>
<para>
<code>use filetest 'access'</code> 中に、<code>-x</code> は間違ったアクセスモードを
使っていました。
これは修正されました [RT #49003]。
</para>
</item>
<item><para>
<code>length</code> on a tied scalar that returned a Unicode value would not be
correct the first time. This has been fixed.
</para>
<para>
Unicode 値を返す tie されたスカラに対する <code>length</code> が、初回は
正しく動作していませんでした。
これは修正されました。
</para>
</item>
<item><para>
Using an array <code>tie</code> inside in array <code>tie</code> could SEGV. This has been
fixed. [RT #51636]
</para>
<para>
配列 <code>tie</code> の中で配列 <code>tie</code> を使うと SEGV になることがありました。
これは修正されました。
[RT #51636]
</para>
</item>
<item><para>
A race condition inside <code>PerlIOStdio_close()</code> has been identified and
fixed. This used to cause various threading issues, including SEGVs.
</para>
<para>
<code>PerlIOStdio_close()</code> 内での競合条件が識別され、修正されました。
これは SEGV を含む、様々なスレッドの問題を引き起こしていました。
</para>
</item>
<item><para>
In <code>unpack</code>, the use of <code>()</code> groups in scalar context was internally
placing a list on the interpreter's stack, which manifested in various
ways, including SEGVs.  This is now fixed [RT #50256].
</para>
<para>
<code>unpack</code> で、スカラコンテキストで <code>()</code> グループを使うと、内部的に
インタプリタのスタックにリストが置かれ、SEGV を含む様々な現象が
起きていました。
これは修正されました [RT #50256]。
</para>
</item>
<item><para>
Magic was called twice in <code>substr</code>, <code>\&amp;$x</code>, <code>tie $x, $m</code> and <code>chop</code>.
These have all been fixed.
</para>
<para>
<code>substr</code>, <code>\&amp;$x</code>, <code>tie $x, $m</code>, <code>chop</code> で、マジックが 2 回
呼び出されていました。
これらは全て修正されました。
</para>
</item>
<item><para>
A 5.10.0 optimisation to clear the temporary stack within the implicit
loop of <code>s///ge</code> has been reverted, as it turned out to be the cause of
obscure bugs in seemingly unrelated parts of the interpreter [commit 
ef0d4e17921ee3de].
</para>
<para>
5.10.0 での、<code>s///ge</code> の暗黙のループ中の一時的なスタックをクリアするという
最適化は差し戻されました; これがインタプリタの無関係な部分での
不明瞭なバグの原因となっていたからです [commit ef0d4e17921ee3de]。
</para>
</item>
<item><para>
The line numbers for warnings inside <code>elsif</code> are now correct.
</para>
<para>
<code>elsif</code> 内での警告の行番号が正しくなりました。
</para>
</item>
<item><para>
The <code>..</code> operator now works correctly with ranges whose ends are at or
close to the values of the smallest and largest integers.
</para>
<para>
<code>..</code> 演算子は、どちらかの端が整数の最小値や最大値に近い値でも
正しく動作するようになりました。
</para>
</item>
<item><para>
<code>binmode STDIN, ':raw'</code> could lead to segmentation faults on some platforms.
This has been fixed [RT #54828].
</para>
<para>
<code>binmode STDIN, ':raw'</code> は、プラットフォームによってはセグメンテーション
フォルトを引き起こすことがありました。
これは修正されました [RT #54828]。
</para>
</item>
<item><para>
An off-by-one error meant that <code>index $str, ...</code> was effectively being
executed as <code>index &quot;$str\0&quot;, ...</code>. This has been fixed [RT #53746].
</para>
<para>
<code>index $str, ...</code> が実際には <code>index &quot;$str\0&quot;, ...</code> として実行されるという
境界条件のエラーがありました。
これは修正されました [RT #53746]。
</para>
</item>
<item><para>
Various leaks associated with named captures in regexes have been fixed
[RT #57024].
</para>
<para>
正規表現での名前付き捕捉に関連する様々なリークが修正されました
[RT #57024]。
</para>
</item>
<item><para>
A weak reference to a hash would leak. This was affecting <code>DBI</code>
[RT #56908].
</para>
<para>
ハッシュへの弱いリファレンスがリークを起こすことがありました。
これは <code>DBI</code> に影響を与えていました [RT #56908]。
</para>
</item>
<item><para>
Using (?|) in a regex could cause a segfault [RT #59734].
</para>
<para>
正規表現で (?|) を使うとセグメンテンションフォールトを引き起こすことが
ありました [RT #59734]。
</para>
</item>
<item><para>
Use of a UTF-8 <code>tr//</code> within a closure could cause a segfault [RT #61520].
</para>
<para>
クロージャ内で UTF-8 の <code>tr//</code> を使うとセグメンテンションフォールトを
引き起こすことがありました [RT #61520]。
</para>
</item>
<item><para>
Calling <code>sv_chop()</code> or otherwise upgrading an SV could result in an
unaligned 64-bit access on the SPARC architecture [RT #60574].
</para>
<para>
<code>sv_chop()</code> やその他で SV を昇格させると、SPARC アーキテクチャでは
アライメントされていない 64-ビットアクセスをする場合がありました
[RT #60574]。
</para>
</item>
<item><para>
In the 5.10.0 release, <code>inc_version_list</code> would incorrectly list
<code>5.10.*</code> after <code>5.8.*</code>; this affected the <code>@INC</code> search order
[RT #67628].
</para>
<para>
5.10.0 リリースでは、<code>inc_version_list</code> は間違って <code>5.8.*</code> の後に
<code>5.10.*</code> をリストしていました; これは <code>@INC</code> の検索順に影響を
与えていました [RT #67628]。
</para>
</item>
<item><para>
In 5.10.0, <code>pack &quot;a*&quot;, $tainted_value</code> returned a non-tainted value
[RT #52552].
</para>
<para>
5.10.0 では、<code>pack &quot;a*&quot;, $tainted_value</code> は汚染されていない値を
返していました [RT #52552]。
</para>
</item>
<item><para>
In 5.10.0, <code>printf</code> and <code>sprintf</code> could produce the fatal error
<code>panic: utf8_mg_pos_cache_update</code> when printing UTF-8 strings
[RT #62666].
</para>
<para>
5.10.0 では、<code>printf</code> と <code>sprintf</code> で UTF-8 文字列を表示するときに
致命的エラー <code>panic: utf8_mg_pos_cache_update</code> が出ることがありました
[RT #62666]。
</para>
</item>
<item><para>
In the 5.10.0 release, a dynamically created <code>AUTOLOAD</code> method might be
missed (method cache issue) [RT #60220,60232].
</para>
<para>
5.10.0 リリースでは、動的に作成した <code>AUTOLOAD</code> メソッドが失われることが
ありました (メソッドキャッシュの問題です) [RT #60220,60232]。
</para>
</item>
<item><para>
In the 5.10.0 release, a combination of <code>use feature</code> and <code>//ee</code> could
cause a memory leak [RT #63110].
</para>
<para>
5.10.0 リリースでは、<code>use feature</code> と <code>//ee</code> の組み合わせで
メモリリークを起こすことがありました [RT #63110]。
</para>
</item>
<item><para>
<code>-C</code> on the shebang (<code>#!</code>) line is once more permitted if it is also
specified on the command line. <code>-C</code> on the shebang line used to be a
silent no-op <emphasis>if</emphasis> it was not also on the command line, so perl 5.10.0
disallowed it, which broke some scripts. Now perl checks whether it is
also on the command line and only dies if it is not [RT #67880].
</para>
<para>
shebang (<code>#!</code>) 行 での <code>-C</code> は、コマンドラインでも指定されている場合は
再び許可されるようになりました。
shebang 行での <code>-C</code> は、<emphasis>もし</emphasis> コマンドラインで指定されていなかった
場合には暗黙に no-op となっていました; これは perl 5.10.0 では
不許可となりましたが、これによって動かなくなるスクリプトもありました。
perl はコマンドラインでも指定されているかどうかを調べて、
指定されていないときにだけ die するようになりました [RT #67880]。
</para>
</item>
<item><para>
In 5.10.0, certain types of re-entrant regular expression could crash,
or cause the following assertion failure [RT #60508]:
</para>
<para>
5.10.0 で、ある種の再入可能な正規表現によってクラッシュしたり、
以下のアサーション失敗を出力したりすることがありました [RT #60508]:
</para>
<verbatim><![CDATA[
Assertion rx->sublen >= (s - rx->subbeg) + i failed
]]></verbatim>
</item>
</list>
</sect1>
<sect1>
<title>New or Changed Diagnostics</title>
<para>
(新しい、または変更された診断メッセージ)
</para>
<list>
<item><itemtext><code>panic: sv_chop %s</code></itemtext>
<para>
This new fatal error occurs when the C routine <code>Perl_sv_chop()</code> was
passed a position that is not within the scalar's string buffer. This
could be caused by buggy XS code, and at this point recovery is not
possible.
</para>
<para>
これは、C ルーチン <code>Perl_sv_chop()</code> に、スカラの文字列バッファ内でない
位置が渡された時に発生する、新しい致命的エラーです。
これはバグっぽい XS コードによって引き起こされ、この時点では
回復は不可能です。
</para>
</item>
<item><itemtext><code>Can't locate package %s for the parents of %s</code></itemtext>
<para>
This warning has been removed. In general, it only got produced in
conjunction with other warnings, and removing it allowed an ISA lookup
optimisation to be added.
</para>
<para>
この警告は取り除かれました。
一般的に、これは他の警告と同時にのみ生成され、これを取り除くことによって
ISA 読み出しの最適化が追加できるようになりました。
</para>
</item>
<item><itemtext><code>v-string in use/require is non-portable</code></itemtext>
<para>
This warning has been removed.
</para>
<para>
この警告は取り除かれました。
</para>
</item>
<item><itemtext><code>Deep recursion on subroutine &quot;%s&quot;</code></itemtext>
<para>
It is now possible to change the depth threshold for this warning from the
default of 100, by recompiling the <filename>perl</filename> binary, setting the C
pre-processor macro <code>PERL_SUB_DEPTH_WARN</code> to the desired value.
</para>
<para>
この警告が出る深さの閾値は、デフォルトでは 100 ですが、C プリプロセッサ
マクロ <code>PERL_SUB_DEPTH_WARN</code> を好みの値に変えて <filename>perl</filename> バイナリを
再コンパイルすることによって、変更できるようになりました。
</para>
</item>
</list>
</sect1>
<sect1>
<title>Changed Internals</title>
<para>
(内部の変更)
</para>
<list>
<item><para>
The J.R.R. Tolkien quotes at the head of C source file have been checked and
proper citations added, thanks to a patch from Tom Christiansen.
</para>
<para>
C ソースファイルの先頭にある J.R.R. Tolkien の引用文がチェックされ、
適切な言及が追加されました; Tom Christiansen からのパッチに感謝します。
</para>
</item>
<item><para>
<code>vcroak()</code> now accepts a null first argument. In addition, a full audit
was made of the &quot;not NULL&quot; compiler annotations, and those for several
other internal functions were corrected.
</para>
<para>
<code>vcroak()</code> は最初の引数として null も受け付けるようになりました。
さらに、「非 NULL」に関するコンパイラ注釈の完全な監査が行われ、
その他のいくつかの内部関数が修正されました。
</para>
</item>
<item><para>
New macros <code>dSAVEDERRNO</code>, <code>dSAVE_ERRNO</code>, <code>SAVE_ERRNO</code>, <code>RESTORE_ERRNO</code>
have been added to formalise the temporary saving of the <code>errno</code>
variable.
</para>
<para>
<code>errno</code> 変数を一時的に補完することを形式化するための、
<code>dSAVEDERRNO</code>, <code>dSAVE_ERRNO</code>, <code>SAVE_ERRNO</code>, <code>RESTORE_ERRNO</code> という
新しいマクロが追加されました。
</para>
</item>
<item><para>
The function <code>Perl_sv_insert_flags</code> has been added to augment
<code>Perl_sv_insert</code>.
</para>
<para>
<code>Perl_sv_insert</code> 関数を拡大するために、<code>Perl_sv_insert_flags</code> 関数が
追加されました。
</para>
</item>
<item><para>
The function <code>Perl_newSV_type(type)</code> has been added, equivalent to
<code>Perl_newSV()</code> followed by <code>Perl_sv_upgrade(type)</code>.
</para>
<para>
<code>Perl_newSV()</code> の後 <code>Perl_sv_upgrade(type)</code> を実行するのと等価な、
<code>Perl_newSV_type(type)</code> 関数が追加されました。
</para>
</item>
<item><para>
The function <code>Perl_newSVpvn_flags()</code> has been added, equivalent to
<code>Perl_newSVpvn()</code> and then performing the action relevant to the flag.
</para>
<para>
<code>Perl_newSVpvn_flags()</code> 関数が追加されました; これは <code>Perl_newSVpvn()</code> と
等価で、それからフラグに関連する動作を行います。
</para>
<para>
Two flag bits are currently supported.
</para>
<para>
現在のところ二つのフラグビットに対応しています。
</para>
</item>
<list>
<item><itemtext><code>SVf_UTF8</code></itemtext>
<para>
This will call <code>SvUTF8_on()</code> for you. (Note that this does not convert an
sequence of ISO 8859-1 characters to UTF-8). A wrapper, <code>newSVpvn_utf8()</code>
is available for this.
</para>
<para>
これはあなたのために <code>SvUTF8_on()</code> を呼び出します。
(これは ISO 8859-1 文字のシーケンスを UTF-8 に変換しないことに
注意してください。)
これのためのラッパである <code>newSVpvn_utf8()</code> が利用可能です。
</para>
</item>
<item><itemtext><code>SVs_TEMP</code></itemtext>
<para>
Call <code>sv_2mortal()</code> on the new SV.
</para>
<para>
新しい SV に対して <code>sv_2mortal()</code> を呼び出します。
</para>
</item>
</list>
<para>
There is also a wrapper that takes constant strings, <code>newSVpvs_flags()</code>.
</para>
<para>
定数文字列を取るラッパである <code>newSVpvs_flags()</code> もあります。
</para>
<item><para>
The function <code>Perl_croak_xs_usage</code> has been added as a wrapper to
<code>Perl_croak</code>.
</para>
<para>
<code>Perl_croak</code> へのラッパとして、<code>Perl_croak_xs_usage</code> 関数が追加されました。
</para>
</item>
<item><para>
The functions <code>PerlIO_find_layer</code> and <code>PerlIO_list_alloc</code> are now
exported.
</para>
<para>
<code>PerlIO_find_layer</code> 関数と <code>PerlIO_list_alloc</code> 関数が
エクスポートされるようになりました。
</para>
</item>
<item><para>
<code>PL_na</code> has been exterminated from the core code, replaced by local STRLEN
temporaries, or <code>*_nolen()</code> calls. Either approach is faster than <code>PL_na</code>,
which is a pointer deference into the interpreter structure under ithreads,
and a global variable otherwise.
</para>
<para>
<code>PL_na</code> はコアコードから全て取り除かれ、ローカルな STRLEN テンポラリか
<code>*_nolen()</code> 呼び出しに置き換えられました。
どちらの手法も、ithreads ではインタプリタ構造体へ、さもなければ
グローバル変数へポインタを守る <code>PL_na</code> よりも高速です。
</para>
</item>
<item><para>
<code>Perl_mg_free()</code> used to leave freed memory accessible via SvMAGIC() on
the scalar. It now updates the linked list to remove each piece of magic
as it is freed.
</para>
<para>
<code>Perl_mg_free()</code> は、スカラでの SvMAGIC() 経由でアクセスできる
開放されたメモリをそのままにしていました。
それぞれのマジックのかけらが開放されるごとに削除されるように、
リンクリストが更新されるようになりました。
</para>
</item>
<item><para>
Under ithreads, the regex in <code>PL_reg_curpm</code> is now reference counted. This
eliminates a lot of hackish workarounds to cope with it not being reference
counted.
</para>
<para>
ithreads において、<code>PL_reg_curpm</code> 内の正規表現は参照カウントを
行うようにありました。
これにより、参照カウントを行っていないことによる多くのハックっぽい
回避方法が不要になります。
</para>
</item>
<item><para>
<code>Perl_mg_magical()</code> would sometimes incorrectly turn on <code>SvRMAGICAL()</code>.
This has been fixed.
</para>
<para>
<code>Perl_mg_magical()</code> は時々間違って <code>SvRMAGICAL()</code> を作動させていました。
これは修正されました。
</para>
</item>
<item><para>
The <emphasis>public</emphasis> IV and NV flags are now not set if the string value has
trailing &quot;garbage&quot;. This behaviour is consistent with not setting the
public IV or NV flags if the value is out of range for the type.
</para>
<para>
IV と NV の <emphasis>public</emphasis> フラグは、もし文字列値の末尾に「ゴミ」が
ついている場合はセットされなくなりました。
この振る舞いは、値が型の範囲を超えているときに IV や NV の
public フラグがセットされないことと一貫しています。
</para>
</item>
<item><para>
SV allocation tracing has been added to the diagnostics enabled by <code>-Dm</code>.
The tracing can alternatively output via the <code>PERL_MEM_LOG</code> mechanism, if
that was enabled when the <filename>perl</filename> binary was compiled.
</para>
<para>
<code>-Dm</code> で有効になる診断に、SV 割り当てトレースが追加されました。
トレースは、もし <filename>perl</filename> バイナリがコンパイルされたときに
<code>PERL_MEM_LOG</code> 機構が有効になっていた場合には、これを通しても出力されます。
</para>
</item>
<item><para>
Uses of <code>Nullav</code>, <code>Nullcv</code>, <code>Nullhv</code>, <code>Nullop</code>, <code>Nullsv</code> etc have been
replaced by <code>NULL</code> in the core code, and non-dual-life modules, as <code>NULL</code>
is clearer to those unfamiliar with the core code.
</para>
<para>
<code>Nullav</code>, <code>Nullcv</code>, <code>Nullhv</code>, <code>Nullop</code>, <code>Nullsv</code> などは、
コアコードおよび 2 重管理されていないモジュールでは
<code>NULL</code> に置き換えられました; <code>NULL</code> はコアコードに親しんでいなくても
より明確だからです。
</para>
</item>
<item><para>
A macro <code>MUTABLE_PTR(p)</code> has been added, which on (non-pedantic) gcc will
not cast away <code>const</code>, returning a <code>void *</code>. Macros <code>MUTABLE_SV(av)</code>,
<code>MUTABLE_SV(cv)</code> etc build on this, casting to <code>AV *</code> etc without
casting away <code>const</code>. This allows proper compile-time auditing of
<code>const</code> correctness in the core, and helped picked up some errors (now
fixed).
</para>
<para>
<code>MUTABLE_PTR(p)</code> マクロが追加されました; これは (pedantic でない) gcc では
<code>const</code> 状態を捨てずに、<code>void *</code> を返します。
<code>MUTABLE_SV(av)</code>, <code>MUTABLE_SV(cv)</code> などのマクロはこれを使って
作成され、<code>const</code> 状態を捨てることなく <code>AV *</code> などにキャストします。
これにより <code>const</code> の正当性の適切なコンパイル時の監査が可能になり、
いくつかのエラーの発見に役立ちました(これらは修正されました)。
</para>
</item>
<item><para>
Macros <code>mPUSHs()</code> and <code>mXPUSHs()</code> have been added, for pushing SVs on the
stack and mortalizing them.
</para>
<para>
SV をスタックにプッシュし、それを揮発化させるための、
<code>mPUSHs()</code> と <code>mXPUSHs()</code> のマクロが追加されました。
</para>
</item>
<item><para>
Use of the private structure <code>mro_meta</code> has changed slightly. Nothing
outside the core should be accessing this directly anyway.
</para>
<para>
プライベート構造体 <code>mro_meta</code> の使用が少し変更されました。
どちらにしろ、コアの外側からこれにアクセスすることは出来ません。
</para>
</item>
<item><para>
A new tool, <code>Porting/expand-macro.pl</code> has been added, that allows you
to view how a C preprocessor macro would be expanded when compiled.
This is handy when trying to decode the macro hell that is the perl
guts.
</para>
<para>
新しいツールである <code>Porting/expand-macro.pl</code> が追加され、
コンパイル時に C プリプロセッサマクロがどのように展開されるかを見られます。
これは perl の内部でマクロを展開しようとする時に便利です。
</para>
</item>
</list>
</sect1>
<sect1>
<title>New Tests</title>
<para>
(新しいテスト)
</para>
<para>
Many modules updated from CPAN incorporate new tests.
</para>
<para>
CPAN から更新された多くのモジュールに新しいテストが組み込まれました。
</para>
<para>
Several tests that have the potential to hang forever if they fail now
incorporate a &quot;watchdog&quot; functionality that will kill them after a timeout,
which helps ensure that <code>make test</code> and <code>make test_harness</code> run to
completion automatically. (Jerry Hedden).
</para>
<para>
いくつかのテストは、テストが時間切れになった後に kill することで
<code>make test</code> と <code>make test_harness</code> が自動的に実行を終了することを
確実にするために組み込まれた「番犬」機能で失敗すると、
ハングアップしてしまう可能性がありました (Jerry Hedden)。
</para>
<para>
Some core-specific tests have been added:
</para>
<para>
いくつかのコア固有のテストが追加されました:
</para>
<list>
<item><itemtext>t/comp/retainedlines.t</itemtext>
<para>
Check that the debugger can retain source lines from <code>eval</code>.
</para>
<para>
デバッガが <code>eval</code> からソース行を得られるかをチェックします。
</para>
</item>
<item><itemtext>t/io/perlio_fail.t</itemtext>
<para>
Check that bad layers fail.
</para>
<para>
間違った層が失敗するかをチェックします。
</para>
</item>
<item><itemtext>t/io/perlio_leaks.t</itemtext>
<para>
Check that PerlIO layers are not leaking.
</para>
<para>
PerlIO 層がリークしていないかをチェックします。
</para>
</item>
<item><itemtext>t/io/perlio_open.t</itemtext>
<para>
Check that certain special forms of open work.
</para>
<para>
open のある種の特殊な形式が動作するかをチェックします。
</para>
</item>
<item><itemtext>t/io/perlio.t</itemtext>
<para>
General PerlIO tests.
</para>
<para>
PerlIO を全体的にテストします。
</para>
</item>
<item><itemtext>t/io/pvbm.t</itemtext>
<para>
Check that there is no unexpected interaction between the internal types
<code>PVBM</code> and <code>PVGV</code>.
</para>
<para>
内部型 <code>PVBM</code> と <code>PVGV</code> の間で想定外の相互作用がないことをチェックします。
</para>
</item>
<item><itemtext>t/mro/package_aliases.t</itemtext>
<para>
Check that mro works properly in the presence of aliased packages.
</para>
<para>
エイリアス化されたパッケージが存在したときに MRO が適切に動作するかを
チェックします。
</para>
</item>
<item><itemtext>t/op/dbm.t</itemtext>
<para>
Tests for <code>dbmopen</code> and <code>dbmclose</code>.
</para>
<para>
<code>dbmopen</code> と <code>dbmclose</code> をテストします。
</para>
</item>
<item><itemtext>t/op/index_thr.t</itemtext>
<para>
Tests for the interaction of <code>index</code> and threads.
</para>
<para>
<code>index</code> とスレッドの相互作用をテストします。
</para>
</item>
<item><itemtext>t/op/pat_thr.t</itemtext>
<para>
Tests for the interaction of esoteric patterns and threads.
</para>
<para>
難解なパターンとスレッドの相互作用をテストします。
</para>
</item>
<item><itemtext>t/op/qr_gc.t</itemtext>
<para>
Test that <code>qr</code> doesn't leak.
</para>
<para>
<code>qr</code> がリークしていないことをテストします。
</para>
</item>
<item><itemtext>t/op/reg_email_thr.t</itemtext>
<para>
Tests for the interaction of regex recursion and threads.
</para>
<para>
regex 再帰とスレッドの相互作用をテストします。
</para>
</item>
<item><itemtext>t/op/regexp_qr_embed_thr.t</itemtext>
<para>
Tests for the interaction of patterns with embedded <code>qr//</code> and threads.
</para>
<para>
組み込みの <code>qr//</code> があるパターンとスレッドの相互作用をテストします。
</para>
</item>
<item><itemtext>t/op/regexp_unicode_prop.t</itemtext>
<para>
Tests for Unicode properties in regular expressions.
</para>
<para>
正規表現中の Unicode 特性をテストします。
</para>
</item>
<item><itemtext>t/op/regexp_unicode_prop_thr.t</itemtext>
<para>
Tests for the interaction of Unicode properties and threads.
</para>
<para>
Unicode 特性とスレッドの相互作用をテストします。
</para>
</item>
<item><itemtext>t/op/reg_nc_tie.t</itemtext>
<para>
Test the tied methods of <code>Tie::Hash::NamedCapture</code>.
</para>
<para>
<code>Tie::Hash::NamedCapture</code> の tie されたメソッドをテストします。
</para>
</item>
<item><itemtext>t/op/reg_posixcc.t</itemtext>
<para>
Check that POSIX character classes behave consistently.
</para>
<para>
POSIX 文字クラスが一貫性を持って振る舞うかをチェックします。
</para>
</item>
<item><itemtext>t/op/re.t</itemtext>
<para>
Check that exportable <code>re</code> functions in <filename>universal.c</filename> work.
</para>
<para>
<filename>universal.c</filename> のエクスポート可能な <code>re</code> 関数が動作するかをチェックします。
</para>
</item>
<item><itemtext>t/op/setpgrpstack.t</itemtext>
<para>
Check that <code>setpgrp</code> works.
</para>
<para>
<code>setpgrp</code> が動作するかをチェックします。
</para>
</item>
<item><itemtext>t/op/substr_thr.t</itemtext>
<para>
Tests for the interaction of <code>substr</code> and threads.
</para>
<para>
<code>substr</code> とスレッドの相互作用をテストします。
</para>
</item>
<item><itemtext>t/op/upgrade.t</itemtext>
<para>
Check that upgrading and assigning scalars works.
</para>
<para>
スカラの昇格と代入が動作するかをチェックします。
</para>
</item>
<item><itemtext>t/uni/lex_utf8.t</itemtext>
<para>
Check that Unicode in the lexer works.
</para>
<para>
文法解析器中の Unicode が動作するかをチェックします。
</para>
</item>
<item><itemtext>t/uni/tie.t</itemtext>
<para>
Check that Unicode and <code>tie</code> work.
</para>
<para>
Unicode と <code>tie</code> が動作するかをチェックします。
</para>
</item>
</list>
</sect1>
<sect1>
<title>Known Problems</title>
<para>
(既知の問題)
</para>
<para>
This is a list of some significant unfixed bugs, which are regressions
from either 5.10.0 or 5.8.x.
</para>
<para>
以下はいくつかの重要な未修正のバグの一覧で、5.10.0 か 5.8.x からの
退行です。
</para>
<list>
<item><para>
<code>List::Util::first</code> misbehaves in the presence of a lexical <code>$_</code>
(typically introduced by <code>my $_</code> or implicitly by <code>given</code>). The variable
which gets set for each iteration is the package variable <code>$_</code>, not the
lexical <code>$_</code> [RT #67694].
</para>
<para>
<code>List::Util::first</code> は (典型的には <code>my $_</code> や <code>given</code> による)
レキシカルな <code>$_</code> の存在について振る舞いを間違えていました。
each の反復で設定される変数はレキシカルな <code>$_</code> ではなくパッケージ変数の
<code>$_</code> です [RT #67694]。
</para>
<para>
A similar issue may occur in other modules that provide functions which
take a block as their first argument, like
</para>
<para>
同様の問題は、以下のように、最初の引数としてブロックを取る関数を提供している
その他のモジュールにも発生するかもしれません。
</para>
<verbatim><![CDATA[
foo { ... $_ ...} list
]]></verbatim>
</item>
<item><para>
The <code>charnames</code> pragma may generate a run-time error when a regex is
interpolated [RT #56444]:
</para>
<para>
<code>charnames</code> プラグマは、正規表現が変数展開されたときに実行時エラーを
出すことがあります [RT #56444]:
</para>
<verbatim><![CDATA[
use charnames ':full';
my $r1 = qr/\N{THAI CHARACTER SARA I}/;
"foo" =~ $r1;    # okay
"foo" =~ /$r1+/; # runtime error
]]></verbatim>
<para>
A workaround is to generate the character outside of the regex:
</para>
<para>
回避方法は、正規表現の外側で文字を生成することです:
</para>
<verbatim><![CDATA[
my $a = "\N{THAI CHARACTER SARA I}";
my $r1 = qr/$a/;
]]></verbatim>
</item>
<item><para>
Some regexes may run much more slowly when run in a child thread compared
with the thread the pattern was compiled into [RT #55600].
</para>
<para>
正規表現によっては、パターンをコンパイルしたスレッドで実行するのに比べて
子スレッドではとても遅くなることがあります [RT #55600]。
</para>
</item>
</list>
</sect1>
<sect1>
<title>Deprecations</title>
<para>
(非推奨)
</para>
<para>
The following items are now deprecated.
</para>
<para>
以下のものは非推奨となりました。
</para>
<list>
<item><para>
<code>Switch</code> is buggy and should be avoided. From perl 5.11.0 onwards, it is
intended that any use of the core version of this module will emit a
warning, and that the module will eventually be removed from the core
(probably in perl 5.14.0). See <link xref='perlsyn#Switch_statements'>perlsyn/&quot;Switch statements&quot;</link> for its
replacement.
</para>
<para>
<code>Switch</code> はバグが多いので避けるべきです。
perl 5.11.0 以降、このモジュールのコアバージョンを使うと警告が出力され、
最終的には(おそらく perl 5.14.0 で)コアから取り除かれます。
代替品については <link xref='perlsyn#Switch_statements'>perlsyn/&quot;Switch statements&quot;</link> を参照してください。
</para>
</item>
<item><para>
<code>suidperl</code> will be removed in 5.12.0. This provides a mechanism to
emulate setuid permission bits on systems that don't support it properly.
</para>
<para>
<code>suidperl</code> は 5.12.0 で取り除かれます。
これは setuid 許可ビットを正しく扱えないシステムで、これをエミュレートする
機構を提供しています。
</para>
</item>
</list>
</sect1>
<sect1>
<title>Acknowledgements</title>
<para>
(謝辞)
</para>
<para>
Some of the work in this release was funded by a TPF grant.
</para>
<para>
このリリースの作業の一部は TRF の助成金を受けています。
</para>
<para>
Nicholas Clark officially retired from maintenance pumpking duty at the
end of 2008; however in reality he has put much effort in since then to
help get 5.10.1 into a fit state to be released, including writing a
considerable chunk of this perldelta.
</para>
<para>
Nicholas Clark は 2008 年末をもって公式にメンテナンス pumpking の役目から
引退しました; しかし、実際のところ彼はこの perldelta のかなり部分を
書くことを含む、5.10.1 をリリースできる状態にするために多くの
努力をしています。
</para>
<para>
Steffen Mueller and David Golden in particular helped getting CPAN modules
polished and synchronised with their in-core equivalents.
</para>
<para>
特に Steffen Mueller と David Golden は CPAN モジュールを磨き上げて
コア内部の等価物と同期させることを助けました。
</para>
<para>
Craig Berry was tireless in getting maint to run under VMS, no matter how
many times we broke it for him.
</para>
<para>
Craig Berry は、何度私たちが中断させようとしても、飽きることなく
VMS で動作するように管理しつつけました。
</para>
<para>
The other core committers contributed most of the changes, and applied most
of the patches sent in by the hundreds of contributors listed in <filename>AUTHORS</filename>.
</para>
<para>
その他のコアコミッタはほとんどの変更を提供し、<filename>AUTHORS</filename> に上げられている
数百の貢献者によって送られたパッチのほとんどを適用しました。
</para>
<para>
(Sorry to all the people I haven't mentioned by name).
</para>
<para>
(ここで名前を触れなかった全ての人々に陳謝します)。
</para>
<para>
Finally, thanks to Larry Wall, without whom none of this would be
necessary.
</para>
<para>
最後に、Larry Wall に感謝します; 彼がいなければこれら全ては不要でした。
</para>
</sect1>
<sect1>
<title>Reporting Bugs</title>
<para>
(バグ報告)
</para>
<para>
If you find what you think is a bug, you might check the articles
recently posted to the comp.lang.perl.misc newsgroup and the perl
bug database at <xlink uri='http://rt.perl.org/perlbug/'>http://rt.perl.org/perlbug/</xlink> .  There may also be
information at <xlink uri='http://www.perl.org/'>http://www.perl.org/</xlink> , the Perl Home Page.
</para>
<para>
もしバグと思われるものを見つけたら、comp.lang.perl.misc ニュースグループに
最近投稿された記事や <xlink uri='http://rt.perl.org/perlbug/'>http://rt.perl.org/perlbug/</xlink> にある perl バグ
データベースを確認してください。
Perl ホームページ、<xlink uri='http://www.perl.org'>http://www.perl.org</xlink> にも情報があります。
</para>
<para>
If you believe you have an unreported bug, please run the <strong>perlbug</strong>
program included with your release.  Be sure to trim your bug down
to a tiny but sufficient test case.  Your bug report, along with the
output of <code>perl -V</code>, will be sent off to perlbug@perl.org to be
analysed by the Perl porting team.
</para>
<para>
もしまだ報告されていないバグだと確信したら、そのリリースに含まれている
perlbug プログラムをを実行してください。
バグの再現スクリプトを十分小さく、しかし有効なコードに切りつめることを
意識してください。バグレポートは perl -V の出力と一緒に
perlbug@perl.org に送られ Perl porting チームによって解析されます。
</para>
<para>
If the bug you are reporting has security implications, which make it
inappropriate to send to a publicly archived mailing list, then please send
it to perl5-security-report@perl.org. This points to a closed subscription
unarchived mailing list, which includes all the core committers, who be able
to help assess the impact of issues, figure out a resolution, and help
co-ordinate the release of patches to mitigate or fix the problem across all
platforms on which Perl is supported. Please only use this address for
security issues in the Perl core, not for modules independently
distributed on CPAN.
</para>
<para>
もし報告しようとしているバグがセキュリティに関するもので、公開されている
メーリングリストに送るのが不適切なものなら、
perl5-security-report@perl.org に送ってください。
このアドレスは、問題の影響を評価し、解決法を見つけ、Perl が対応している
全てのプラットフォームで問題を軽減または解決するパッチをリリースするのを
助けることが出来る、全てのコアコミッタが参加している非公開の
メーリングリストになっています。
このアドレスは、独自に CPAN で配布されているモジュールではなく、
Perl コアのセキュリティ問題だけに使ってください。
</para>
</sect1>
<sect1>
<title>SEE ALSO</title>
<para>
The <filename>Changes</filename> file for an explanation of how to view exhaustive details
on what changed.
</para>
<para>
<filename>Changes</filename> ファイルに変更点の完全な詳細を見る方法についての説明があります。
</para>
<para>
The <filename>INSTALL</filename> file for how to build Perl.
</para>
<para>
<filename>INSTALL</filename> ファイルに Perl のビルド方法があります。
</para>
<para>
The <filename>README</filename> file for general stuff.
</para>
<para>
<filename>README</filename> ファイルに一般的なことがあります。
</para>
<para>
The <filename>Artistic</filename> and <filename>Copying</filename> files for copyright information.
</para>
<para>
<filename>Artistic</filename> 及び <filename>Copying</filename> ファイルに著作権情報があります。
</para>
<para>
Translate: Kentaro Shirakata &lt;argrath@ub32.org&gt;
License: Same as Perl
</para>
</sect1>
</pod>
