順序つきハッシュテーブルなんて

必要に応じてアプリケーション側でデータ構造を再定義したいという欲求の典型ではないかと思う。
大抵の「生産性の高い」言語は、そういうことをやると大きくパフォーマンスが落ちてしまうので、処理系の作成者側が全てを見通して標準ライブラリにすべてを実装しておくか、処理系の利用者がC言語などを使って外部モジュールを作らないといけない。
しかし、前者は処理系の作成者が全ての要求を把握することは無理だし、全てを実装することも無理。後者は、せっかく書きやすい言語を選んでいるのに、一番ややこしい部分を書きにくい言語で書かなければいけない上に、移植性も失われる。
結局の所、大抵のプログラマは、標準ライブラリの範囲内でなんとかやろうと、非本質的なワークアラウンドを開発していくのだろう。なんてバッドノウハウ