Testing out naming conventions.
zip-index is the word name that does it immediately
<zip-index> could create a virtual sequence
virtual-zip-index is the tuple class name to not conflict
] unit-test
{ { -1 2 -3 4 -5 } } [ { 1 2 3 4 5 } [ odd? ] [ neg ] map-if ] unit-test
+
+{ { { 100 0 } { 200 1 } { 300 2 } { 400 3 } } } [
+ { 100 200 300 400 } <zip-index> >array
+] unit-test
new-resizable
[ [ push ] curry compose 3nested-each ] keep
] keep like ; inline
+
+TUPLE: virtual-zip-index seq ;
+
+C: <zip-index> virtual-zip-index
+
+M: virtual-zip-index length seq>> length ; inline
+
+M: virtual-zip-index nth-unsafe
+ over [ seq>> nth-unsafe ] [ 2array ] bi* ; inline
+
+INSTANCE: virtual-zip-index immutable-sequence