Concurrent Clean : CleanJ : Java : 配列とオブジェクトのどちらが効率的か
代数データ型の内部データ構造を考える。
Object[] data = new Object[2] { CleanSystem._Cons, vm.topN(2) };
のように、これまた配列として取り扱うか、
CleanData data = new CleanData( CleanSystem._Cons, vm.topN(2) );
のように、専用のオブジェクトを用意するか。
ポイントは、コンストラクタの効率と、アクセサの効率、それからclone()の効率。あ、消費メモリ領域も。
プリミティブである配列の方が、何かと効率よく実装されているのではないかという気がするけれど・・・。Javaの場合、Castってコストがかかったりしないかな?
-
-
- -
-
それから、タプルと基本型の配列だけ特別扱いにするというアイデアはどうしようかな。