[R] Need Advice: Considering Converting a Package from S3 to S4
Frank E Harrell Jr
f.harrell at vanderbilt.edu
Tue Aug 11 20:01:47 CEST 2009
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
More information about the R-help
mailing list