C # , Scala, Haskell, Lisp e Python hanno lo stesso zip
comportamento: se una raccolta è più lunga, la coda viene silenziosamente ignorata.
Potrebbe anche essere un'eccezione, ma non ho sentito parlare di nessuna lingua usando questo approccio.
Questo mi confonde. Qualcuno sa il motivo per cui zip
è progettato in questo modo? Immagino per nuove lingue, è fatto perché altre lingue lo fanno in questo modo. Ma qual era la ragione principale?
Sto ponendo qui una domanda concreta, basata sullo storico, non se a qualcuno piace o se è un approccio positivo o negativo.
Aggiornamento : se mi chiedessero cosa fare, direi: gettare un'eccezione, in modo simile all'indicizzazione di un array (nonostante le "vecchie" lingue facessero tutti i tipi di magia, come gestire l'indice fuori dai limiti, UB, espandere l'array, eccetera).
zipWithIndex
naturale fornendo un generatore di numeri naturali. Ora, il pezzo manca solo di informazioni - che cosa era che il motivo? :-) (a proposito. ripubblicare il tuo commento come risposta, grazie).