tungwaiyip.info

home

about me

links

Blog

< June 2012 >
SuMoTuWeThFrSa
      1 2
3 4 5 6 7 8 9
10111213141516
17181920212223
24252627282930

past articles »

Click for San Francisco, California Forecast

San Francisco, USA

 

Python Whitespace Misconception

Whitespace is significant in Python. This uncommon syntax rule is one of the refrain of many non-Python programmers about Python. Given most computer languages since Fortran has adopted free layout syntax, this feel like an objectionable design.

Now that I think of it, I find this mostly a problem of wrong framing. The term "whitespace" has already embedded the meaning of unimportant filler. In this sense "significant whitespace" sounds like a problem. Actually the right way to describe it is that Python uses indentation to determine the block structure. Rather than feeling wrong, this is lot more likely to evoke an "aha" reaction from non-Python programmers. Of course it makes a lot sense for the indentation to follow the block structure. I can hardly find any legitimate case for those two to differ.

Austere programmers may notice that there are two way to indicate block structure in main stream languages, by using language construct like "begin" and "end" and by laying out the code using indentation. Whenever there are two ways to do express one thing there will be problem of inconsistency. This extra degree of freedom can get you into trouble sometimes. One of the most nasty class of programming bug is dangling else. It is the case in free layout language when the apparent block structure is different from the actual block structure. Dangling else is not possible in Python. It is because the block structure is determined by the indentation.

2012.06.08 [] - comments

 

 

blog comments powered by Disqus

past articles »

 

BBC News

 

Florida school shooting: Armed officer 'did not confront killer' (23 Feb 2018)

 

Barnaby Joyce: Scandal-hit Australia deputy PM to resign (23 Feb 2018)

 

Trump-Russia: New charges for Paul Manafort and Rick Gates (22 Feb 2018)

 

Syria war: Children struggle to survive in Eastern Ghouta (23 Feb 2018)

 

Sipping acidic fruit teas can wear away teeth, says study (23 Feb 2018)

 

Syria war: Russia says no agreement on ceasefire resolution (23 Feb 2018)

 

Dutch MPs vote to recognise disputed Armenian 'genocide' (22 Feb 2018)

 

Unicef deputy resigns after allegations (22 Feb 2018)

 

Komla Dumor Award 2018: Seeking a rising star of African journalism (23 Feb 2018)

 

Does this bodycam show a man killed by a cop had a gun? (23 Feb 2018)

more »

 

SF Gate

 

Bay Area News (7 Jan 2012)

 

City Insider (11 Feb 2012)

 

Crime Scene (13 Feb 2012)

 

C.W Newius Column (10 Jan 2012)

 

C.W. Nevius Blog (11 Feb 2012)

 

Education News (10 Jan 2012)

 

KALW (11 Feb 2012)

 

Matier and Ross Blog (11 Feb 2012)

 

Corporate whistle-blower protections cut by U.S. high court (22 Feb 2018)

 

The making of a No. 1 YouTube conspiracy video after the Parkland tragedy (22 Feb 2018)

 

Hershey and pot; Twitter and bot; blockchain or not? (22 Feb 2018)

 

After tweet by Kylie Jenner, Snapchat's market value tanked by .3 billion (22 Feb 2018)

 

Ship traffic, Feb. 23 (22 Feb 2018)

 

Trump says he may pull ICE from California (22 Feb 2018)

more »

 


Site feed Updated: 2018-Feb-22 21:00