Logo

Programming-Idioms

History of Idiom 20 > diff from v21 to v22

Edit summary for version 22 by :

Version 21

2015-09-04, 19:39:34

Version 22

2015-09-04, 19:40:35

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
searcb x m = head [ (i, j) | (i, r) <- zip [0..] m,
                             (j, c) <- zip [0..] r, c == x]


Code
searcb x m = head [ (i, j) | (i, r) <- zip [0..] m,
                             (j, c) <- zip [0..] r, c == x]


Comments bubble
(findIndices(elem x)m, map(elemIndices x)m) list comprehensions were too oversugared for this task
Comments bubble
(findIndices(elem x)m, map(elemIndices x)m) list comprehensions appear too oversugared for this task