amaliujia commented on PR #38806: URL: https://github.com/apache/spark/pull/38806#issuecomment-1329630889
> From API evolving perspective, I'm fine with wrapping the expressions in the Column. In an ideal case, I think it might make most sense if the logical plan only deals with Expressions and not Columns because the Column is the public facing interface. We can do it. I am not sure if this can be bring you much convenience though. For example we can pass the wrapped expression (`column._expr`) into LogicalPlan, but that is a base class. In this case, use `Column` and use `Expression` are not making big difference. We can pass `Expression` for simplification. I guess you are thinking we pass the right sub-class of Expression to a LogicalPlan? Hmmm we might still be able to do. It sounds like we need to some isinstance for mypy. If you want to go to this approach I would prefer to check it as follow ups. > > Similarly with mapping `str`. This needs to be done before invoking the logical plan. > I agree with this. DataFrame API needs to understand the strings can wrap accordingly. LogicalPlan only deal with Expressions/Columns which have stronger semantics. -- 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] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
