Skip to content

Add make_atan2 binding - #29

Merged
dance858 merged 2 commits into
mainfrom
atan2-binding
Oct 8, 2026
Merged

dance858 merged 2 commits into
mainfrom
atan2-binding

Conversation

@dance858

@dance858 dance858 commented Oct 7, 2026 •

Copy link
Copy Markdown
Collaborator

C binding for the engine's leaf-only atan2 atom from SparseDifferentiation/SparseDiffEngine#133 (part of engine issue #130). _bindings/atoms/atan2.h parses two capsules and calls new_atan2(y, x); bindings.c gets the include and the make_atan2 method-table entry. A NULL from the engine (non-variable argument, repeated variable, shape mismatch) becomes a RuntimeError.

The engine submodule is bumped to 6612747, which is engine main after #133.

Verified locally: the extension builds and exports make_atan2.

Not included: the Python-level sp.atan2 wrapper, which lives on separate-python-interface.

🤖 Generated with Claude Code

dance858 and others added 2 commits October 7, 2026 19:27
atan2(y, x), C argument order, both arguments must be distinct variables
of the same shape; a NULL from new_atan2 becomes a RuntimeError. Requires
SparseDifferentiation/SparseDiffEngine#133; the submodule pointer is
bumped once that lands on engine main.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@dance858
dance858 marked this pull request as ready for review October 8, 2026 06:36
@dance858
dance858 merged commit 4bb2a83 into main Oct 8, 2026
27 checks passed
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