コンパイラに必要な物。2013/03/16 15:16

コンパイラに必要な物。
それは、文字列検索ルーチンだ。

代表的な物を上げると、線形検索、ハッシュ、BM法、二分木だ.

まあ、この中で使うとすれば、MSCにライブラリがあるハッシュか。

とりあえず特徴を挙げていく。

線形検索->簡単、しかし遅い
ハッシュ->早い、しかしMSCのライブラリーは遅い。
BM法->3文字以上は線形検索より早いが、イニシャルコストが高い。
二分木->イニシャルコストが高い上に、プログラムの難易度が高い。

まあ、現実論として、ハッシュが一番有効だろう。

しかし、MSCのハッシュは重いので、自分で組まなくてはならないのだが。

以前、僕のコンパイラーで自作ハッシュ、BM法、二分木を、マルチスレッドを使い、投機していたが、自作のハッシュが、一番早いことが判明したので、今はハッシュを使っている。

あと、僕の作るコンパイラ、各種圧縮には、make機能も内蔵している。
前は、アセンブラで組んだkmake。今は、Cで組んだsmake。
これにより、格段にスピードが速くなった。