469,282 Members | 1,732 Online
Bytes | Developer Community
New Post

Home Posts Topics Members FAQ

Post your question to a community of 469,282 developers. It's quick & easy.

From python-dev, space vs. tab controversy finally settled


Here's a summary of the final decision Guido made concerning how
Python will indent code in the future, from python-dev:

Guido had been planning to deprecate tabs in favor of spaces for
awhile, although there have been good arguments for both tabs and
spaces. But he was never really comfortable pulling the rug out from
half the user base. However, today he finally decided on a compromise
that has all the benefits of both spaces and tabs.

His decision was predicated by the recent decision of the Unicode
Consortium to allocate some new codes for special use in programming
languages. The Consortium allocated codes for (among other things):
several sets of left and right braces, several sets of quote
characters, a couple universal comment markers, and several
metacharacters for use in regular expressions.

However, the code that influenced Guido was a special indent code.
Here's how it works: at the beginning of the line, you put in one
"indent character" for each level of indentation. Because Python will
support Unicode fully by 3.0, Guido decided that this new Unicode
character will be the one and only way to indent Python code.

Now, I'm sure everyone's aware that Unicode is getting kind of full,
and so, rather than allocating precious ununsed slots to the new
programming characters, the Consortium decided reallocate some codes
that had been rarely used. These codes fall in the range 0001 through
001F, excepting 000A and 001A (all codes in hexadecimal). The new
indent character has code 0009.

So, you should start using Unicode character 0009 to indent right
away. Python 2.4 will deprecate all indentation not using the new
indent character, and Python 3.0 will not support any other
indentation.
--
CARL BANKS http://www.aerojockey.com/software
"If you believe in yourself, drink your school, stay on drugs, and
don't do milk, you can get work."
-- Parody of Mr. T from a Robert Smigel Cartoon
Jul 18 '05 #1
10 1634
Carl Banks wrote:
Here's a summary of the final decision Guido made concerning how
Python will indent code in the future, from python-dev:

Guido had been planning to deprecate tabs in favor of spaces for
awhile, although there have been good arguments for both tabs and
spaces. But he was never really comfortable pulling the rug out from
half the user base. However, today he finally decided on a compromise
that has all the benefits of both spaces and tabs.

His decision was predicated by the recent decision of the Unicode
Consortium to allocate some new codes for special use in programming
languages. The Consortium allocated codes for (among other things):
several sets of left and right braces, several sets of quote
characters, a couple universal comment markers, and several
metacharacters for use in regular expressions.

However, the code that influenced Guido was a special indent code.
Here's how it works: at the beginning of the line, you put in one
"indent character" for each level of indentation. Because Python will
support Unicode fully by 3.0, Guido decided that this new Unicode
character will be the one and only way to indent Python code.

Now, I'm sure everyone's aware that Unicode is getting kind of full,
and so, rather than allocating precious ununsed slots to the new
programming characters, the Consortium decided reallocate some codes
that had been rarely used. These codes fall in the range 0001 through
001F, excepting 000A and 001A (all codes in hexadecimal). The new
indent character has code 0009.

So, you should start using Unicode character 0009 to indent right
away. Python 2.4 will deprecate all indentation not using the new
indent character, and Python 3.0 will not support any other
indentation.

Great april fools joke, but no such conversation has gone on in
Python-Dev in the last 3 months.

Better luck next time.

- Josiah
Jul 18 '05 #2
Heyho!

Carl Banks wrote:
Here's a summary of the final decision Guido made concerning how
Python will indent code in the future, from python-dev:

Guido had been planning to deprecate tabs in favor of spaces for
awhile, although there have been good arguments for both tabs and
spaces. But he was never really comfortable pulling the rug out from
half the user base. However, today he finally decided on a compromise
that has all the benefits of both spaces and tabs.
[...]
So, you should start using Unicode character 0009 to indent right
away. Python 2.4 will deprecate all indentation not using the new
indent character, and Python 3.0 will not support any other
indentation.


Nah, this sucks! This will be the death of Python! I'm switching to
Whitespace: http://compsoc.dur.ac.uk/whitespace/

Stay Rude!
Wolfram

Jul 18 '05 #3
[Carl Banks]
Here's a summary of the final decision Guido made concerning how
Python will indent code in the future, from python-dev:

[Nice April Fool spoof :-) elided]

[Josiah Carlson] Great april fools joke, but no such conversation has gone on in
Python-Dev in the last 3 months.

Better luck next time.


Spoil-sport!

You could have at least given it a few *minutes* to get some traction!

--
alan kennedy
------------------------------------------------------
check http headers here: http://xhaus.com/headers
email alan: http://xhaus.com/contact/alan
Jul 18 '05 #4
Josiah Carlson wrote:
Carl Banks wrote:
[snip]
Great april fools joke, but no such conversation has gone on in
Python-Dev in the last 3 months.

Better luck next time.

- Josiah


