alamb commented on PR #8891:
URL: 
https://github.com/apache/arrow-datafusion/pull/8891#issuecomment-1899027171

   Hi @peter-toth  -- thank you for this PR and the various others that are 
trying to improve the quality of code in DataFusion
   
   I think one thing that is challenging for me is to understand how to 
evaluate the benefits of this and related PRs in an objective manner. 
   
   This PR, for example, may improve the consistency of APIs (which I happen to 
think it does) but making this change will also come at a cost for DataFusion 
users:
   1. If they use the `TreeNode`  API they will have to change their code on 
upgrade
   2. If they were familiar with the existing TreeNode API, they will have to 
learn the new API
   
   For other breaking API changes, there are often other benefits that come 
with the cost, such as new features or improved performance. 
   
   I wonder if you can help us articulate how this (and the related refactoring 
PRs) help DataFusion users -- for example do they
   1.  permit us to implement Expression or plan node rewrites more 
efficiently? 
   2. Or will they allow us to consolidate / reduce code to reduce the 
maintenance burden to DataFusion maintainers 
   
   If we can connect this work to a benefit I suspect we would be able to drive 
it forward more quickly


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to