C#、Scala、Haskell、Lisp、およびPythonのzip
動作は同じです。1つのコレクションがより長い場合、テールは黙って無視されます。
例外もスローされる可能性がありますが、このアプローチを使用している言語は聞いていません。
これは私を困惑させます。誰かがzip
そのように設計されている理由を知っていますか?新しい言語の場合は、他の言語がこの方法で行うため、完了します。しかし、根本的な理由は何でしたか?
ここで、事実に基づいた、歴史に基づいた質問をしている。誰かがそれを好むのか、それとも良いアプローチか悪いアプローチなのかではない。
更新:どうすればよいかと聞かれたら、例外をスローします。配列をインデックス化するのとほとんど同じです(「古い」言語はあらゆる種類のマジックを行いましたが、境界外のインデックス、UB、配列を展開する方法、等)。
zipWithIndex
、自然数ジェネレーターを提供して自然に表現できます。さて、唯一の情報が欠けています- それは何の理由ですか?:-)(ところで、回答としてコメントを再投稿してください、ありがとう)。