[Rd] Request: Suggestions for "good teaching" packages, esp. with C code
Duncan Murdoch
murdoch.duncan at gmail.com
Wed Feb 16 00:10:24 CET 2011
On 15/02/2011 5:22 PM, Kevin Wright wrote:
> For those of you "familiar with R", here's a little quiz. What what's the
> difference between:
>
>
> f1<- function(){
> a=5
> }
This returns 5, invisibly. It's also bad style, according to those of
us who prefer <- to = for assignment.
> f2<- function(){
> return(a=5)
> }
This is a mistake: return() doesn't take named arguments. It is
lenient and lets you get away with this error (treating it the same as
return(5)), and returns the 5, visibly.
Duncan Murdoch
> f2()
>
>
> Kevin Wright
>
>
>
>
> On Tue, Feb 15, 2011 at 3:55 PM, Geoff Jentry<geoffjentry at hexdump.org>wrote:
>
>> On Wed, 16 Feb 2011, David Scott wrote:
>>
>>> 4. We don't want gratuitous use of "return" at the end of functions.
>>>> Why do people still do that?
>>>>
>>> Well I for one (and Jeff as well it seems) think it is good programming
>>> practice. It makes explicit what is being returned eliminating the
>>> possibility of mistakes and provides clarity for anyone reading the code.
>>>
>>
>> You're unnecessarily adding the overhead of a function call by explicitly
>> calling return().
>>
>> Sure it seems odd for someone coming from the C/C++/Java/etc world, but
>> anyone familiar with R should find code that doesn't have an explicit
>> return() call to be fully readable& clear.
>>
>> -J
>>
>>
>> ______________________________________________
>> R-devel at r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-devel
>>
>
> [[alternative HTML version deleted]]
>
> ______________________________________________
> R-devel at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel
More information about the R-devel
mailing list