Yeah, thanks Josiah. Well all know how bright you are already though,
and it's customary (though an unspoken custom, perhaps, until now) to
chuckle quietly at such things and wait a while before posting, just to
give an opportunity for the unwary ones to get sucked in for a while.

Anyway, you forgot to point out that the *real* conclusion from the
python-dev discussions was that Guido has finally decided that the
space vs. tab wars will _never_ be won, and chooses explicit over
implicit yet again. The indentation style for Python 3.0 (not 2.4)
will be leading periods, since they make the indentation more obvious
and thus avoid mistakes.

-Peter
Jul 18 '05 #5
Josiah Carlson <jc******@uci.edu> writes:
Great april fools joke, but no such conversation has gone on in
Python-Dev in the last 3 months.
You just didn't get those mails.

Cheers,
mwh

-- It might get my attention if you'd spin around in your chair,
spoke in tongues, and puked jets of green goblin goo.

I can arrange for this. ;-) -- Barry Warsaw & Fred Drake
Jul 18 '05 #6
Josiah Carlson:
Great april fools joke, but no such conversation has gone on in
Python-Dev in the last 3 months.


You're right, there was a typo. It should have been python-internals.
That started last fall because there was too much noise and riff-raff
on python-dev.

Andrew
da***@dalkescientific.com
Jul 18 '05 #7
> Spoil-sport!

You could have at least given it a few *minutes* to get some traction!


It was right at the top for the last message I read last night. It was
unlucky. Sorry to the original poster for ruining the joke so early.

- Josiah
Jul 18 '05 #8
> Yeah, thanks Josiah. Well all know how bright you are already though,
and it's customary (though an unspoken custom, perhaps, until now) to
chuckle quietly at such things and wait a while before posting, just to
give an opportunity for the unwary ones to get sucked in for a while.
Yeah, I suppose I should try not to ruin the joke quite so soon next time.

Anyway, you forgot to point out that the *real* conclusion from the
python-dev discussions was that Guido has finally decided that the
space vs. tab wars will _never_ be won, and chooses explicit over
implicit yet again. The indentation style for Python 3.0 (not 2.4)
will be leading periods, since they make the indentation more obvious
and thus avoid mistakes.


Now that is funny.
If you want to see another good Python joke, I like this one:
Python for Commodore 64.
http://zephyrfalcon.org/weblog/arch_...3_27.html#e536

Not terribly believable, but still good.

- Josiah
Jul 18 '05 #9
Wolfram Kraus wrote:


Heyho!

Carl Banks wrote:
Here's a summary of the final decision Guido made concerning how
Python will indent code in the future, from python-dev:

Guido had been planning to deprecate tabs in favor of spaces for
awhile, although there have been good arguments for both tabs and
spaces. But he was never really comfortable pulling the rug out from
half the user base. However, today he finally decided on a compromise
that has all the benefits of both spaces and tabs.

[...]
So, you should start using Unicode character 0009 to indent right
away. Python 2.4 will deprecate all indentation not using the new
indent character, and Python 3.0 will not support any other
indentation.


Nah, this sucks! This will be the death of Python! I'm switching to
Whitespace: http://compsoc.dur.ac.uk/whitespace/


You people are missing it. Look at what the new indent character is.
(It's always funnier when you have to explain it.)
--
CARL BANKS http://www.aerojockey.com/software
"If you believe in yourself, drink your school, stay on drugs, and
don't do milk, you can get work."
-- Parody of Mr. T from a Robert Smigel Cartoon
Jul 18 '05 #10
In article <ag*****************@fe2.columbus.rr.com>,
Carl Banks <im*****@aerojockey.invalid> wrote:
Wolfram Kraus wrote:
Carl Banks wrote:

So, you should start using Unicode character 0009 to indent right
away. Python 2.4 will deprecate all indentation not using the new
indent character, and Python 3.0 will not support any other
indentation.


Nah, this sucks! This will be the death of Python! I'm switching to
Whitespace: http://compsoc.dur.ac.uk/whitespace/


You people are missing it. Look at what the new indent character is.
(It's always funnier when you have to explain it.)


You didn't check Wolfram's URL, did you?
--
Aahz (aa**@pythoncraft.com) <*> http://www.pythoncraft.com/

"usenet imitates usenet" --Darkhawk
Jul 18 '05 #11

This discussion thread is closed

Replies have been disabled for this discussion.

Similar topics

9 posts views Thread by hokiegal99 | last post: by
2 posts views Thread by satish | last post: by
2 posts views Thread by Jorgen Grahn | last post: by
1 post views Thread by John fabiani | last post: by
13 posts views Thread by Ajay | last post: by
7 posts views Thread by alexandre_irrthum | last post: by
7 posts views Thread by Ron Adam | last post: by
1 post views Thread by Martin Rubey | last post: by
reply views Thread by zhoujie | last post: by
reply views Thread by suresh191 | last post: by
By using this site, you agree to our Privacy Policy and Terms of Use.