SequenceableCollection extend [ zip [ | first second out i | out := WriteStream on: (self species new). first := self at: 1. second := self at: 2. i := 1. first do: [:elemnt| out nextPut: {elemnt. second at: i}. i := i + 1]. ^out contents ] ] Eval [ PackageLoader fileInPackage: #I18N. a := UnicodeString from: (#(12394 12414 12383) collect: [:int| int asCharacter ]). a numberOfCharacters printString displayNl. b := a asString: 'UTF-16'. b numberOfCharacters printString displayNl. c := b asUnicodeString. c numberOfCharacters printString displayNl. { a asString: 'UTF-8'. c asString: 'UTF-8'. } zip do: [:pair| (((pair at: 1) asInteger printString: 16), ' <-> ', ((pair at: 2) asInteger printString: 16)) displayNl ]. ]