В этом случае вам не нужно использовать сопоставление с образцом, если этого будет достаточно.Ваш синтаксис для функции и сопоставления с образцом немного отключен.(Это случается с любым новым новичком в Haskell довольно часто)
import Data.Ord
minCompare :: Ord a => a -> a -> a
minCompare left right = if left >= right then left else right
minCompare' :: Ord a => a -> a -> a
minCompare' left right = case (compare left right) of
LT -> right
EQ -> left
GT -> left
minCompare'' :: Ord a => a -> a -> a
minCompare'' left right = case (compare left right) of
LT -> right
_ -> left