Skip to content

Conversation

@eb8680
Copy link
Contributor

@eb8680 eb8680 commented Jul 13, 2025

Addresses #277 #296 #251
Blocked by #299
Blocking #289

This draft PR uses the type inference machinery in #299 #300 to add support in effectful for custom Operations that take and return arbitrarily nested polymorphic collection types and higher-order functions. It does so mostly by adding defdata patterns and Operations for the immutable collection APIs defined in the standard library collections.abc, and as a result is quite straightforward to extend incrementally as needed.

This PR is feature-complete and seems to work fine, but #299 needs to land on master and then this needs to be broken up into a sequence of self-contained smaller PRs. It also includes most of the work toward #296 as a prerequisite, and part of #251 (moving the meat of handler.numbers into ops.syntax) as a side quest.

Base automatically changed from eb-type-inference to master August 13, 2025 19:23
@eb8680
Copy link
Contributor Author

eb8680 commented Aug 27, 2025

Going to close this, the contents will land in separate PRs.

@eb8680 eb8680 closed this Aug 27, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants