[erlang-questions] Reia, or On The Evils Of Tabs And Indentation Sensitivity

Edwin Fine <>
Mon Sep 29 22:26:30 CEST 2008

I was quite interested right up to the point where I read about indentation
sensitivity, and then I lost interest.

I don't want to start a religious flame war, but I am compelled to write
this politically incorrect rant.

I've trained my eyes to view block structure using aligned begin/end
(open/close) pairs (or their brace/bracket/parenthesis equivalents), and
cursed too many pieces of tab-infested source code files that have had
multiple maintainers -- each of whom used different tab settings, resulting
in a visual abortion -- for far too long now to want to use anything but
languages that do not *require* leading whitespace characters.

Regarding indentation sensitivity, remember "one of the worst design botches
in the history of Unix"[1], the requirement for a semantically meaningful
leading tab character in makefiles? I've been bitten by that nastiness
enough times to be highly allergic to the whole leading whitespace concept,
not to mention by having something in a makefile that should have been
indented, or had a blank line (or not), but wasn't. Bah.

Sadly, "tab rot" afflicts at least some of the OTP source code. Set your
editor to highlight tabs, look through a few OTP source files, and you will
see places where indentation is done using spaces, and others where it's
done using a mixture of tabs and spaces. If your tab settings don't match
the OTP team's, it will look as if it was written by a drunk with multiple
personality disorder. Not that drunk MPD sufferers are necessarily bad
people, mind you, but keep them away from my source code, please.

I know that Reia *per se* is not to blame for the Great Tab Debacle, but I
have shunned Python partly for the same reason. Erlang, I must admit, is the
closest I have come to using indentation without using matching open/close
block structuring at every level, but wrong indentation in Erlang does not
lead to changes in semantics, so that's not too bad.

I know, if I don't like it, don't use it, so I won't, but I do wish Reia
success in its goals. So long as the tabs don't leak out of its files and
into mine ;)

[1] The Art of UNIX Programming, Eric S. Raymond, p358

On Mon, Sep 29, 2008 at 6:52 AM, French, Mike <
> wrote:

> http://wiki.reia-lang.org/wiki/Reia_Programming_Language
> Mik
> Thales UK Ltd (Wells) DISCLAIMER: The information contained in this e-mail
> is confidential. It may also be legally privileged. It is intended only for
> the stated addressee(s) and access to it by any other person is
> unauthorised. If you are not an addressee, you must not disclose, copy,
> circulate or in any other way use or rely on the information contained in
> this e-mail. Such unauthorised use may be unlawful. We may monitor all
> e-mail communications through our networks. If you have received this
> e-mail
> in error, please inform us immediately on +44 (0) 1749 672081 and delete it
> and all copies from your system. We accept no responsibility for changes to
> any e-mail which occur after it has been sent.  Attachments to this e-mail
> may contain software viruses which could damage your system.  We therefore
> recommend you virus-check all attachments before opening. A business of
> Thales UK Ltd. Registered Office: 2 Dashwood Lang Road, The Bourne Business
> Park, Addlestone, Weybridge, Surrey KT15 2NX Registered in England No.
> 868273
> _______________________________________________
> erlang-questions mailing list
> http://www.erlang.org/mailman/listinfo/erlang-questions
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20080929/85261bb6/attachment.html>

More information about the erlang-questions mailing list