[R] I need arguments pro-S-PLUS and against SAS...

Jeffrey J. Hallman jhallman at frb.gov
Mon Jan 7 22:09:47 CET 2008


SAS programming is easy if everything you want to do fits easily into the
row-at-a-time DATA step paradigm.  If it doesn't, you have to write macros,
which are an abomination.  DATA step statements and macros are entirely
different programming languages, with one doing evaluations at "compile" time,
and the other at "run" time.  Except that that's not really true, either,
witness the 'call symput()' construct.  

Then, if you want to interact at all with the user, you need to learn SCL, a
third language, with it's own rules.  And to do anything sophisticated with a
user interface (which will still look like hell), you have to learn the SAS
A/F toolkit built on SCL.  And of course, A/F requires you to think
differently yet again.

So, to be a competent and versatile SAS programmer, you have to learn four
languages and four paradigms, and keep them all straight in your head while
programming.  Of course, hardly anyone can do this, so you usually find stacks
of reference documentation close at hand when you visit a SAS programmer's
office.

R and Splus don't offer much in the way of GUI programming, but for problems
that don't require a lot of GUI, it's very nice.  You learn one language, it's
quite forgiving, it's interpreted and usually easy to debug, and the programs
you end up with are far more readable and maintainable than anything a SAS
programmer can turn out.  Reading my own SAS code is bad, and reading someone
else's is torture. 

Do I sound like an R bigot?  Actually, I'm a Smalltalk bigot, which is even
nicer than R.  But R is quite usable for most things I do, and I use Smalltalk
for GUI-intensive stuff.  Speaking as a programmer, SAS is awful. 

-- 
Jeff




More information about the R-help mailing list