How pwwang/pipda works
pipda is a Python framework for deferred, context-aware data piping. A user builds symbolic column references and operator expressions, passes them as arguments to registered verbs, then pipes data into the deferred call; the verb dispatches by data type/backend, evaluates arguments in context, and returns the transformed data. Registered functions and custom operators extend expression use, while piping adapters accommodate common data libraries. The graph follows documented behavior and sampled call paths; unsampled modules are represented only where their paths are evident from the tree.
Main entry points: verb.py Deferred verb call · function.py Deferred function call · piping.py Pipe operators · reference.py Column references
Components 17
Piping and dispatch
- Registered verb
pipda/verb.py - Deferred verb call
pipda/verb.py - Type/backend dispatch
pipda/verb.py - Registered function
pipda/function.py - Deferred function call
pipda/function.py - Pipe operators
pipda/piping.py - Data-library adapters
pipda/piping.py
Symbolic expressions
- Symbolic proxy
pipda/symbolic.py - Column references
pipda/reference.py - Expression model
pipda/expression.py - Operator expressions
pipda/operator.py
Evaluation context
- Expression evaluator
pipda/utils.py - Context strategies
pipda/context.py
Other components
- Data-pipeline user
- Input data
- Transformed data
- Pandas / Modin / Polars / Torch / Django
Connections 26
- Data-pipeline user → Symbolic proxy: builds references
- Symbolic proxy → Column references: creates
- Column references → Expression model: extends
- Data-pipeline user → Operator expressions: builds expressions
- Operator expressions → Expression model: creates calls
- Data-pipeline user → Registered verb: registers
- Data-pipeline user → Registered function: registers
- Data-pipeline user → Deferred verb call: invokes deferred
- Registered verb → Deferred verb call: creates when piped
- Deferred verb call → Pipe operators: uses piping
- Pipe operators → Deferred verb call: dispatches data
- Input data → Pipe operators: pipes into
- Pipe operators → Data-library adapters: patches operators
- Data-library adapters → Pandas / Modin / Polars / Torch / Django: adapts
- Deferred verb call → Type/backend dispatch: selects implementation
- Type/backend dispatch → Registered verb: returns implementation
- Deferred verb call → Expression evaluator: evaluates arguments
- Expression evaluator → Column references: evaluates references
- Column references → Context strategies: applies strategy
- Deferred verb call → Context strategies: selects context
- Deferred verb call → Transformed data: returns transformed data
- Data-pipeline user → Deferred function call: uses as argument
- Registered function → Deferred function call: creates deferred call
- Deferred function call → Expression evaluator: evaluates arguments
- Deferred function call → Type/backend dispatch: dispatches function
- Pandas / Modin / Polars / Torch / Django → Input data: supplies data