Por ejemplo, tengo la siguiente,en Haskell
type something = (Float, Float, Int, Aa, Bb, Cc, Int)
Si tuviera que deseo encontrar la más pequeña something
con base en su primer elemento (Float) ¿cómo podría hacerlo? La forma en que han razonado es la siguiente, sin embargo, no puedo lograr figureout cómo implementarlo
Porque tengo una lista de somethings
la forma más fácil debería ser la creación de mi propia función min
ayudante que compara 2 somethings
y devuelve los más pequeños de los dos. Sin embargo, se trata de hacer que la "forma más fácil" que me quedé atrapado con tipo de errores de compilación ...
findMin :: something -> something -> somthing
findMin x y = sortBy (compare `on` fst) x y
no estoy familiarizado con sortBy
y compare on
, me encontré con una pregunta similar aquí en SO pero no pude lograr que funcione. Como un principiante en Haskell, ¿hay alguna otra manera de acercarte a esto?
"fst" y "snd" solo funcionan en tuplas con dos elementos. Por algo más, probablemente estés mejor con "datos Algo = ..." como otros han sugerido. –