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

 

Crimea attack: College shooting kills 19 (17 Oct 2018)

 

Jamal Khashoggi: Turkish police search Saudi consul's residence (17 Oct 2018)

 

Sabarimala: Mobs attack women near India Hindu temple (17 Oct 2018)

 

UK PM: My Brexit plan is not dead (17 Oct 2018)

 

Kenyan schoolgirl Angel overcomes bullies to pursue dream of music career (17 Oct 2018)

 

Melania Trump : 'Smoke-filled' plane forced to land (17 Oct 2018)

 

Tasmania penguin deaths: Dozens killed in suspected dog attack (17 Oct 2018)

 

'Miracle' baby whose heart stopped for 22 minutes turns one (17 Oct 2018)

 

MJ Akbar: India minister quits after #MeToo allegations (17 Oct 2018)

 

Chinese woman kills herself and children after husband 'fakes death' (17 Oct 2018)

more »

 

SF Gate

 

Only 1 Calif. city cracks Glassdoor's 'Best Cities for Jobs' list; Midwest dominates (17 Oct 2018)

 

Business News Roundup, Oct. 17 (16 Oct 2018)

 

Lyft announces subscription plan, but you won't get unlimited rides (16 Oct 2018)

 

After more than a decade of squabbling, will IKEA finally come to this East Bay city? (16 Oct 2018)

 

Ship traffic, October 17 (16 Oct 2018)

 

Benioff on Bay Area's 70 billionaires: 'You're either for kids and homeless, or you're for yourself' (16 Oct 2018)

more »


Site feed Updated: 2018-Oct-17 09:00