Local Variables: :define + :in
Defines local variables that are available only within the :in expression. Variables can reference each other sequentially — each definition can use variables defined before it.
Inline Local Bindings: :with
Creates local variable bindings directly within an expression — typically inside a :map. The first argument defines the variables, the second is the expression that uses them.
:define/:in: :with is designed for use inside loops and transformations where you need a quick local binding without a full :define block.
Generating complex dynamic structures:
Raw Expressions: :raw
Captures an expression without evaluating it. The result is the expression structure itself (the AST), not the evaluated value. This is the foundation for building reusable expression templates.
:define:
:eval.
Dynamic evaluation: :eval
Evaluates an expression that was previously captured with :raw or built dynamically. This is the counterpart to :raw — it takes a stored expression and runs it in the current scope.
Simple evaluation:
:raw for reusable templates:
:using operator defines named expressions — like :define, but specifically designed for storing expression templates that :eval will run.
Pipelines: :pipe
Passes a value through multiple transformation steps sequentially. Each step receives the result of the previous step as @value.
@value context variable always contains the output of the most recent step.