
Niklas Broberg wrote:
Haskell '98 apparently features 25 reserved words. (Not counting "forall" and "mdo" and so on, which AFAIK are not in Haskell '98.)
21 actually. case, class, data, default, deriving, do, else, if, import, in, infix, infixl, infixr, instance, let, module, newtype, of, then, type, where. There's also three special words that can still be used as identifiers, so aren't reserved: as, qualified, hiding.
OK. Well the list I saw was for Haskell plus extensions, and I visually filtered out the inapplicable stuff. Apparently I missed something. Also, the number varies depending on whether you consider "reversed words" or "keywords", and I suspect the situation is subtly different for each possible language. I was going vaguely for anything that's hard-wired into a language, and not just part of the standard libraries. (E.g., "return" is definitely NOT any kind of reversed word or keyword.)