Displaying 20 results from an estimated 10000 matches similar to: "Detecting bad lexical scoping"
2008 Apr 07
3
findGlobals on apply
Hi the list,
Considere the following:
f <- function(x){apply(x,2,mean)}
findGlobals(f)
findGlobals consideres mean as a global variable, which it is not.
Is there a way to tell to findGlobals that mean is a function ?
Thanks
Christophe
2023 Mar 18
1
lexical scoping for scripts......
On 18/03/2023 1:57 p.m., akshay kulkarni wrote:
> Dear members,
> The documentation for source() says:
>
> Input is read and parsed from that file until the end of the file is reached, then the parsed expressions are evaluated sequentially in the chosen environment.
>
> What does this mean? I presume that any objects that are CREATED by the script
2023 Mar 19
1
lexical scoping for scripts......
Dear Duncun,
thanks for the reply....
So when I run a script in the system command line by R CMD BATCH, the objects created in the script cannot be stored in the workspace ,right? If yes, how to save them? Moreover, the only way to save the objects CREATED from the script permanently is to save them to the disk, right?
THanking you,
yours sincerely,
AKSHAY M KULKARNI
2023 Mar 19
1
lexical scoping for scripts......
On 19/03/2023 2:33 p.m., akshay kulkarni wrote:
> Dear Duncun,
> ? ? ? ? ? ? ? ? ? ? ? ? ?thanks for the reply....
>
> So when I run a script in the system command line by R CMD BATCH, the
> objects created in the script cannot be stored in the workspace ,right?
> If yes, how to save them? Moreover, the only way to save the objects
> CREATED from the script permanently is
2023 Mar 19
1
lexical scoping for scripts......
On 19/03/2023 2:55 p.m., akshay kulkarni wrote:
> Dear Duncun,
> ? ? ? ? ? ? ? ? ? ? ? ? ?What if there is no interactive "session"
> running? I will be running my scripts automatically from crontab in Linux.
I was talking about the session that is created for the duration of the
BATCH run, not some other session that may be running in another
process. Sorry for the
2004 Mar 10
1
Question concerning library function "nlme" and lexical scoping
I am running into problems calling the library function nlme from within
another function. Basically,the following function (with v a list
containing data and initialization values)
> testfunc
function(dat=v) {
test<-nlsList(result~a+(b-a)/(1+(conc/(c+z*cdiff))^d)
|rep,start=dat$init,data=dat$mixeddat)
return(nlme(test,random=b~1))
}
produces the error message
Error in eval(expr, envir,
2023 Mar 18
1
lexical scoping for scripts......
Dear members,
The documentation for source() says:
Input is read and parsed from that file until the end of the file is reached, then the parsed expressions are evaluated sequentially in the chosen environment.
What does this mean? I presume that any objects that are CREATED by the script are stored in the Global environment (if local = FALSE), but the rules for
2003 Feb 28
2
Lexical scoping question
Hello,
Could someone please tell me what I am thinking about incorrectly:
f <- function(y) {
g <- function(x) x + y
g
}
In the following, I get what I expect based on my understanding of
lexical scoping:
(f(1))(3) # 4
(f(2))(3) # 5
But now,
fs <- lapply(c(1, 2), f)
fs[[1]](3) # 5 (Why not 4 ?)
fs[[2]](3) # 5
Checking the environments of these functions, I see that
2023 Mar 19
2
lexical scoping for scripts......
Dear Duncun,
What if there is no interactive "session" running? I will be running my scripts automatically from crontab in Linux.
THanking you,
Yours sincerely,
AKSHAY M KULKARNI
________________________________
From: Duncan Murdoch <murdoch.duncan at gmail.com>
Sent: Monday, March 20, 2023 12:20 AM
To: akshay kulkarni <akshay_e4 at hotmail.com>; R
2023 Mar 19
1
lexical scoping for scripts......
What do _you_ mean when you use the term "interactive"? Because R distinguishes between executing code in a function and executing code from the global environment, but it does not care whether a person is doing the typing or not.
I get the feeling that you think of your R code in terms of "scripts" when you should be thinking of your code in terms of functions. What
2023 Mar 19
1
lexical scoping for scripts......
Dear Jeff,
I will not be running R command in the shell prompt. So there is no banner, no > prompt. Just running "myscript.R" from the shell prompt. or from crontab in Linux. I think you get the context.....
thanking you,
yours sincerely
AKSHAY M KULKARNI
________________________________
From: Jeff Newmiller <jdnewmil at dcn.davis.ca.us>
Sent: Monday, March
2023 Mar 19
1
lexical scoping for scripts......
Again, the answer is "interactivity does not matter".
On March 19, 2023 12:54:28 PM PDT, akshay kulkarni <akshay_e4 at hotmail.com> wrote:
>Dear Jeff,
> I will not be running R command in the shell prompt. So there is no banner, no > prompt. Just running "myscript.R" from the shell prompt. or from crontab in Linux. I think you get the
2023 Apr 04
1
on lexical scoping....
No, there are lots of situations where that doesn't make sense. You
don't want to have to define local copies of the functions from every
package you use, for example.
I think the takeaway is to learn how R scoping works, and keep things
simple. That's one reason I tend to avoid "tidyverse" packages. There
are a lot of really good ideas in those packages, but
2000 Jun 13
3
Question on closure (lexical scoping) and encapsulation
Dear R users,
I have two related questions about scoping and data encapsulation.
One is fairly specific - I am looking at "scoping.R" which is used in
demo(scoping) - it's an example of lexical scoping and encapsulation.
Where is the 'total' stored? It is not an attribute in 'ross' or
'robert'
however, functions like balance() have access to it.
Is it more
2023 Apr 04
1
on lexical scoping....
Dear Duncan,
THanks for the reply...!
So the takeaway is that define the symbol in the same environment before using it right!?
Thanking you,
Yours sincerely,
AKSHAY M KULKARNI
________________________________
From: Duncan Murdoch <murdoch.duncan at gmail.com>
Sent: Tuesday, April 4, 2023 8:21 PM
To: akshay kulkarni <akshay_e4 at hotmail.com>; Deepayan Sarkar
2023 Apr 04
1
on lexical scoping....
You can't change the basic way R searches, but you can ask for a
different kind of search. For example, to see if "x" exists, you can use
exists("x")
and it will do the default search, but
exists("x", inherits = FALSE)
will only look in the current environment. The get() function has a
similar argument which returns the value
Unfortunately these
2023 Apr 04
1
on lexical scoping....
Dear Deepayan,
THanks for the pithy, pointed reply.
But isn't it risky? Can I somehow get a warning when x is not defined in the global environment but takes on a value from one of the loaded packages? any packages for that?
THanking you,
Yours sincerely,
AKSHAY M KULKARNI
________________________________
From: Deepayan Sarkar <deepayan.sarkar at
2007 Nov 22
2
Clean programming with R
Hi all
Is there any compiler for R ? By compiler, I mean something that check
the cleanliness of the code : if we declare all the variables we use, if
we don't use external variable from a function and so on...
For exemple, something that will ring a bell on the following code
(saying "line 4 : 'pp' undefine in function 'power' ")
1. pp <- 3
2. power <-
2011 Mar 24
3
Extract the names of the arguments in an "expression"
Hi everybody:
I need to get the names of the arguments in an object of class "expression".
I've got the following expression:
> x <- expression(rho * cos(omega))
Is there any function or procedure that returns the names of the arguments
(in the example: "rho" and "omega")?
I tried a rough approach implemented in the function expr.args() shown
below. As
2023 Apr 04
2
on lexical scoping....
The following *might* be of use to you. If you can predict what the various
function invocations will do, I think you have a reasonable grasp of how
lexical scoping works in R (contrary or supplementary opinions welcome).
It is the sort of thing you will find in the references also. If this is
all obvious, sorry for wasting your time.
#######################
search()
ls()
dat <- list(x =2)