[Haskell-cafe] Language simplicity

Andrew Coppin andrewcoppin at btinternet.com
Tue Jan 12 17:22:38 EST 2010

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.)

More information about the Haskell-Cafe mailing list