Differential Testing - 同じ入力を別の実装に渡して出力を比べる
Differential Testing(差分テスト)は、同じ仕事をする 2 つ以上の実装に同じ入力を渡し、出力が一致するかを比べるテスト手法です。正解を人が書く代わりに、もう 1 つの実装の出力を比較の基準にします。名前は、McKeeman 氏の 1998 年の論文から広まりました。 ...
Differential Testing(差分テスト)は、同じ仕事をする 2 つ以上の実装に同じ入力を渡し、出力が一致するかを比べるテスト手法です。正解を人が書く代わりに、もう 1 つの実装の出力を比較の基準にします。名前は、McKeeman 氏の 1998 年の論文から広まりました。 ...

前書き Rustを学習するための一環として、Redox(OS)版coreutilsのcatコマンドをCode Readingします。本記事(その2)は、catコマンドの主要な処理(ファイル内容の表示)を説明します。catコマンドのオプションパース処理に関する内容は、以下に示す前回記事(その1)を確認して下さい。 ...

前書き Rustを学習するための一環として、Redox(OS)版coreutilsのcatコマンドをCode Readingします。Redoxプロジェクトや環境構築方法に関しては、以下の記事にまとめてあります。 ...

前書き:Redox版coreutilsを読む理由 Redoxプロジェクトが開発しているcoreutilsを読む理由は、「(Rust初心者の私が)Rustを学習する」ためです。Redoxプロジェクトに関わるコードは、基本的にRustで書かれています。何故、Redox(Kernel)ではなくて、coreutilsを読むのかと言えば、 Kernelを読めるほど、私がRustに慣れていない RedoxプロジェクトのCoreutilsは小規模 CoreutilsはUnix/Linuxコマンドのため、私が機能を把握済み という理由です。 ...