Displaying 20 results from an estimated 500 matches similar to: "delayedAssign and interrupts"
2019 Jul 12
2
strange increase in the reference number
Hi Jiefei and Duncan,
I suspect what is likely happening is that one of ENSURE_NAMEDMAX or
MARK_NOT_MUTABLE are being hit for x. These used to set named to 3, but now
set it to 7 (ie the previous and current NAMEDMAX value, respectively).
Because these are macros rather than C functions, its not easy to figure
out why one of them is being invoked from do_isvector (a cursory
exploration
2007 Jun 12
1
bug in R environments? Was: [BioC] 'recursive default argument' error...
Dear developers,
has anyone experienced the problem described below? Is it a bug in
handling interrupts in R?
Best,
Oleg
-------- Original Message --------
Subject: Re: [BioC] 'recursive default argument' error in GOENTREZID2GO
From: Diego Diez <diez at kuicr.kyoto-u.ac.jp>
...steps that use to reach me to that point. It happens with any
environment, or at least annotation
2012 Apr 25
4
delayedAssign changing values
I'm not sure if this is a known peculiarity or a bug, but I stumbled across what I think is very odd behavior from delayedAssign. In the below example x switches values the first two times it is evaluated.
> delayedAssign("x", {x <- 2; x+3})
> x==x
[1] FALSE
> delayedAssign("x", {x <- 2; x+3})
> x
[1] 5
> x
[1] 2
The ?delayedAssign documentation says
2012 Apr 29
1
A doubt about substitute() after delayedAssign()
Hello,
?delayedAssign presents substitute() as a way to look at the expression
in the promise. However,
msg <- "old"
delayedAssign("x", msg)
msg <- "new!"
x #- new!
substitute(x) #- x (was 'msg' ?)
Here, we just got 'x'... shouldn't we got 'msg'?
Same result when the promise is not evaluated yet:
delayedAssign("x",
2019 Jul 13
0
strange increase in the reference number
Re ENSURE_NAMEDMAX, I am unsure but think this happens in (src/eval.c at 492):
static SEXP forcePromise(SEXP e)
{
??? if (PRVALUE(e) == R_UnboundValue) {
??? /* ... SNIP ...*/
??? val = eval(PRCODE(e), PRENV(e));
??? /* ... SNIP ...*/
??? SET_PRSEEN(e, 0);
?? ?SET_PRVALUE(e, val);
?? ?ENSURE_NAMEDMAX(val);???????????????? <<<<<<< HERE
?? ?SET_PRENV(e, R_NilValue);
??? }
???
2007 Feb 13
1
question on docs for delayedAssign and substitute
The help files for delayedAssign and substitute both say that
substitute() can be used to see the expression associated with a
promise. However, I can't see how to do that. When I try the example
in help file for delayedAssign I don't see substitute() extracting the
promise, e.g.:
> msg <- "old"
> delayedAssign("x", msg)
> msg <-
2013 May 16
3
Substitute / delayedAssign (was: Substitute unaware when promise objects are evaluated)
Duncan, Thank you for the clarification on how delayedAssign works. Should R-level interfaces to promise objects ever become available, I expect they would at time come in handy.
On the subject of substitute and delayedAssign, I do have a follow-up question for the list. I'm trying to convert a named list of expression objects into an environment of promise objects. After conversion, each
2007 Sep 19
3
delayedAssign
The last two lines of example(delayedAssign) give this:
> e <- (function(x, y = 1, z) environment())(1+2, "y", {cat(" HO! "); pi+2})
> (le <- as.list(e)) # evaluates the promises
$x
<promise: 0x032b31f8>
$y
<promise: 0x032b3230>
$z
<promise: 0x032b3268>
which contrary to the comment appears unevaluated. Is the comment
wrong or is it supposed to
2012 Jan 30
4
replacing characters in matrix. substitute, delayedAssign, huh?
A user question today has me stumped. Can you advise me, please?
User wants a matrix that has some numbers, some variables, possibly
even some function names. So that has to be a character matrix.
Consider:
> BM <- matrix("0.1", 5, 5)
Use data.entry(BM) or similar to set some to more abstract values.
> BM[3,1] <- "a"
> BM[4,2] <- "b"
>
2007 Feb 15
2
Problems with 'delay'/'delayedAssign' when installing data package
I downloaded:
http://www.bioconductor.org/data/metaData/hgu95av2_1.7.0.tar.gz
described as:
Package: hgu95av2
Title: A data package containing annotation data for hgu95av2
Version: 1.7.0
Created: Wed Jan 12 16:57:23 2005
Author: Lin,Chenwei
Description: Annotation data file for hgu95av2 assembled using data
from public data repositories
Maintainer:
2011 May 02
2
Using substitute to access the expression related to a promise
Hi all,
The help for delayedAssign suggests that you can use substitute to
access the expression associated with a promise, and the help for
substitute says: "If it is a promise object, i.e., a formal argument
to a function or explicitly created using ?delayedAssign()?, the
expression slot of the promise replaces the symbol.
But this doesn't seem to work:
> a <- 1
> b <- 2
2013 Apr 03
1
Documentation error in subsitute
Hi all,
The documentation for substitute currently reads:
Substitution takes place by examining each component of the parse
tree as follows: If it is not a bound symbol in ?env?, it is
unchanged. If it is a promise object, i.e., a formal argument to
a function or explicitly created using ?delayedAssign()?, the
expression slot of the promise replaces the symbol. If it is an
ordinary variable,
2015 Jan 26
2
Inspect a "delayed" assigned whose value throws an error?
On Mon, Jan 26, 2015 at 12:24 PM, Hadley Wickham <h.wickham at gmail.com> wrote:
> If it was any other environment than the global, you could use substitute:
>
> e <- new.env()
> delayedAssign("foo", stop("Hey!"), assign.env = e)
> substitute(foo, e)
>
> delayedAssign("foo", stop("Hey!"))
> substitute(foo)
Hmm... interesting
2005 Mar 11
3
delay() has been deprecated for 2.1.0
After a bunch of discussion in the core group, we have decided to
deprecate the delay() function (which was introduced as "experimental"
in R 0.50). This is the function that duplicates in R code the
delayed evaluation mechanism (the promise) that's used in evaluating
function arguments.
The problem with delay() was that it was handled inconsistently (e.g.
sometimes you would see
2006 Oct 18
1
Error condition in evaluating a promise
Is there a way to raise an error condition when a promise is
evaluated such that is can be evaluated again? Right now strange
things happen when the evaluation fails:
> delayedAssign("x", if (failed) stop("you have to initialize me
first!") else foo)
> foo <- "I'm foo"
> failed<-TRUE
> x
Error: you have to initialize me first!
> x
2015 Jan 26
2
Inspect a "delayed" assigned whose value throws an error?
Hi, I got an interesting programming challenge:
How do you inspect an object which is assigned via delayedAssign() and
that throws an error as soon as it is "touched" (=the value is
evaluated)? Is it possible?
MINIMAL EXAMPLE:
$ R --vanilla
> delayedAssign("foo", stop("Hey!"))
(If you find this minimal example silly/obvious, please skip down to
the real
2024 May 11
1
R hang/bug with circular references and promises
The following code snippet causes R to hang. This example might be a
bit contrived as I was experimenting and trying to understand
promises, but uses only base R.
It looks like it is looking for "not_a_variable" recursively but since
it doesn't exist it goes on indefinitely.
x0 <- new.env()
x1 <- new.env(parent = x0)
parent.env(x0) <- x1
delayedAssign("v",
2006 May 18
1
R CMD check: "T used instead of TRUE"
Hello everybody,
I am just trying to put together my first own CRAN-able package.
I have completed the programming and my code works OK.
But now when I perform
R CMD check agsemisc_1.0-2.tar.gz
and R gets to the step
* checking examples ...
I receive the following error message:
> print(bwplot(Species~Sepal.Length, data=iris, panel=panel.bwstrip))
Error in rep(T, length(x)) : T used
2024 Feb 18
1
Capturing Function Arguments
? Sat, 17 Feb 2024 11:15:43 -0700
"Reed A. Cartwright" <racartwright at gmail.com> ?????:
> I'm wrapping a function in R and I want to record all the arguments
> passed to it, including default values and missing values.
This is hard if not impossible to implement for the general case
because the default arguments are evaluated in the environment of the
function as it
2012 May 22
2
how to remove the 'promise' attribute of an R object (.Random.seed)?
Hi,
The problem arises when I lazyLoad() the .Random.seed from a
previously saved database. To simplify the process of reproducing the
problem, see the example below:
## this assignment may not really make sense, but illustrates the problem
delayedAssign('.Random.seed', 1L)
typeof(.Random.seed)
# [1] "integer"
rnorm(1)
# Error in rnorm(1) :
# .Random.seed is not an integer