TODO:
- StateMachine
- Projections
- Constant
- Function
- First
- Last
- Sum
- Avg
- Min, Max
- Partitioning
- Patterns
- ConstantPattern
- FunctionPattern
- BiPattern
- AssertPattern
- ComparePattern
- MapPattern
- AndThenPattern
- WindowPatterns
- GroupPattern
- LagPattern
- Time windows
- Event windows
- Parser
- AST
- Optimizer
- Compile to pattern
- Input formats
- CSV
- Arrow
- Json
- Read from INPUT stream
- Kafka