Logo

Programming-Idioms

History of Idiom 20 > diff from v15 to v16

Edit summary for version 16 by :

Version 15

2015-09-04, 18:58:20

Version 16

2015-09-04, 18:59:14

Idiom #20 Return two values

Implement a function search which looks for item x in a 2D matrix m.
Return indices i, j of the matching cell.
Think of the most idiomatic way in the language to return the two values at the same time.

Idiom #20 Return two values

Implement a function search which looks for item x in a 2D matrix m.
Return indices i, j of the matching cell.
Think of the most idiomatic way in the language to return the two values at the same time.

Code
search x m = head [ (i, j) | (i, row) <- zip [0..] m, (j, cell) <- zip [0..] row, cell == x]
Code
search x m = head [ (i, j) | 
	(i, row) <- zip [0..] m, 
	(j, cell) <- zip [0..] row,
	cell == x]