Tabs -vs- Spaces: Tabs should have won.

Cameron Simpson cs at zip.com.au
Sun Jul 17 01:52:45 CEST 2011


On 16Jul2011 09:51, rantingrick <rantingrick at gmail.com> trolled:
|  Evidence: Tabs ARE superior!
| --------------------------------------------------
| I have begun to believe that tabs are far more superior to spaces

Please Rick: you need at least three things to use the term "more
superior". With only two, you just have superior. It grates.

Personally, I prefer spaces to tabs, at least fgor my Python code and
generally anyway. Why? Well to some extent because I share files with
another who uses 4 position tabs. Editing these is a real nightmare if
one uses 8 position tabs (as I do, the common editor/terminal default
these days). For pure indentation you may get sane (if wider that liked)
results, bit any multicolumn stuff is badly broken by the mismatch.

Personally, I like to use the tab _key_ as an input device, but to have
my editor write real spaces to the file in consequence. With pure
spaces, the text is laid out reliably for us both. And so I have my
editor set to that behaviour.

[...]
| 3) Tabs create freedom in the form of user controlled indention.

Only for leading indentation, not following indentation.
Consider docstrings and other stuff with embedded fixed witdh layout.

| Indention width should be a choice of the reader NOT the author.

Sure, perhaps.

| 4) Tabs remove the need for complicated indention/detention tools.
| With "tabs only" you no longer need those fancy tools to indent or de-
| dent after a tab or backspace key-press. THAT IS EXACTLY WHY TABS
| WHERE INVENTED! Why are we not using this technology? Why are we
| continuing to promote spaces when tabs are obviously more superior?

Again with the more superior:-( Tabs were devised to lay out multiple
columns reliably on physical media, to produce tabular output. But your
proposal really only works for leading indents in a fixed with system,
not multiple indents on the same line (see my 4 versus 8 example
above).

| --------------------------------------------------
|  Conclusion: There IS freedom in unity!
| --------------------------------------------------
| When you can create a mandate that brings both UNITY and FREEDOM to
| your community you know you made the correct choice! Tabs are both
| unity and freedom at the same time because tabs UNIFY the code base
| whist giving FREEDOM to view source in any indentation with WITHOUT
| extra formatting required.
| 
| Source code must follow rules. And source code authors must follow
| these rule. Anyone who claims that syntactical rules in a programming
| language are evil because these rules "somehow" quell freedom is just
| a complete nut job. Programming languages MUST have rules or
| ambiguities will run a muck and bring the entire system crashing down.

"Amuck" is one word you know...

Anyway, plenty of systems have abiguities, many very deliberate. It is
_good_ design in many cases to deliberately leave various things
unspecified - it allows flexibility in implementation. Provided enough
is specified to meet the use case one should often stop at that point.

| Some would argue that allowing both tabs and spaces is freedom,
| however this line of reasoning is flawed. Allowing a programmer to
| format his code in way he pleases is bad, bad, bad. As a member of a
| community we must all format our code in the same manner.

This leads me to think you're just trolling.

In a particular grouping of shared code I will adhere to the agreed upon
style guides (almost always). But forcing _your_ style guide on all
Python users? You can just f- off.

| Would it be wise for folks to choose which side of the road to drive
| on?

Sure. But so much of the world chose the _wrong_ side. I drive on the
left, as do all right thinking people.

| Would it be wise for folks to choose which red lights to stop at (or
| not stop at)?

They do already.

| Would it be wise to allow people to kill other people in the name of
| freedom?

I thought they did this, too.

| If we continue along this flawed line of reasoning then one could
| extrapolate just about any excuse for any action under the guise of
| personal freedom. These people are selfish by nature and they don't
| care about their own responsibilities to a greater community. They
| exist only to please themselves. We (as a community) should not care
| what they think until they decide to stop being selfish.
| 
| We should never create languages that cater to the selfish. Our rules
| must take in consideration the "good of the many", and NEVER "the good
| of the few". We should ALWAYS give our community freedoms; but only
| the freedoms that foster unity! Tabs meet both criteria and as such
| should be Pythons only token for indention formatting.

It must be nice to always be right.

In fact, I know it is, being so myself. You haven't yet reached that
happy state.

Cheers,
-- 
Cameron Simpson <cs at zip.com.au> DoD#743
http://www.cskk.ezoshosting.com/cs/

Will you come quietly, or shall I use earplugs?



More information about the Python-list mailing list