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

 

Kabul suicide car bomb: 24 killed in Afghan capital (24 Jul 2017)

 

Cumhuriyet journalists face terrorism trial (24 Jul 2017)

 

IMF downgrades US and UK growth (24 Jul 2017)

 

Two killed at Israeli building in Amman (24 Jul 2017)

 

Yazidi survivor: 'I was raped every day for six months' (23 Jul 2017)

 

World's first floating wind farm emerges off coast of Scotland (23 Jul 2017)

 

UK and US to start talks on post-Brexit trade deal (23 Jul 2017)

 

San Antonio: Truck found in Texas with dozens inside (24 Jul 2017)

 

Doctor Who Christmas special: First look at Peter Capaldi's final outing (23 Jul 2017)

 

Canada polygamy trial: Verdict due in Bountiful polygamy trial (24 Jul 2017)

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)

 

Eclipse plea from regulators: Stay in the dark (23 Jul 2017)

 

Shkreli has days to decide whether to take stand at fraud trial (23 Jul 2017)

 

China clamps down on holes in ‘Great Firewall’ (23 Jul 2017)

 

How loaning doctors, patients iPads may help Apple (23 Jul 2017)

 

These phones can make (and take) a splash (23 Jul 2017)

 

SF seeks court orders to force Uber, Lyft to share data (22 Jul 2017)

more »

 


Site feed Updated: 2017-Jul-24 00:00