[R] Inefficiency of SAS Programming

Terry Therneau therneau at mayo.edu
Fri Feb 27 16:23:37 CET 2009


Three comments

 I actually think you can write worse code in R than in SAS: more tools = more 
scope for innovatively bad ideas.  The ability to write bad code should not damm 
a language.  
 
  I found almost all of the "improvements" to the multi-line SAS recode to be 
regressions, both the SAS and the S suggestions. 
    a. Everyone, even those of you with no SAS backround whatsoever, immediately 
understood the code.  Most of the replacements are obscure.  Compilers are very 
good these days and computers are fast, fewer typed characters != better.
    b. If I were writing the S code for such an application, it would look much 
the same.  I worked as a programmer in medical research for several years, and 
one of the things that moved me on to graduate studies in statistics was the 
realization that doing my best work meant being as UN-clever as possible in my 
code.  
    
  Frank's comments imply that he was reading SAS macro code at the moment of 
peak frustration.  And if you want to criticise SAS code, this is the place to 
look.  SAS macro started out as some simple expansions, then got added on to, 
then added on again, and again, and ....  with no overall blueprint.  It is much 
like the farmhouse of some neighbors of mine growing up: 4 different expansions 
in 4 eras, and no overall guiding plan.  The interior layout was "interesting" 
to say the least. I was once a bona fide SAS 'wizard' (and Frank was much better 
than me), and I can't read the stuff without grinding my teeth.
  S was once headed down the same road. One of the best things ever with the 
language was documented in the blue book "The New S Language", where Becker et 
al had the wisdom to scrap the macro processor.  
 
  	Terry Therneau




More information about the R-help mailing list