Summary: | rkward mishandles promises inside globalenv() | ||
---|---|---|---|
Product: | [Applications] rkward | Reporter: | RKWard Team <rkward-devel> |
Component: | general | Assignee: | RKWard Team <rkward-devel> |
Status: | RESOLVED FIXED | ||
Severity: | normal | ||
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | unspecified | ||
OS: | All | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: |
Description
RKWard Team
2007-09-05 04:25:14 UTC
Logged In: YES user\_id=300591 Originator: NO Confirmed. However, this only happens inside globalenv\(\). The problem is that we copy symbols in globalenv\(\) to a special environment \(.rk.watched.symbols\), and replace them with an active binding. This is used so we can detect, when something new gets assigned to the original symbol. However, an unwanted side-effect is that the promise will be forced at this point of time. I suppose the only way around this would be to replace .rk.watch.symbol with a function implemented in C, which makes sure to copy the promise without forcing it \(or is there a way to do this in R code?\). Note that this has nothing to do with retrieving structure information \(for the workspace browser\) for the object \(which I suspected first\). The code we have for that already makes sure to look at promises without actually forcing them. - **summary**: rkward mishandles promises --> rkward mishandles promises inside globalenv() Logged In: YES user\_id=300591 Originator: NO Fixed in SVN revision 1979, to be included in the 0.4.8 release. - **assigned_to**: nobody --> tfry - **status**: open --> closed-fixed |