提案は 正誤表.案 へお願いします。
「川合史郎」
↓
「川合史朗」(shiroさん、すみません)
小数点数の「せんぶんのいち」と同じ
↓
小数点数の「いちまんぶんのいち」と同じ
"foo\bar"
↓
"foo\\bar" (バックスラッシュが1つ足りない)
とはいえ、ここではskip-log-entry再起動をparse-log-entryに移動するのは好ましくない。parse-log-entryが通常どおりNILを返す場合であるからだ。これはなんとかして避けたいことの筆頭だ。
↓
とはいえ skip-log-entry再起動をparse-log-entryに移動してしまうのは、parse-log-entryが普通にNILを返すことになりかねないため好ましくない。そもそも、そういう状況を避けたいというのが、いま取り組んでいる作業の原点だ。
コンディションを通知するもう1つの関数WARNはコンディションシステム上に作られたエラーとは違ったプロトコルの例になっている。ERRORのようにWARNもSIGNALを使ってコンディションを通知する。しかし、SIGNALが戻ってきても、WARNはデバッガを起動せず、ただコンディションを*ERROR-OUTPUT*に出力してNILを返し、WARNの呼び出し元に処理を返す。同時に、WARNはSIGNALの呼び出しのまわりでMUFFLE-WARNINGという再起動を確立し、これをWARNのコンディションハンドラが使うことでWARNは何も出力せずに戻る。再起動関数MUFFLE-WARNINGは、対応する再起動を探して起動するが、対応する再起動が見つからなかった場合はCONTROL-ERRORを通知する。WARNで通知されたコンディションを処理する方法はほかにもいくつかあり、まるでエラーであるかのように処理すればコンディションハンドラで警告をエラーに「昇格」させることもできる。
↓
コンディション通知関数にはWARNという関数もある。この関数によって、コンディションシステムの上に違う種類の手続きを構築することができる。WARNはERRORと同じく、SIGNALを呼んでコンディションを通知する。しかしWARNはSIGNALが戻ってきてもデバッガを起動しない。コンディションを*ERROR-OUTPUT*に印字してNILを戻し、呼び出し元が処理を続けられるようにする。WARNはSIGNALを呼ぶ際に、MUFFLE-WARNINGという名前の再起動も確立する。これをコンディションハンドラから呼び出せば、WARNは何も印字せずにNILを返す。再起動関数MUFFLE-WARNINGは、MUFFLE-WARNINGという名前の再起動を探して呼び出す。対応する再起動が存在しない場合はCONTROL-ERRORを通知する。もちろんWARNで通知されたコンディションを処理する方法はほかにもいくつかあり、まるでエラーであるかのように処理すれば、コンディションハンドラで警告をエラーに「昇格」させることもできる。
またはコンパイルされたフォームと等価なもの
↓
またはフォームのコンパイルされたものと等価なもの
トップレベルフォームは、実行されるコードへのコンパイルがFASLのロード時に行われる。
↓
トップレベルフォームをコンパイルしてできたコードは、FASLのロード時に実行される。
MACROLETやSYMBOL-MACROLETも
↓
MACROLET内やSYMBOL-MACROLET内に直接現れるフォームも
MACROLETやSYMBOL-MACROLETにコンパイルされたコードに残っている仕事は何もない
↓
コンパイルされたコードにはMACROLETやSYMBOL-MACROLETの痕跡は何も残らない
ほとんどのフォームがコンパイルされるのは、トップレベルフォームおよび非トップレベルフォームとしてコンパイルされるのと同じタイミングだ。
しかしEVAL-WHENのセマンティクスでは、トップレベルフォームとしてコンパイルされるか非トップレベルフォームとしてコンパイルされるか、もしくは単純に評価されるかに加えて、situationに列挙された状況との組み合わせによってコンパイルされるタイミングが決まる。
↓
ほとんどのフォームはトップレベルフォームでも非トップレベルフォームでも同じものにコンパイされるが、EVAL-WHENのセマンティクスはトップレベルフォームとしてコンパイルされるか非トップレベルフォームとしてコンパイルされるか、もしくは単純に評価されるかに加えて、situationに列挙された状況との組み合わせによって決まる。
越える1つ手前
↓
その1つ手前
反復したい値が集合として異なっている場合があるので少し複雑だ。
↓
反復したいであろう値にはさまざまなものがあるので少し複雑だ。
forやonの
↓
forとonによる
基本的な方針は、与えられたメッセージに含まれる特徴を抽出して分別し、個々の特徴についてそれを含むメッセージがスパムである確率を計算して、その全確率を組み合わせてメッセージの合計スコアを出すというものだ。
↓
基本的な方針は、与えられたメッセージに含まれる特徴を抽出し、個々の特徴についてそれを含むメッセージがスパムである確率を計算して、その全確率を組み合わせてメッセージの合計スコアを出すことで分類するというものだ。
その特徴を持つスパムのメッセージと、その特徴を持つすべてのメッセージとの比
↓
その特徴を持つすべてのメッセージと、その特徴を持つスパムのメッセージとの割合
スパムかハムかの全体確率とは独立している。
↓
スパムかハムかの全体確率とは関係ない。
何らかの形で … 得点データを因子に持つ
↓
… データ点の個数を何らかの形で因子とする
データを事前知識や仮定として用いる
↓
データを事前知識ないし仮定に組み込む
分類されたメッセージ
↓
分類しようとしているメッセージ
小さい確率が少なすぎるからだ
↓
確率の小さい特徴が多すぎるからだ
したがって移植性を意図したファイルフォーマットでは、特定のマシンや言語におけるメモリ内の実際のデータ表現にマップさせ得る全データ型について、正準表現(canonical representation)を規定しなければならない。
↓
したがって移植性を意図したファイルフォーマットでは、特定のマシンや言語におけるメモリ内の実際のデータ表現にマップさせ得る正準表現(canonical representation)を、利用する全データ型について規定しなければならない。
クラスと、そのクラスおよび
↓
クラスと、そのクラスのインスタンスおよび
後者はさらに2要素のリストになっている。
↓
後者の要素は2要素のリストになっている。
read-valueに特定化された
↓
read-valueに特定化した
それからid3-tagという型の名前に特定化したread-valueメソッドをdefine-binary-classに生成させ、最初の引数に適切なスロットの型を渡してread-valueを呼び出せば、そのメソッドが実装されるようになる。
↓
それからid3-tagという型の名前に特定化したread-valueメソッドをdefine-binary-classに生成させることができる。このメソッドは、最初の引数に適切なスロットの型がくるread-valueの呼び出しとして実装される。
どの型をread-valueに渡xすか決めるために
↓
どの型をread-valueに渡すか決めるために
そして、直接インスタンス化することはないが、read-valueでデータを読むにはどのクラスを生成するかを判別する「抽象」クラスを定義する、別のマクロdefine-tagged-binary-classを書く。
↓
そして、直接はインスタンス化しない「抽象」クラスを定義する別なマクロdefine-tagged-binary-classを書く。その抽象クラスが、生成するクラスの種類を決定するのにどれだけのデータを読めばいいかを知っているread-valueメソッドにより特定化されるようにする。
read-valueメソッドとwrite-valueメソッドを変更し、サブクラスの生成されるメソッドが継承元のスロットを読み書きするのに、スーパークラスのメソッドを使えるようにする必要がある。
↓
read-valueメソッドとwrite-valueメソッドを変更し、サブクラスの一部として生成されたメソッドが、継承したスロットの読み書きに、スーパークラスを定義するときに生成されるメソッドを使えるようにする必要がある。
あるオブジェクトはスーパークラスのフィールドを埋めるメソッドにインスタンス化し、他のオブジェクトはサブクラスのメソッドがインスタンス化してスロットを埋めるというようなことができない。
↓
スーパークラスの読み込みに責任のあるメソッドに1つのオブジェクトをインスタンス化させながら、一方でサブクラスのメソッドが別のオブジェクトをインスタンス化してスロットを埋めるようなことができない。
PROGNにより、クラス優先順位リストで最も特定的でないクラスから特定的なものへと順番に特定化されたメソッドが実行されるように結合される。最も特定的でないクラスに特定化されたメソッドが最初に実行され、そのクラスで定義されたスロットに対して読み書きを行い、それから次に特定的でないサブクラスに特定化されたメソッドが実行されるという具合だ。特定的なクラスに対する...
↓
PROGNメソッド結合により、クラス優先順位リストで最も特定的でないクラスに特定化されたメソッドが最初に実行され、そのクラスで定義されたスロットに対して読み書きが行われ、それから次に特定的でないサブクラスに特定化されたメソッドが実行される、という具合に適用可能なすべてのメソッドが結合される。特定のクラスに対する...
でメソッドを定義するだけだ。
↓
をメソッドの定義に使うだけだ。
そしてマクロによって生成される式に ... define-binary-classによって生成される式
↓
そしてマクロによって生成される展開形に ... define-binary-classによって生成される展開形
まず、構造が開始される値をどうやって読むかを判別できるメソッド
↓
まず、構造の先頭の値をどうやって読むか知っている特定化されたメソッド
フォームが返すクラスの名前は、... スロットの名前で初期化引数を
↓
フォームが返す名前のクラスは、... スロット名に対応した初期化引数を
タグ付きクラスをサブクラスに持つクラス
↓
タグ付きクラスのサブクラスであるクラス
*in-progress-objects*を新しい値に代入せず、
↓
*in-progress-objects*を新しい値に代入するのでなく、
ISP (International Organization for Standardlization)
↓
ISO
Webサーバでは通常 ? マークより後ろのクエリ文字列を無視し、レスポンスを生成するコードで利用できるようにする。
↓
Webサーバでは通常 ? マークより後ろのクエリ文字列を無視する。ただし、レスポンスを生成するコードでそれを利用できるようにする。
PortableAllegroServeを呼ぶと
↓
PortableAllegroServeをロードすると
自分で空白を追加せずにHTMLをインデントすることができる。
↓
コードを適切にインデントしてもHTMLに空白が追加されない。
PROGNの中で展開されるようにしている。
↓
PROGNに展開しなければならない。
それぞれをparam-bindingで生成するコードの断片を集める必要がある。
↓
それぞれに対しparam-bindingで生成するコードの断片を集める必要がある。
DESTRUCTURING-BIND使うことでparam-bindingを分解
↓
DESTRUCTURING-BINDを使うことでparamsを分解
interned-stringの名前に特定化された
↓
interned-stringという名前に特定化された
この関数が、各行について正規化したデフォルトの属性リストを組み立てる。行の値としては、…
↓
この関数が、各列について、正規化された値からなる属性リストを組み立てる。列の値としては、…
情報でMP3データベースをロード
↓
情報をMP3データベースにロード
その列の名前でソート
↓
その名前の列でソート
MAPに渡す関数の引数
↓
MAPの引数として渡す関数
ある列を持つ行だけ
↓
ある列だけを持つ行
inは、特定の列が指定した値の集合になっているような行にマッチさせる関数を返す。
↓
inは、特定の列が指定した値の集合に含まれているような行にマッチさせる関数を返す。
ストリームに現在演奏中の曲目をどのメタデータに埋め込むかといったメカニズムも含めたレスポンスの書式だ。
↓
現在演奏中の曲目に関するメタデータをストリームに埋め込むメカニズムも含めたレスポンスの書式だ。
nバイトごとに分割されたメタデータのチャンクを埋め込むというものだ。
↓
メタデータのチャンクをnバイトごとに埋め込むというものだ。