From spencer.graves at prodsyse.com  Mon Apr 11 18:04:59 2011
From: spencer.graves at prodsyse.com (Spencer Graves)
Date: Mon, 11 Apr 2011 09:04:59 -0700
Subject: [Rd] Wish there were a "strict mode" for R interpreter. What
In-Reply-To: <C6D0A838-2ED1-49B5-84BB-2FA05D79F84F@r-project.org>
References: <XFMail.110409220813.ted.harding@wlandres.net>	<EDD2DF2D-1D22-4650-9366-B915B2C79ADB@stat.ubc.ca>
	<C6D0A838-2ED1-49B5-84BB-2FA05D79F84F@r-project.org>
Message-ID: <4DA326AB.2010107@prodsyse.com>

On 4/11/2011 8:46 AM, Simon Urbanek wrote:
> On Apr 11, 2011, at 11:28 AM, Davor Cubranic wrote:
>
>> On 2011-04-09, at 2:08 PM, Ted Harding wrote:
>>
>>> I think the right thing to so is to introduce the students to the
>>> basics of scoping, early in the process of learning R.
>> I know the basics of scoping perfectly well, but that doesn't stop me from occasionally misspelling a variable name that only causes an error much later.
>>
>> OTOH, I think with Perl you can start declaring your variables "local" and keep the interpreter happy. But in R's context you then have to also start declaring what you expect to inherit from parent environments, and pretty soon the code is so encrusted with annotation barnacles that it loses the simplicity that  makes R so nice in the interactive mode.
>>
>> What would be really nice is if we had a smart R editor/IDE that would "DWIM" and put a red underline under a misspelled name, but leave it alone when, as Duncan said, it's in the environment.
>>
> ... which is, of course, impossible since the editor has no idea what environment you will evaluate the function in ... It can make assumptions but they may as wrong as the spurious warnings discussed so people will complain either way ;)

       For the record, my "complaint" stemmed from my inability to see a 
way to get rid of that message in that context.  In most cases, I've 
found that message to be very valuable in identifying latent bugs in 
code.  In that context, however, the message seemed inappropriate.  
Duncan privately suggested I add "LazyData:  yes" to the package 
DESCRIPTION file.  I did that, and the offending message disappeared!


       Thanks again to Duncan.


       Best Wishes,
       Spencer

> Cheers,
> Simon
>
> ______________________________________________
> R-devel at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel
>


-- 
Spencer Graves, PE, PhD
President and Chief Operating Officer
Structure Inspection and Monitoring, Inc.
751 Emerson Ct.
San Jos?, CA 95126
ph:  408-655-4567



[Rd] Wish there were a "strict mode" for R interpreter. What
Spencer Graves