News for hackers. Stuff that matters.
Re:Functors and Monads for People Who Have Read Too Many "Tu... by necovek on Friday August 02, 2024 @01:35PM (#41140822)
TBH, it took way too long to explain exactly what a "functor" is, and I find it pretty confusing.

In the section trying to finally define it, it starts off with "Functor is an interface...", and then ends the paragraph with "In Haskell's case, Functor, which is implemented by providing an fmap implementation. For the above examples, that function will:..."

So is it an interface or a function? Is it one and the same in Haskell? I am utterly confused.

If the goal was to explain anything simply, this article fails spectacularly for me.

Re:Functors and Monads for People Who Have Read Too Many "Tu... by tome on Friday August 02, 2024 @03:03PM (#41141607)
> So is it an interface or a function? Is it one and the same in Haskell? I am utterly confused.

Functor is an interface. It has one member: a function called fmap. To specify how a type meets the Functor interface you have to define the function fmap for that type.

Re:Functors and Monads for People Who Have Read Too Many "Tu... by necovek on Saturday August 03, 2024 @01:02AM (#41144787)
Thanks: that actually does a better job explaining it in fewer words.