Question about typing

Jan Skibinski
Thu, 5 Apr 2001 17:15:01 -0400 (EDT)

On Fri, 6 Apr 2001, Tom Pledger wrote:

> If you're adding every element of the first list to every element of
> the second list, it's sometimes called diagonalisation.

	I do not know where this definition came from but it
	does not make sense to me. It is zipping that looks
	like a diagonalization, not the other way around.

	[f ai bj | ai <- a, bj <- b] 
	This looks like an outer product of two vectors,
	or a matrix represented as a linear vector of
	dimension n x m, where n = length a, m = length b.
	If f = (*) then it is really the outer product.  

	[ai * bj | (ai, bj) <- zip a b] 
	But this is a list of diagonal elements of the
	outer product above, providing that n == m.