Skip to content

[SPARK-52428] Add higher-order functions with lambda expression support#41

Open
rafafrdz wants to merge 1 commit intoapache:masterfrom
rafafrdz:add-higher-order-functions
Open

[SPARK-52428] Add higher-order functions with lambda expression support#41
rafafrdz wants to merge 1 commit intoapache:masterfrom
rafafrdz:add-higher-order-functions

Conversation

@rafafrdz
Copy link
Copy Markdown

Summary

  • Add create_lambda helper for building LambdaFunction proto expressions
  • Add 10 higher-order functions: transform, filter, exists, forall, aggregate, array_sort_with_comp, map_filter, transform_keys, transform_values, zip_with
  • Remove dead array_sort stub with unimplemented!()
// Transform array: [1,2,3] -> [2,3,4]
transform(col("array"), col("x") + lit(1), "x")

// Aggregate: sum elements
aggregate(col("array"), lit(0), col("acc") + col("x"), "acc", "x")

Test plan

  • 9 unit tests verifying lambda proto structure
  • cargo build passes
  • cargo fmt -- --check passes

@rafafrdz rafafrdz force-pushed the add-higher-order-functions branch from 084525e to 603179f Compare March 29, 2026 10:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant