Combine lists

Use only in the MuPAD Notebook Interface.

This functionality does not run in MATLAB.


zip(list1, list2, f)
zip(list1, list2, f, default)


zip(list1, list2, f) combines two lists via a function f. It returns a list whose i-th entry is f(list1[i], list2[i]). Its length is the minimum of the lengths of the two input lists.

zip(list1, list2, f, default) returns a list whose length is the maximum of the lengths of the two input lists. The shorter list is padded with the default value.

If f produces the void object of type DOM_NULL, then this element is removed from the resulting list.

zip is recommended for fast manipulation of lists. It is a function of the system kernel.


Example 1

The fastest way of adding the entries of two lists is to 'zip' them via the function _plus:

zip([a, b, c, d], [1, 2, 3, 4], _plus)

If the input lists have different lengths, then the shorter list determines the length of the returned list:

zip([a, b, c, d], [1, 2], _plus)

The longer list determines the length of the returned list if a value for padding the shorter list is provided:

zip([a, b, c, d], [1, 2], _plus, 17)


list1, list2

lists of arbitrary MuPAD® objects


Any MuPAD object. Typically, a function of two arguments.


Any MuPAD object

Return Values


Overloaded By

list1, list2

See Also

MuPAD Functions

Was this topic helpful?