y = xによって、xとyが同じオブジェクトを参照するようになる点は、イミュータブルなオブジェクトの場合と同様です。しかし、xを通じてそのオブジェクトに変更を加えようとした場合、イミュータブルの場合とは異なり新しいオブジェクトは作成されず、既存のオブジェクト自体が変更されます。xとyは異なるラベルを持っていても、どちらも同じオブジェクトを参照しているため、xによる操作の結果がyにも影響しているように見えるのです
P.59 図3.9キャプション
誤
Pythonにおけるリスト型の場合の変数とメモリ(オブジェクト)の関係
正
Pythonにおけるリスト型の場合の変数とオブジェクトの関係
P.59 図3.9
誤
正
(以下2024年10月28日更新)
P.183 図4.12 「カウンタ:3」部分
誤
child: Node
正
child: None
(以下2024年5月30日更新)
P.320 リスト8.7
最後の行に以下が必要でした。
正
print_sum_hello(10000000)
(以下2024年4月1日更新)
P.190 図4.13中のテキスト(2ヵ所)
誤
chaild
正
child
P.191 図4.14中のテキスト(2ヵ所)
誤
chaild
正
child
P.193 図4.15中のテキスト(2ヵ所)
誤
chaild
正
child
P.190 図4.16中のテキスト(2ヵ所)
誤
chaild
正
child
P.214 下から8行目
誤
また、EqおよびOrdは比較が必ずできる(失敗しない)型に対して、PartialEqおよびPartialOrdは比較ができない場合がある型に対して実装します。i32型などの整数型には、前者の"Partial"なしのトレイトが実装されているのに対し、f64、f32などの浮動小数点型には後者の"Partial" 付きのトレイトが実装されています。浮動小数点型の場合にはNaN(Not A Number)との比較ができないため、"Partial"付きになっています。
正
また、同じ型の同じ値同士の等値比較において、EqやOrdはいつでも真となることを前提にできる型に実装できるのに対し、PartialEqおよびPartialOrdはそれを前提にできる型に加え、できない型にも実装できます(数学的な言葉でいえば、PartialEqやPartialOrdは「その型に属する値が反射律を満たすことを要求されない型」に対して実装できるものです)。EqやOrdが実装される型には、自動的にPartialEqやPartialOrdも実装されています(EqやOrdがPartialEqやPartialOrdのサブトレイト(p216参照)であるため)。たとえば、浮動小数点型f32、f64はNaN(Not A Number)という値を含んでいますが、NaN == NaNの等値比較の結果は偽となるため、これらの型には"Partial"付きのトレイトのみが実装されています。一方、i32型などの整数型には、"Partial"なし、および"Partial"付きの両方のトレイトが実装されています。
(以下2023年1月11日更新)
P.192 下から4行目
誤
Rc::clone()
正
Rc::new()
(以下2022年12月26日更新)
P.23 3行目
誤
std::fmt::Displayいうトレイト
正
std::fmt::Displayというトレイト
P.71 3つ目のコード囲み10行目
誤
myclear(&s);
正
myclear(s_ref);
P.142 リスト4.14のキャプション
誤
Result<T,E>}
正
Result<T,E>
余計な「}」がありました。
P.154 Pythonのコード 10行目
誤
print("The capital of {} is {}.".format(
正
print("The capital of {} is {}".format(
余計な「.」がありました。
P.154 Pythonのコード 14行目
誤
print(The capital of {} is not found.".format(tg))
正
print("The capital of {} is not found".format(tg))