The point is:
a) In English, words can change their status moment by moment. "We had a lot of fun" = noun. "That is a fun thing to do" = adjective.
b) Words can also change their status gradually over time. Fun was originally a noun in 1700 (and a verb before that) and only recently has it been used adjectivally.
I don't call this regrettable, as Chez does; it's one of the glories of English that we aren't bound by rigid rules like some languages. Otherwise, we wouldn't be able to talk about a table leg (adjective), we'd be obliged like the French to say a leg of a table(noun).