Neal Richardson created ARROW-17581:
---------------------------------------

             Summary: [R] Refactor build_expr and eval_array_expression to 
remove special casing
                 Key: ARROW-17581
                 URL: https://issues.apache.org/jira/browse/ARROW-17581
             Project: Apache Arrow
          Issue Type: Improvement
          Components: R
            Reporter: Neal Richardson
            Assignee: Neal Richardson
             Fix For: 10.0.0


As [~paleolimbot] observes 
[here|https://github.com/apache/arrow/pull/13985#discussion_r957286453], we 
should avoid adding additional complexity or indirection in how 
expressions/bindings are defined--it's complex enough as is. We have helper 
functions {{build_expr}} (used with Acero, wrapper around Expression$create, 
returns Expression) and {{eval_array_expression}} (for eager computation on 
Arrays, wrapper around call_function) that wrap input arguments as Scalars or 
whatever, but they also do some special casing for functions that need custom 
handling. 

However, since those functions were initially written, we've developed other 
ways to handle these special cases more explicitly, and not all operations pass 
through these helper functions. We should pull out the special cases and define 
those functions/bindings explicitly and only use these helpers in the simple 
case where no extra logic is required.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to