(original) (raw)

Guido van Rossum wrote:
On 6/18/06, Josiah Carlson <jcarlson@uci.edu> wrote:  
 
\[...\] Offering arbitrary expressions whose  
meaning can vary at runtime would kill any potential speedup (the  
ultimate purpose for having a switch statement), \[...\]  
 
  
Um, is this dogma? Wouldn't a switch statement also be a welcome  
addition to the readability? I haven't had the time to follow this  
thread (still catching up on my Google 50%) but I'm not sure I agree  
with the idea that a switch should only exist for speedup.  
 

A switch-statement offers only a modest readability improvement over if-elif chains.  If a proposal introduces a switch-statement but doesn't support fast dispatch, then it loses much of its appeal.  Historically, the switch-statement discussions centered around fast dispatch without function call overhead or loss of direct read/write to local variables (see sre\_compile.py and sre\_parse.py for code would would see a speed benefit but almost no improvement in readability).


Raymond