[R] Need Advice: Considering Converting a Package from S3 to S4

Peter Dalgaard p.dalgaard at biostat.ku.dk
Tue Aug 11 20:58:33 CEST 2009


Ben Bolker wrote:
> 
>   I can see that fortune("S4") is going to produce more than one possible
> response
> soon ...  (is Achim Zeleis listening?)
> 
>    Ben

In all fairness, it should probably be noted that quite a few people 
swear BY S4 in addition to those who swear AT it.

-p

> 
> 
> Frank E Harrell Jr wrote:
>> spencerg wrote:
>>> Hi, Terry:
>>>
>>>      Thanks for the comments.  I too vastly prefer S3 to S4.  Your 
>> Me too.  My summary is this:
>>
>> If you love computer science more than you value your own time, use S4.
>>
>> Frank Harrell
>>
>>> comparison is based on much greater experience than mine.
>>>
>>>      Could you please check the link you sent?  I couldn't get it to
>>> work.
>>>
>>>      Thanks again.
>>>      Spencer
>>>
>>> Terry Therneau wrote:
>>>>  For 90 percent of what I do I strongly prefer the loose (S3) rather 
>>>> than the rigid (S4) classes.  So I'm closer to Rolf.  My summary of S4 
>>>> vs S3
>>>>  
>>>> A large increment in   1. nuisance to write
>>>>   2. difficulty to debug
>>>>   3. ability to write very obscure code   4. design
>>>>   Gain
>>>>   5. ability to direct automatic conversions
>>>>   6. validate the contents of a class object
>>>>     For simple objects 5 and 6 can be critical.  Consider a date for 
>>>> instance, which will often be turned into a character, added or 
>>>> subtracted as a numeric, plotted, etc.  Conversely, aspects of 1-4 are 
>>>> less worrisome for a simple object, particularly #4: I have a 
>>>> reasonable chance of "getting it right" the first time.
>>>>     For a complex object such as the result of a coxph fit       fit 
>>>> <- coxph(Surv(time, status) ~ age + sex + treatment)
>>>>
>>>> #5 makes no sense at all: as.numeric(fit)???  Number 4 and 6 are 
>>>> really hard;
>>>> after 15+ years of tuning I am still modifying the list of components 
>>>> in a coxph object.  I know more about the computational aspects of Cox 
>>>> models than almost anyone and still it's not enough.  Changes are 
>>>> harder with rigid classes.
>>>>
>>>>   With reference to #3 above, for your amusement, look at
>>>>      www.netfunny.com/rhf/jokes/98/May/straustrup.html
>>>> the key line (to me) being "..every C++ programmer feels bound by some 
>>>> mystic promise to use every damm element of the languange on every 
>>>> project..."
>>>>
>>>> Terry T.
>>>>
>>>> ______________________________________________
>>>> R-help at r-project.org mailing list
>>>> https://stat.ethz.ch/mailman/listinfo/r-help
>>>> PLEASE do read the posting guide 
>>>> http://www.R-project.org/posting-guide.html
>>>> and provide commented, minimal, self-contained, reproducible code.
>>>>
>>>>   
>>>
>>
>> -- 
>> Frank E Harrell Jr   Professor and Chair           School of Medicine
>>                       Department of Biostatistics   Vanderbilt University
>>
>> ______________________________________________
>> R-help at r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-help
>> PLEASE do read the posting guide
>> http://www.R-project.org/posting-guide.html
>> and provide commented, minimal, self-contained, reproducible code.
>>
>>
> 


-- 
    O__  ---- Peter Dalgaard             Øster Farimagsgade 5, Entr.B
   c/ /'_ --- Dept. of Biostatistics     PO Box 2099, 1014 Cph. K
  (*) \(*) -- University of Copenhagen   Denmark      Ph:  (+45) 35327918
~~~~~~~~~~ - (p.dalgaard at biostat.ku.dk)              FAX: (+45) 35327907




More information about the R-help mailing list