weld-project / weld

High-performance runtime for data analytics applications
https://www.weld.rs
BSD 3-Clause "New" or "Revised" License
2.99k stars 260 forks source link

Redesign of WeldObject class #486

Open sppalkia opened 4 years ago

sppalkia commented 4 years ago

The Weld Object class in Python is currently quite clunky, as it requires manually stitching together strings and splicing in types, etc. It can probably be made nicer by (a) using function decorators to mark certain functions as Weld enabled, (b) adding a programmatic API for building expressions and tracking dependencies, and (c) allowing each function to return a Weld function instead of an expression.