Filtrar nada y descomprimir solo

Estoy teniendo problemas con este programa.

filterJust :: [Maybe a] -> [a]

filterJust [] = []
filterJust x = map fromJust (filter (isJust) x)

pero ghci sigue informando esto

EDITAR:

No quiero usar ningún módulo adicional, así que hice esto:

filterJust :: [Maybe a] -> [a]

filterJust x = map unpack (filter (Nothing /=) x)

unpack (Just a) = a

y recibo este mensaje

Y no entiendo por qué. Debería poder usar las funciones de ecualización sin importar anthing, ¿verdad?

Respuestas a la pregunta(2)

Su respuesta a la pregunta