[
https://issues.apache.org/jira/browse/ARROW-17495?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17584703#comment-17584703
]
Dragoș Moldovan-Grünfeld commented on ARROW-17495:
--------------------------------------------------
I can look into it (maybe after I finish with the capstone).
As far as I can tell, both {{.cache$functions}} and {{nse_funcs}} are created
at load time. {{cache$functions}} is {{nse_funcs}} + Arrow Compute functions
(prefixed with {{{}arrow_{}}}).
I bumped into this while trying to register / translate a user-defined function
with pre-existing bindings. I needed to update either {{cache.functions}} or
{{nse_funcs}} - we can update the former via {{{}update_cache = TRUE{}}}, but
then I had to change {{call_binding()}} to fetch from the updated {{cache}} and
not from {{{}nse_funcs{}}}. This led me to think that folks might be confused
by these 2 objects that overlap by quite a bit and are in some situations
interchangeable (mostly nse_funcs can be replaced by {{cache$functions}} which
includes it).
> [R] arrow_eval: do we need both nse_funcs and .cache$functions?
> ---------------------------------------------------------------
>
> Key: ARROW-17495
> URL: https://issues.apache.org/jira/browse/ARROW-17495
> Project: Apache Arrow
> Issue Type: Improvement
> Components: R
> Affects Versions: 9.0.0
> Reporter: Dragoș Moldovan-Grünfeld
> Priority: Minor
>
> Currently we have 2 copies of the same information, once in {{nse_funcs}} and
> once in {{{}.cache$functions{}}}. I wasn't able to figure out the reason for
> this. Maybe I am missing something or maybe this is just legacy code that we
> can update.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)