effect
effect copied to clipboard
Add Function.memo
Type
- [ ] Refactor
- [x] Feature
- [ ] Bug Fix
- [ ] Optimization
- [ ] Documentation Update
Description
Add pure memoization wrapper function to the Function module.
Questions:
- Do you think there is value in the memoThis alias? It's rare that
thisis used in type signatures, and the implementation uses it so it's valid, but it might just be unnecessary noise. - Should the helpers be in some internal file or are they ok where they are with the
@internaltag? - Should this also be used internally, to replace
Hash.cachedfor example? And if so, what are all the candidates for replacing manual caching? Would those changes belong in this PR or another?
🦋 Changeset detected
Latest commit: 6248d2c3a227286d352f6ddf926139311c6e7f2b
The changes in this PR will be included in the next version bump.
This PR includes changesets to release 36 packages
| Name | Type |
|---|---|
| effect | Minor |
| @effect/cli | Major |
| @effect/cluster | Major |
| @effect/experimental | Major |
| @effect/opentelemetry | Major |
| @effect/platform-browser | Major |
| @effect/platform-bun | Major |
| @effect/platform-node-shared | Major |
| @effect/platform-node | Major |
| @effect/platform | Major |
| @effect/printer-ansi | Major |
| @effect/printer | Major |
| @effect/rpc | Major |
| @effect/sql-clickhouse | Major |
| @effect/sql-d1 | Major |
| @effect/sql-drizzle | Major |
| @effect/sql-kysely | Major |
| @effect/sql-libsql | Major |
| @effect/sql-mssql | Major |
| @effect/sql-mysql2 | Major |
| @effect/sql-pg | Major |
| @effect/sql-sqlite-bun | Major |
| @effect/sql-sqlite-do | Major |
| @effect/sql-sqlite-node | Major |
| @effect/sql-sqlite-react-native | Major |
| @effect/sql-sqlite-wasm | Major |
| @effect/sql | Major |
| @effect/typeclass | Major |
| @effect/vitest | Major |
| @effect/workflow | Major |
| @effect/ai | Major |
| @effect/ai-amazon-bedrock | Major |
| @effect/ai-anthropic | Major |
| @effect/ai-google | Major |
| @effect/ai-openai | Major |
| @effect/ai-openrouter | Major |
Not sure what this means? Click here to learn what changesets are.
Click here if you're a maintainer who wants to add another changeset to this PR