Details
-
New Feature
-
Status: Open (View Workflow)
-
Major
-
Resolution: Unresolved
-
None
-
None
Description
The suggested IR represents tree-ish structure(TreeNode) with a Lisp-like list.
There can be two types of intermediate nodes, namely functions and operators, there are two types of leaf nodes, namely columns and constants. Here is the example of a simple expression, e.g. let c1 be an timestamp column:
floor(c1 + 1.05) < 0
(func "<"
|
(func "floor"
|
(func "+" (col col1) (const 1.05))) 0)
|
The translator should support the revert operation, namely IR to TreeNode conversion.