D言語のデータ構造

最近気づいたことがある。D言語には基本的なデータ構造がまったく揃っていない。queue, stack, set, priority queue, unordered_set, unordered_mapなど、C++に用意されている極めて重要かつ基本的なデータ構造がないのだ。

これは困った。どうしてこんなことになっているのか調べているうちに、こんな記事に出くわした。
http://stackoverflow.com/questions/7162274/why-is-d-missing-container-classes

この記事によると、D言語の主要な開発者であるAndrei Alexandrescu氏が、まだ基本的なデータ構造の最適な扱い方を見出していないという説があるようだ。

どちらにしても、queueやstackのような基本的なデータ構造さえないというのは考えものだ。本当に途方に暮れた。これはもうしばらくはDから離れて、データ構造が改良されるのを待つ他ないのかもしれない。

Dには優れた先進的特徴がいくつもある。それがこのようなつまらないところで挫けて欲しくない。いつの日か必ずやDが更なる進化を遂げることを夢見て、今はもともとよく使っていたC++に戻ることにしよう。

D言語よ、また会おう!