Kentaro Shirakata
argra****@users*****
2006年 4月 15日 (土) 19:25:03 JST
Index: docs/perl/5.8.4/perl583delta.pod diff -u docs/perl/5.8.4/perl583delta.pod:1.1 docs/perl/5.8.4/perl583delta.pod:1.2 --- docs/perl/5.8.4/perl583delta.pod:1.1 Fri Apr 14 04:45:35 2006 +++ docs/perl/5.8.4/perl583delta.pod Sat Apr 15 19:25:03 2006 @@ -8,7 +8,7 @@ =end original -perl v5.8.3 での変更点 +perl583delta - perl v5.8.3 での変更点 =head1 DESCRIPTION @@ -58,12 +58,14 @@ =end original +tie されたハッシュで C<SCALAR> メソッドが利用可能になりました。 +tie されたハッシュが以下のようにスカラコンテキストで使われたときに +呼び出されます: if (%tied_hash) { ... } - =begin original The old behaviour was that %tied_hash would return whatever would have been @@ -76,6 +78,13 @@ =end original +以前の振る舞いでは、%tied_hash はハッシュが tie される前にハッシュが +返すはずの値(つまり普通は 0)を返していました。 +新しい振る舞いは、SCALAR メソッドがない場合は C<each> 繰り返しの途中では +真を返し、さもなければ(引き続く C<each> が FIRSTKEY を呼び出すことで +始まることを確実にするために)ハッシュが空かどうかどうかを調べるために +FIRSTKEY が呼び出されます。 +完全な詳細と問題点については L<perltie/SCALAR> を参照してください。 =head1 Modules and Pragmata @@ -104,6 +113,8 @@ =end original +C<again> 関数は異なったディレクトリにあるモジュールが、FindBin を使いたい +場合の問題を解決するために提供されます。 =item List::Util @@ -113,6 +124,7 @@ =end original +読み込み専用の値へのリファレンスを弱くすることができるようになりました。 =item Math::BigInt @@ -136,6 +148,8 @@ =end original +C<cond_wait> は新しい 2 引数の形を持つようになりました。 +C<cond_timedwait> が追加されました。 =back @@ -150,6 +164,8 @@ =end original +C<find2perl> はデフォルトのアクションとして C<-print> を +仮定するようになりました。以前は明示的に指定する必要がありました。 =begin original @@ -159,6 +175,9 @@ =end original +新しいツールである C<prove> で、個々の退行テストをコマンドラインから +簡単に実行できます。C<prove> は Test::Harness の一部で、 +以前のバージョンの Perl のユーザーは CPAN からインストールできます。 =head1 New Documentation @@ -170,6 +189,7 @@ =end original +より標準的な man ページが出力されるように、ドキュメントが見直されました。 =begin original @@ -178,18 +198,25 @@ =end original +特殊コードブロック(BEGIN, CHECK, INIT, END) のドキュメントが +改良されました。 =head1 Installation and Configuration Improvements +(インストールと設定の改良) + =begin original Perl now builds on OpenVMS I64 =end original +OpenVMS I64 でビルドできるようになりました。 =head1 Selected Bug Fixes +(バグ修正の抜粋) + =begin original Using substr() on a UTF8 string could cause subsequent accesses on that @@ -198,6 +225,10 @@ =end original +UTF8 文字列に substr() を使うことでその後その文字列にアクセスすると +ゴミを返すことがありました。 +これはキャッシュされた UTF8 のオフセットが正しくなかったが原因で、 +修正されました。 =begin original @@ -208,6 +239,10 @@ =end original +join() 文が以前に処理された UTF8 データを持つ 8 bit のデータを処理して +いた場合、その join() でゴミを返すことがありました。 +これはその文のテンポラリワークスペースのフラグが正しく +リセットされていないのが原因でした。これは修正されました。 =begin original @@ -215,6 +250,7 @@ =end original +C<$a .. $b> は $a か $b が C<undef> でも予測どおりに動作するようになりました。 =begin original @@ -222,6 +258,7 @@ =end original +tie されたハッシュに Unicode キーを使っても正しく動作するようになりました。 =begin original @@ -231,6 +268,10 @@ =end original +$^E を読むときに $! が保存されるようになりました。 +以前は、$^E を実装していた C コードが C<error> を保存していなかったので、 +$^E を読むことで C<errno> が変更されることがあり、それによって C<$!> が +変更されることがありました。 =begin original @@ -239,9 +280,14 @@ =end original +再入可能関数は (再び) C++ で動作するようになりました。 +5.8.2 のバグ修正によって図らずも C++ で書かれた Perl 拡張のコンパイルを +壊していました。 =head1 New or Changed Diagnostics +(新しい、または変更された診断メッセージ) + =begin original The fatal error "DESTROY created new reference to dead object" is now @@ -249,9 +295,13 @@ =end original +致命的エラー "DESTROY created new reference to dead object" が +L<perldiag> に記述されました。 =head1 Changed Internals +(内部の変更) + =begin original The hash code has been refactored to reduce source duplication. The @@ -260,6 +310,9 @@ =end original +ハッシュのコードはリファクタリングされ、ソースの重複が減少しました。 +外部インターフェースは無変更で、上記のバグ修正を除いて +振る舞いも変わっていないはずです。 =begin original @@ -267,6 +320,7 @@ =end original +C<hv_clear_placeholders> が perl API の一部となりました。 =begin original @@ -276,6 +330,9 @@ =end original +C マクロのいくつかが整理されました。 +特に一時ローカル変数を作成するマクロは変数名をより防御的に +作成するようになり、変数名がぶつかったときのバグを防ぐことができるはずです。 =begin original @@ -283,9 +340,12 @@ =end original +<signal.h> は常に含まれるようになりました。 =head1 Configuration and Building +(設定とビルド) + =begin original C<Configure> now invokes callbacks regardless of the value of the variable @@ -295,9 +355,16 @@ =end original +C<Configure> は呼び出した変数の値に関わらずコールバックを +起動するようになりました。以前は C<case $variable $define)> 分岐の +場合にのみ起動されていました。 +この変更は設定ヒントファイルを書くプラットフォームメンテナにのみ +影響があるはずです。 =head1 Platform Specific Problems +(プラットフォーム固有の問題) + =begin original The regression test ext/threads/shared/t/wait.t fails on early RedHat 9 @@ -307,9 +374,15 @@ =end original +初期の RedHat 9 と HP-UX 10.20 はスレッドの実装にバグがあるため、 +ext/threads/shared/t/wait.t 退行テストに失敗します。 +RedHat ユーザーは https://rhn.redhat.com/errata/RHBA-2003-136.html を +参照して、glibc のアップグレードを考慮するべきです。 =head1 Known Problems +(既知の問題) + =begin original Detached threads aren't supported on Windows yet, as they may lead to @@ -317,6 +390,8 @@ =end original +detach されたスレッドはまだ Windows では動作しません。 +メモリアクセス違反問題を引き起こします。 =begin original @@ -327,6 +402,11 @@ =end original +C<suidperl> でスクリプトを開くときに競合状態になることがわかっています。 +C<suidperl> はデフォルトではビルドやインストールはされません。 +また、perl 5.8.0 以降では非推奨となっています。 +suidperl を使用する代わりに sudo ( http://www.courtesan.com/sudo/ ) の +ようなツールを使用することをお勧めします。 =begin original @@ -336,6 +416,10 @@ =end original +私たちは未解決のバグの一覧を持っています。 +バグとバグ報告を扱うのは魅力のない作業です; +理想的にはボランティアの労働者に割り当てられるべきものではありません。 +しかし私たちはそうせざるを得ません。 =begin original @@ -344,9 +428,13 @@ =end original +perl5 開発チームはこの問題を扱う助けとなる変更を実装中で、 +2004 年初頭には有効になる予定です。 =head1 Future Directions +(将来の方向性) + =begin original Code freeze for the next maintenance release (5.8.4) is on March 31st 2004, @@ -355,6 +443,10 @@ =end original +次のメンテナンスリリース(5.8.4)は 2004 年 3 月 31 日にコードフリーズされ、 +4 月中旬までにリリースされる予定です。 +同様に 5.8.5 は 6 月終わりにフリーズされ、7 月中旬までに +リリースされる予定です。 =head1 Obituary @@ -441,11 +533,12 @@ F<Artistic> 及び F<Copying> ファイルに著作権情報があります。 -=cut - =begin meta Translate: Kentaro Shirakata <argra****@ub32*****> License: Same as Perl =end meta + +=cut +