Estaba aburrido un día y quería ejercitar mi cerebro, así que decidí hacer el 99 Haskell Problems pero me limité a hacerlo en estilo sin puntos. Un problema que parece surgir mucho cuando estoy haciendo cosas en un estilo sin puntos es este: ¿cómo se aplican múltiples funciones al mismo valor mientras se mantiene cada resultado como una entidad independiente? Utilizando la notación de punta:Aplicar varias funciones al mismo valor sin puntos en Haskell
foobar x = [id x, reverse x]
Y lo que he encontrado hasta el momento en notación sin punto:
foobar' = `map` [id, reverse] ($ x)
Me parece que no puede conseguir que la x
fuera de la final de allí.
Sólo si estás bien con las restricciones. Esto no funcionará para todos los usos. –
@ ThomasM.DuBuisson: ¿qué restricciones? –
@BenMillwood Me refiero a las restricciones de clase de clase. La respuesta de JohnL es de tipo 'a -> [a]'. Esta respuesta, aunque agradable y limpia, es de tipo 'Monad ((-> a) => a -> [a]'. –